問題タブ [xinetd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - HAProxy が MariaDB に接続できない
HAProxy を使用して、IP: 192.168.206.41 mariadb1
192.168.206.157 mariadb2
192.168.206.94 mariadb3で Mariadb クラスターを制御しようとしています。DB:
192.168.206.41 haproxy1
192.168.206.157 haproxy2
と同じサーバーに haproxy をインストールします。
私の問題は、構文を使用するときです: mysql -u root -p -h 192.168.206.94 -P 3030 -e "select Host, User, Password from mysql.user"
on mariadb1 を使用して、haproxy1 と mariadb3 の間の接続をテストします。それは動作せず、応答します:
[root@mariadb1 ~]# mysql -u root -p -h 192.168.206.94 -P 3030 -e "select Host, User, Password from mysql.user" Enter password:
ERROR 2002 (HY000): Can't connect to MySQL 「192.168.206.94」のサーバー (115)
SELinuxを無効にし、両方のサーバーのfirewalldに必要なポートを追加しましたが
[root@mariadb1 ~]# firewall-cmd --list-ports;
3306/tcp 443/tcp 80/tcp 4567/tcp 4568/tcp 4444/tcp 4567/udp 873/tcp 9200/tcp 9000/tcp 3030/tcp
これは両方のサーバーで同じです。
ここに私の /etc/haproxy/haproxy.cfg があります:
/etc/my.cnf の bind-address=127.0.0.1 もチェックして無効にしました
Mariadb クラスターは、Mariadb>show status like 'wsrep_cluster_size'; という構文で問題なく動作します。反応:
また、すべての権限を持つユーザー root@'%' と、xinetd の clustercheck 用の別のユーザーも作成します。
また、ファイル /etc/hosts でサーバーのすべての IP を宣言します。
もう 1 つの重大な問題は、haproxy1 を mariadb2 (haproxy を使用するもの) に接続しようとすると、次のように表示されることです。
[root@mariadb1 ~]# mysql -u root -p -h 192.168.206.157 -P 3030 -e "select Host, User, Password from mysql.user" Enter password:
ERROR 2013 (HY000): Lost connection to MySQL server at 「ハンドシェイク: 初期通信パケットの読み取り中」、システム エラー: 11
# semanage port -m -t http_port_t -p tcp 3030
SELinuxを無効にせずに、SELinuxがポート3030、9200、および9000をバイパスするようにしていましたが
しかし、SElinux を無効にすると、再び正常に動作します。SELinux を無効にすることはサーバーの管理には当てはまらないため、これが適切な方法ではないことはわかっています。
私はグーグルで何時間も調べましたが、これらの問題を抱えているのは地球上で私だけである可能性があります. 誰かがこれら2つのケースを解決するのを手伝ってくれますか?