キープアライブ 2台のサーバー間のIPフェイルオーバーに使用されます。 Linuxベースのインフラストラクチャへの負荷分散と高可用性のためのその機能。 VRRP(仮想ルーター冗長プロトコル)プロトコルで動作しました。このチュートリアルでは、負荷分散と高可用性インフラストラクチャのロードバランサーとして実行されている2つのLinuxシステム間のIPフェイルオーバーを構成しました。
チュートリアル「UbuntuとLinuxmintでHAProxyをセットアップする方法」にも興味があるかもしれません。
ネットワークシナリオ:
1. LB1 Server: 192.168.10.111 (eth0) 2. LB2 Server: 192.168.10.112 (eth0) 3. Virtual IP: 192.168.10.121
上記の構造でセットアップをよりよく理解していただければ幸いです。 LB1サーバーとLB2サーバー間の構成IPフェイルオーバーのセットアップに移りましょう。
ステップ1-必要なパッケージをインストールする
まず、次のコマンドを使用して、サーバーにキープアライブを構成するために必要なパッケージをインストールします。
sudo apt-get update sudo apt-get install linux-headers-$(uname -r)
ステップ2–キープアライブをインストールする
Keepalivedパッケージは、デフォルトのaptリポジトリで使用できます。したがって、コマンドを使用して両方のサーバーにインストールするだけです。
sudo apt-get install keepalived
ステップ3–LB1でキープアライブを設定します。
次に、LB1でKeepalived構成/etc/keepalived/keepalived.confファイルを作成または編集し、次の設定を追加します。赤く強調表示されたすべての値をネットワークとシステム構成で更新します。
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { notification_email {[email protected] [email protected] } notification_email_from[email protected] smtp_server localhost smtp_connect_timeout 30 } vrrp_instance VI_1 { state MASTER interfaceeth0 virtual_router_id 101 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress {192.168.10.121 } }
ステップ4–LB2でKeepAlivedを設定します。
また、LB2でKeepalived構成ファイル/etc/keepalived/keepalived.confを作成または編集し、次の構成を追加します。 LB2構成ファイルを変更するときは、必ず優先度の値をLB1より低く設定してください。たとえば、以下の構成では、LB1の優先度が101であるよりも100の優先度の値が示されています。
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { notification_email {1.優先度 マスターサーバーの値は高くなります。状態で何を使用したかは関係ありません。状態がMASTERであるが、優先度がBACKUPを備えたルーターよりも低い場合、MASTER状態は失われます。[email protected] [email protected] } notification_email_from[email protected] smtp_server localhost smtp_connect_timeout 30 } vrrp_instance VI_1 { state MASTER interfaceeth0 virtual_router_id 101 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress {192.168.10.121 } }
2. virtual_router_id LB1サーバーとLB2サーバーの両方で同じである必要があります。
3.デフォルトでは単一のvrrp_instance 最大20のvirtual_ipaddressをサポート 。アドレスを追加するには、vrrp_instanceを追加する必要があります
ステップ5–キープアライブサービスを開始する
次のコマンドを使用してkeepalivedサービスを開始し、システムの起動時に自動開始するように構成します。
sudo service keepalived start
ステップ6–仮想IPを確認する
デフォルトでは、仮想IPはマスターサーバーに割り当てられます。マスターがダウンした場合、仮想IPは自動的にスレーブサーバーに割り当てられます。次のコマンドを使用して、インターフェイスに割り当てられた仮想IPを表示します。
ip addr show eth0
サンプル出力
2: eth0:mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:b9:b0:de brd ff:ff:ff:ff:ff:ff inet 192.168.10.111/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever inet 192.168.10.121/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::11ab:eb3b:dbce:a119/64 scope link valid_lft forever preferred_lft forever
ステップ7–IPフェイルオーバーのセットアップを確認する - マスターサーバー(LB1)をシャットダウンし、ipsがスレーブサーバーに自動的に割り当てられるかどうかを確認します。
ip addr show eth0
- ここで、LB1を起動し、スレーブサーバー(LB2)を停止します。 IPは自動的にマスターサーバーに割り当てられます。
ip addr show eth0
- ログファイルを監視して、動作を確認します
tailf /var/log/syslog
サンプル出力
Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Registering Kernel netlink reflector Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Registering Kernel netlink command channel Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Opening file '/etc/keepalived/keepalived.conf'. Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Configuration is using : 11104 Bytes Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Using LinkWatch kernel netlink reflector... Feb 7 17:24:52 tecadmin Keepalived_vrrp[23178]: VRRP_Instance(VI_1) Transition to MASTER STATE Feb 7 17:24:53 tecadmin Keepalived_vrrp[23178]: VRRP_Instance(VI_1) Entering MASTER STATE Feb 7 17:24:53 tecadmin avahi-daemon[562]: Registering new address record for 192.168.10.121 on eth0.IPv4.