node01 | 192.168.20.8 |
---|
node02 | 192.168.20.9 |
node03 | 192.168.20.10 |
---------------- 所有节点安装mariadb-server ------------------
yum install mariadb-server -y
初始化mariadb 允许用户远程连接mysql的root用户
---------- 三台机器建立远程用户 ----------
[root@node01 ~]# mysql -uroot -p000000 -e "grant all privileges on *.* to 'root'@'%' identified by '000000'"
mysql -uroot -p000000 -h192.168.20.9 # 测试正常连接
------------- 关闭数据库配置高可用 -------------
全部节点:systemctl stop mariadb
node01:
vim /etc/my.cnf.d/server.conf
[galera]
wsrep_on=ON
wsrep_provider=/lib64/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://192.168.20.8,192.168.20.9,192.168.20.10
wsrep_cluster_name="mycluster"
wsrep_node_name=node01
wsrep_node_address=192.168.20.8
binlog_format=row
default_storage_engine=InnoDB
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
node02:
vim /etc/my.cnf.d/server.conf
[galera]
wsrep_on=ON
wsrep_provider=/lib64/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://192.168.20.8,192.168.20.9,192.168.20.10
wsrep_cluster_name="mycluster"
wsrep_node_name=node02
wsrep_node_address=192.168.20.9
binlog_format=row
default_storage_engine=InnoDB
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
node03:
vim /etc/my.cnf.d/server.conf
[galera]
wsrep_on=ON
wsrep_provider=/lib64/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://192.168.20.8,192.168.20.9,192.168.20.10
wsrep_cluster_name="mycluster"
wsrep_node_name=node03
wsrep_node_address=192.168.20.10
binlog_format=row
default_storage_engine=InnoDB
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
node01:/bin/galera_new_cluster
全部节点:systemctl start mariadb
ss -lnt #存在端口3306,4567则成功
mysql-uroot-p123456-e"showstatuslike'wsrep_ready';" # 查看高可用状态
----------- 负载均衡 ------------
node01: yum install -y haproxy
vim /etc/haproxy/haproxy.cfg
listen dbcluster
mode tcp
bind 192.168.20.8:3307
server node01 172.168.20.8:3306 weight 1
server node02 172.168.20.9:3306 weight 1
server node03 172.168.20.10:3306 weight 1
systemctl start haproxy
ss -lnt # 查询3307端口是否存在