まず、master-masterのようなMySQLレプリケーションを構成する必要があります。 これを行うには、問題がないことを確認してください。 それでは、このステップをスキップしましょう。 バランスを調整するには、HAProxyパッケージsocatをインストールします(データベースのステータスを表示します)。
いずれかのサーバーで、データベースのステータスを表示するユーザーを作成するリクエストを実行します。
INSERT INTO mysql.user (Host, User) values ('haproxy_ip', 'haproxy'); FLUSH PRIVILEGES;
次に、HAproxy、構成自体、およびいくつかのコメントを構成します。
global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats mode 777 level admin listen mysql bind 0.0.0.0:3306 timeout connect 10s timeout client 1m timeout server 1m mode tcp option mysql-check user haproxy server server_db1 <FQDN >:3306 weight 1 check inter 1s rise 3 fall 1 server server_db2 <FQDN >:3306 weight 1 check inter 1s rise 3 fall 1
オプションmysql-check user haproxy-検証のためにmysqlに接続するユーザーを設定します。
server server_db1 <server FQDN>:3306 weight 1 check inter 1s rise 3 fall 1-サーバーの表示名、サーバーアドレス、利用不可状態に入る前のチェック数、状態に入る前のチェック数が設定されます。
最後に、コマンドラインからサーバーの状態を確認するには、次のコマンドを使用できます。
echo "show stat" | socat stdio /var/lib/haproxy/stats | cut -d, -f1,2,18,20,21