標準ポート3306の2つのmysqlサーバー(db01とdb02)に対してkeepalivedを使用して2つのロードバランサー(lb01とlb02)を構成しています。アクセスするための仮想IPアドレス(192.168.205.10)があり、フェイルオーバーとしても機能しますが、どういうわけか前面のWebサーバーは、vipを使用してこのmysqlサーバーにアクセスできません。これが私の設定です:
キープアライブ:
ここに追加したmysql部分のみ。
virtual_server 192.168.205.10 3306 {
delay_loop 6
lb_algo rr
lb_kind DR
protocol TCP
real_server 192.168.205.4 3306 {
weight 10
TCP_CHECK {
connect_port 3306
connect_timeout 2
}
}
}
virtual_server 192.168.205.10 3306 {
delay_loop 6
lb_algo rr
lb_kind DR
protocol TCP
real_server 192.168.205.6 3306 {
weight 10
TCP_CHECK {
connect_port 3306
connect_timeout 2
}
}
}
両方のサーバーmy.cnfの「bind-address = 127.0.0.1」の部分はすでにコメントアウトしています。また、ubuntuサーバー(ufwまたはiptables)からすべてのファイアウォールプログラムを削除します。
何か助けはありますか?
ありがとう。
設定ファイルからmysqlオプション--skip-networkを削除するのを忘れていないか確認しましたか?
それがネットワーク/ファイアウォールの問題であるかどうかを確認する最も簡単な方法は、Webサーバーからlb * mysqlサーバーのポート3306でTelnet接続を確立することです。あなたがそれを乗り越えることができれば、それはネットワークの問題ではありません:)
または、tcpdump -i ethX port 3306
を使用します