Pacemaker仮想IPはネットワーク外にルーティングできません。

Pacemaker仮想IPはネットワーク外にルーティングできません。

次の設定で構成されたサーバークラスターがあります。

2つのNICを持つ2つの仮想サーバー。 eth0(プライベートネットワーク10.0.0.0/16)とeth1(パブリックネットワーク77.1.2.0/24、ゲートウェイ77.1.2.1)

HA-01 VPSの場合、eth0のプライベートIPを10.0.0.1に設定しました。 HA-02 VPSの場合、eth0のプライベートIPを10.0.0.2に設定しました。

Pacemaker / Corosyncクラスタは、プライベートIPアドレスとレプリケーションリソース(IPAddr2)で定義された仮想IP(77.1.2.4)の間に設定され、2つのノード間を移動できます。

pcs resource create VirtualIP1 ocf:heartbeat:IPaddr2 ip="77.1.2.4" cidr_netmask="24" nic="eth1" clusterip_hash="sourceip-sourceport" op start interval="0s" timeout="60s" op monitor interval="1s" timeout="20s" op stop interval="0s" timeout="60s" clone interleave=true ordered=true

問題は、世界中でそのIPアドレスにアクセスできないことです。パスが見つからないことを発見し、固定パスを追加しました。

ip r add default via 77.1.2.1 dev eth1

しかし、まだこのサーバーでgoogle.comをpingすることはできず、世界中はそのIPでそのサーバーを見ることができません。また、次のようにeth1の同じサブネットにIPアドレスを追加してみました。

HA-01 eth1: 77.1.2.2
HA-02 eth1: 77.1.2.3

このIPを使用すると、サーバーは世界中に表示されますが、VirtualIPリソースを追加すると仮想IPアドレスを介してアクセスできなくなります。また、ルーティングテーブルにソースIPを追加してみました。

ip r add default via 77.1.2.1 src 77.1.2.4

役に立たない。このVirtualIPを正しく機能させるにはどうすればいいのかわかりません。ネットワークの他のサーバーでは77.1.2.4(仮想IPアドレス)にアクセスできますが、ネットワーク外のサーバーからはアクセスできません。

ファイアウォールが設定され、高可用性ポートがコマンドを介して転送されます。

firewall-cmd --add-service="high availability"; firewall-cmd --add-service="high availability" --permanent

ここで私が逃したものはありますか?サーバーのインターフェースの1つに対応するアドレス(77.1.2.4 - 仮想IP)のみを追加すると機能します。 ARPテーブルに問題があるのでしょうか、それともルーターが一部のトラフィックをブロックしているのでしょうか?

ベストアンサー1

この質問を見てください。https://serverfault.com/questions/778997/pacemaker-virtual-ip-loadbalancing-with-clone-and-clusterip

ルーティングの問題だと思います。質問の最後の説明を試してくださいstrzelecki.maciek。彼はiptablesの事前ルーティングを適用しましたが、これは多くの助けになりました。たぶんあなたの場合かもしれません。

おすすめ記事