pacemaker mysql_DRBD+Corosync+Pacemaker+MySQL(下)

接上一篇

DRBD+Corosync+Pacemaker实现MySQL高可用性群集(下)

四、corosync+pacemaker配置

1、安装将所需软件包

#node1

[root@node1~]# yum localinstall *.rpm -y

#node2

[root@node2 ~]# yum localinstall *.rpm -y

2、配置

# cd /etc/corosync/

# cp -p corosync.conf.example  corosync.conf

#vimcorosync.conf

3、node1、node2上分别创建日志目录

# mkdir /var/log/cluster

# ssh node2 "mkdir /var/log/cluster"

4、集群验证

[root@node1 corosync]#corosync-keygen

Corosync Cluster Engine Authentication key generator.

Gathering 1024 bits for key from /dev/random.

Press keys on your keyboard to generate entropy.

Writing corosync key to /etc/corosync/authkey

//拷贝给node2要保留权限

[root@node1 corosync]# scp-pauthkey  node2:/etc/corosync/

5、启动服务

# service corosync start

6、验证corosync引擎是否正常启动了

[root@node1 corosync]# grep -i  -e "corosync cluster engine" -e "configuration file" /var/log/messages

Jan 22 21:31:22 node1 smartd[4176]: Opened configuration file /etc/smartd.conf

Jan 22 21:31:22 node1 smartd[4176]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices

Jan 22 23:37:02 node1 corosync[2943]:   [MAIN  ] Corosync Cluster Engine ('1.2.7'): started and ready to provide service.

Jan 22 23:37:02 node1 corosync[2943]:   [MAIN  ] Successfully read main configuration file '/etc/corosync/corosync.conf'.

7、查看初始化成员节点通知是否发出

[root@node1 corosync]# grep -i totem /var/log/messages

2e186f141c06e9a1e7931e42b9fe2225.png

8、检查过程中是否有错误产生

[root@node1 corosync]#grep -i error:  /var/log/messages  |grep -v unpack_resources  (避免stonith的错误)

411b2b90fbd8bfc967d150eb7bd41d15.png

9、检查pacemaker的启动情况

[root@node1 corosync]#  grep -i pcmk_startup /var/log/messages

10c696c984f41f674b015e0d189b639e.png

五、配置群集服务及资源

1、corosync默认启用了stonith,而当前集群并没有相应的stonith设备,因此此默认配置目前尚不可用,这可以通过如下命令先禁用stonith:

# crm configure property stonith-enabled=false

2、对于双节点的集群来说,我们要配置此选项来忽略quorum,即这时候票数不起作用,一个节点也能正常运行:

# crm configure property no-quorum-policy=ignore

3、关闭两个节点上drbd服务,开机不自动启动

#servivce drbd stop  && chkconfig  drbd off

# ssh node2 "service drbd stop && chkconfig off"

4、配置drbd为集群资源

drbd需要同时运行在两个节点上,但只能有一个节点(primary/secondary模型)是Master,而另一个节点为Slave;因此,它是一种比较特殊的集群资源,其资源类型为多状态(Multi-state)clone类型,即主机节点有Master和Slave之分,且要求服务刚启动时两个节点都处于slave状态。

[root@node1 ~]# crmconfigure

crm(live)configure# primitive mysqldrbd ocf:heartbeat:drbd params drbd_resource="mysql" op monitor role="Master" interval="30s"  op monitor role="Slave" interval="31s" op start timeout="240s" op stop timeout="100s"

#创建master类型的资源,将mysqldrbd加入

crm(live)configure# ms MS_mysqldrbd mysqldrbd meta master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify="true"

crm(live)configure#exit

查看群集状态

81f2bfbb6bebca9bc57a2266a84694c2.png

5、我们实现将drbd设置自动挂载至/mysql目录。此外,此自动挂载的集群资源需要运行于drbd服务的Master节点上,并且只能在drbd服务将某节点设置为Primary以后方可启动。

确保两个节点上的设备已经卸载:

# umount /dev/drbd0

配置

# crmconfigure

crm(live)configure# primitive MysqlFS ocf:heartbeat:Filesystem params device="/dev/drbd0" directory="/mysql" fstype="ext3"  op start timeout=60s op stop timeout=60s

crm(live)configure# commit

crm(live)configure# exit

74c02a021ea47e345ef761f7155a3dbd.png

6、mysql资源的定义

# crm configure primitive myip ocf:heartbeat:IPaddr params ip=192.168.3.100

# crm configure primitive mysqlserver lsb:mysqld

#将ip与服务加入一个资源组中

# crm configuregroup mysql mysqlserver  myip

9a73d8e6a7987df624fec28394d7f0c2.png

7、配置资源约束

# crmconfigure

crm(live)configure# colocation MysqlFS_with_mysqldrbd inf: MysqlFS MS_mysqldrbd:Master myip mysqlserver

crm(live)configure# order MysqlFS_after_mysqldrbd inf: MS_mysqldrbd:promote MysqlFS:start

查看运行状态:

cb65261e4989d22d27b9ec38d42a3145.png

实现自动挂载

38360e1f72f640a0f574db6cf15211dd.png

ip参数

fa8927a8cbe2db713e0ff85e494baaf9.png

六、测试

node1节点

# crm node standby//变为备份

资源已经都切换到了node2上:

71aac9d7f1daaaa32d957c344147e893.png

客户机测试

授权192.168.3.0网段的用户可以访问

[root@host ~]#mysql

mysql> grant all on *.* to root@'192.168.3.%'  identified by '123456';

mysql> flush privileges;

c01ac15801e6341e6bf025f22fbd2911.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值