第3章 Keepalived のロードバランサー要件の設定


keepalived を使用するロードバランサーは、LVS ルーターと実サーバーの 2 つの基本グループで構成されます。単一障害点を回避するため、各グループに 2 つ以上のメンバーが含まれるようにしてください。
LVS ルーターグループは、Red Hat Enterprise Linux を実行している同一または非常に似ている 2 つのシステムで設定する必要があります。そのうちの 1 つはアクティブ LVS ルーターとして機能し、もう 1 つはホットスタンバイモードで待機するので、この 2 つができるだけ同じ機能を備えている必要があります。
実際のサーバーグループのハードウェアを選択および設定する前に、3 つのロードバランサートポロジーのどれを使用するかを決定します。

3.1. NAT ロードバランサーネットワーク

NAT トポロジーを使用すると、既存のハードウェアを柔軟に活用できますが、プールから送受信されるすべてのパケットはロードバランサールーターを通過するため、大量の負荷を処理する機能が制限されます。
ネットワークレイアウト
NAT ルーティングを使用するロードバランサーのトポロジーは、パブリックネットワークへのアクセスポイントが 1 つのみ必要なため、ネットワークレイアウトの観点から見ると最も設定が簡単です。実サーバーはプライベートネットワーク上にあり、LVS ルーター経由ですべての要求を返します。
ハードウェア
NAT トポロジーでは、実サーバーは LVS ルーターのみに応答するため、実サーバーごとに 1 つの NIC のみが必要になります。一方で LVS ルーターは 2 つのネットワークの間でトラフィックを送信するため、NIC が 2 つずつ必要になります。このトポロジーでは LVS ルーターの部分がネットワークのボトルネックとなるため、ギガビットイーサネット NIC を LVS ルーターで使うことで、LVS ルーターが処理可能な帯域幅を拡げることができます。ギガビットイーサネットを LVS ルーターで使用する場合は、実サーバーを LVS ルーターに接続しているスイッチは、負荷を効率的に処理するために少なくとも 2 つのギガビットイーサネットポートが必要になります。
ソフトウェア
NAT トポロジーでは、設定によっては iptables を使用する必要があるため、Keepalived 外部で多くのソフトウェアを設定する場合があります。特に、FTP サービスやファイアウォールマークを使用する場合は、要求を適切にルーティングするために LVS ルーターを追加で手動設定する必要があります。

3.1.1. NAT を使用するロードバランサーのネットワークインターフェイス設定

NAT を使用するロードバランサーを設定するには、最初に LVS ルーターのパブリックネットワークとプライベートネットワークのネットワークインターフェイスを設定する必要があります。この例では、LVS ルーターのパブリックインターフェイス (eth0) を 203.0.113.0/24 ネットワークに設定し、実サーバーにリンクするプライベートインターフェイス (eth1) を 10.11.12.0/24 ネットワークに設定します。
重要
このドキュメントの執筆時点では NetworkManager サービスはロードバランサーに対応していません。IPv6 アドレスが SLAAC に割り当てられた場合、IPv6 VIP は動作しないことが判明しています。そのため、この例では設定ファイルと network サービスを使用します。
アクティブもしくは プライマリー LVS ルーターノードでは、パブリックインターフェイスのネットワーク設定ファイルである /etc/sysconfig/network-scripts/ifcfg-eth0 は以下のようになります。
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=203.0.113.9
NETMASK=255.255.255.0
GATEWAY=203.0.113.254
Copy to Clipboard Toggle word wrap
LVS ルーター上のプライベート NAT インターフェイスの /etc/sysconfig/network-scripts/ifcfg-eth1 設定ファイルは、以下のようになります。
DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
IPADDR=10.11.12.9
NETMASK=255.255.255.0
Copy to Clipboard Toggle word wrap
仮想 IP アドレスは静的アドレスとは異なりますが、同じ範囲内である必要があります。この例では、LVS ルーターのパブリックインターフェイスの仮想 IP アドレスは 203.0.113.10 に設定でき、プライベートインターフェイスの仮想 IP アドレスは 10.11.12.10 に設定できます。仮想 IP アドレスは、/etc/keepalived/keepalived.conf ファイルの virtual_ipaddress オプションによって設定されます。詳細は、「基本的な Keepalived の設定」 を参照してください。
また、実サーバーが要求を NAT インターフェイスの仮想 IP アドレスにルーティングして返すことも確認します。
重要
本項のイーサネットインターフェイス設定の例は、LVS ルーターのリアル IP アドレス向けの例で、フローティング IP アドレス向けの例ではありません
プライマリー LVS ルーターノードのネットワークインターフェイスを設定した後、バックアップ LVS ルーターの実ネットワークインターフェイスを設定します。IP アドレスがネットワーク上の他の IP アドレスと競合しないように注意してください。
重要
バックアップノード上の各インターフェイスが、プライマリーノード上のインターフェイスと同じネットワークに対応するようにしてください。たとえば、 eth0 プライマリーノード上でパブリックネットワークに接続する場合、バックアップノードでもパブリックネットワークに接続するようにする必要があります。

3.1.2. 実サーバー上でのルーティング

NAT トポロジーで実サーバーネットワークインターフェイスを設定する場合に最も重要なのは、LVS ルーターの NAT フローティング IP アドレス用にゲートウェイを設定することです。この例では、ゲートウェイのアドレスは 10.11.12.10 となります。
注記
実サーバー上でのネットワークインターフェイス設定が完了すると、マシンは他の方法でパブリックネットワークに ping したり接続したりすることができなくなります。これは正常なことです。しかし、LVS ルーターのプライベートインターフェイスの実 IP (この場合は 10.11.12.9) に ping することはできます。
実サーバーの /etc/sysconfig/network-scripts/ifcfg-eth0 設定ファイルは以下のようになります。
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.11.12.1
NETMASK=255.255.255.0
GATEWAY=10.11.12.10
Copy to Clipboard Toggle word wrap
警告
GATEWAY= 行で実サーバーに複数のネットワークインターフェイスが設定されている場合、最初に起動したネットワークインターフェイスがゲートウェイを取得します。そのため、eth0eth1 の両方が設定され、eth1 がロードバランサーに使用されている場合、実サーバーは要求を適切にルーティングしないことがあります。
/etc/sysconfig/network-scripts/ ディレクトリー内のネットワーク設定ファイルで ONBOOT=no と設定するか、最初に表示されるインターフェイスでゲートウェイを適切に設定して、外部のネットワークインターフェイスをオフにすることが推奨されます。

3.1.3. LVS ルーターでの NAT ルーティングの有効化

クラスター化されたサービスが 1 つのポート (例: ポート 80 の HTTP) のみを使用する簡単な NAT ロードバランサー設定の場合、LVS ルーター上でパケット転送のみを有効にすれば実サーバーとその外部との間で適切に要求をルーティングできます。しかし、ユーザーセッション中に同じ実サーバーに移動するため、クラスター化されたサービスが複数のポートを必要とする場合は、他の設定が必要になります。
LVS ルーターで転送が有効になり、実サーバーがセットアップされ、クラスター化されたサービスが稼働したら、keepalived を使用して IP の情報を設定します。
警告
手作業でネットワーク設定ファイルを編集したり、ネットワーク設定ツールを使用したりして eth0 または eth1 のフローティング IP を設定しないでください。必ず keepalived.conf ファイルで設定してください。
設定が終了したら、keepalived サービスを開始します。サービスの稼働後、アクティブ LVS ルーターは要求を実サーバーのプールへルーティングします。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat