質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

2回答

757閲覧

ipvsadmのテーブルを設定してもOSを再起動すると戻ってしまう

vm35

総合スコア1

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2022/12/13 05:51

概要

ipvsadmのテーブルを設定し、サービスの再起動では設定情報をクリアーしてリストアできるのですが、OSを再起動するとテーブル情報がリストアされません。
OS再起動後も設定を維持する方法はありますでしょうか。

1.バージョン確認

# cat /etc/redhat-release Rocky Linux release 8.7 (Green Obsidian) # yum list installed | grep ipvsadm ipvsadm.x86_64 1.31-1.el8 @appstream # yum list installed | grep keepalived keepalived.x86_64 2.1.5-9.el8 @appstream

2.サービスの状態確認

# systemctl status ipvsadm ● ipvsadm.service - Initialise the Linux Virtual Server Loaded: loaded (/usr/lib/systemd/system/ipvsadm.service; enabled; vendor preset: disabled) Active: active (exited) since Tue 2022-12-13 11:18:36 JST; 2h 38min ago

3.サービススクリプト

# less /usr/lib/systemd/system/ipvsadm.service [Unit] Description=Initialise the Linux Virtual Server After=syslog.target network.target [Service] Type=oneshot ExecStart=/bin/bash -c "exec /sbin/ipvsadm-restore < /etc/sysconfig/ipvsadm" ExecStop=/bin/bash -c "exec /sbin/ipvsadm-save -n > /etc/sysconfig/ipvsadm" ExecStop=/sbin/ipvsadm -C RemainAfterExit=yes [Install] WantedBy=multi-user.target

4.テーブル設定を追加

# ipvsadm -L IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.100.100:http sh -> 192.168.100.101:http Route 1 0 0 -> 192.168.100.102:http Route 1 0 0 -> 192.168.100.103:http Route 1 0 0 -> 192.168.100.104:http Route 1 0 0 TCP 192.168.100.100:https sh -> 192.168.100.101:https Route 1 0 0 -> 192.168.100.102:https Route 1 0 0 -> 192.168.100.103:https Route 1 0 0 -> 192.168.100.104:https Route 1 0 0

5.サービス停止 -> ipvsadmテーブルの状態

# systemctl stop ipvsadm # ipvsadm -L IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn

6.サービス開始 -> ipvsadmテーブルの状態

# systemctl start ipvsadm # ipvsadm -L IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.100.100:http sh -> 192.168.100.101:http Route 1 0 0 -> 192.168.100.102:http Route 1 0 0 -> 192.168.100.103:http Route 1 0 0 -> 192.168.100.104:http Route 1 0 0 TCP 192.168.100.100:https sh -> 192.168.100.101:https Route 1 0 0 -> 192.168.100.102:https Route 1 0 0 -> 192.168.100.103:https Route 1 0 0 -> 192.168.100.104:https Route 1 0 0

7.OS再起動 -> ipvsadmテーブルの状態

# ipvsadm -L IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn

8.サービスの起動順序

イメージ説明

サービスの起動順序を変更する方法もあるようですが、原因を特定出来ない状態です。
ご教授頂けますと助かります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

ipvsadmの起動後にkeepalivedが停止することでIPVS仮想サーバーテーブルからすべてのエントリを削除する処理を行っていたようです。
今回の質問内容の問題点はkeepalivedが停止している状況にありますので、質問をcloseします。

投稿2022/12/14 06:40

vm35

総合スコア1

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

keepalivedのサービスを停止したところ、ipvsadmのテーブル情報を読み込みました。
したがって、keepalivedの設定を見直してみます。

投稿2022/12/14 01:37

vm35

総合スコア1

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問