使用CentOS7和MariaDB10.1来构建Galera集群
安装步骤
以下是在CentOS7上安装MariaDB10.1并启用Galera Cluster的步骤。
安装和配置MariaDB 10.1。
添加 Yum 软件源
# cat /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
安装MariaDB
# yum --enablerepo=mariadb -y install MariaDB-server
设置文件
# cat /etc/my.cnf.d/galera.cnf
[galera]
# Mandatory settings
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://{{all_ipaddress}}"
wsrep_cluster_name="Galera_Cluster"
wsrep_node_name="{{ inventory_hostname }}"
wsrep_node_address="{{ ansible_host }}"
binlog_format=row
default_storage_engine=InnoDB
-
- {{all_ipaddress}} クラスタに参加するサーバのIPアドレスを , 区切りで並べたもの。動作しているサーバのIPが一つでもあればよい。例)192.168.1,10,192.168.1,11,192.168.1,12
-
- {{ inventory_hostname }} サーバ自身のホスト名
- {{ ansible_host }} サーバ自身のIPアドレス
↑其实,ansible的配置文件模板
启动
1台目(最初に启动的服务器)
galera_new_cluster
2、3台目
可使用常规的MySQL启动方法
systemctl status mysql
关于启动方法
只有在wsrep_cluster_address中指定的IP地址列表中的某个IP地址未启动时,才能启动。
因此,第一台服务器需要使用特殊命令galera_new_cluster来启动。
第一个启动方式是,在网络上有很多旧信息。
设置`wsrep_cluster_address=”gcomm://”`是一种过时的方法。
使用`service mysql bootstrap`在CentOS上无法正常工作,因为它使用了systemd。
正确的方法是使用`galera_new_cluster`命令。
当集群正在运行时,停止和启动第一个节点时,只需要启动mysql服务即可。使用`galera_new_cluster`是在没有任何节点运行时启动的情况下使用的。