CentOS 7.5数据库架构之NFS+Heartbeat+DRBD实测(4)

安装cluster-glue

[root@dbmaster ~]# ssh-keygen -q -t rsa -N '' -f ~/.ssh/id_rsa [root@dbmaster ~]# ssh-copy-id root@dbbackup #ssh免密认证 [root@dbbackup ~]# yum install gcc gcc-c++ autoconf automake libtool glib2-devel libxml2-devel bzip2 bzip2-devel e2fsprogs-devel libxslt-devel libtool-ltdl-devel asciidoc -y #两机同样操作安装依赖 [root@dbbackup ~]# useradd -g haclient hacluster 安装包下载 下载软件包:Reusable-Components-glue、resource-agents、heartbeat 免费下载地址在 用户名与密码都是 具体下载目录在 /2019年资料/2月/26日/CentOS 7下安装配置Heartbeat高可用集群/ 下载方法见 [root@dbmaster ~]# tar -jxvf glue.tar.bz2 #我这是改名之后的,原来的是一串数字 [root@dbmaster ~]# cd Reusable-Cluster-Components-glue--0a7add1d9996/ [root@dbmaster Reusable-Cluster-Components-glue--0a7add1d9996]# ./autogen.sh ./configure --prefix=/usr/local/heartbeat --with-daemon-user=hacluster --with-daemon-group=haclient --enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1' make && make install echo $? cd ..

安装resource-agents

[root@dbbackup ~]# tar zxf resource-agents-3.9.6.tar.gz [root@dbbackup ~]# cd resource-agents-3.9.6/ ./autogen.sh ./configure --prefix=/usr/local/heartbeat --with-daemon-user=hacluster --with-daemon-group=haclient --enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1' make && make install echo $? cd ..

安装heartbeat

[root@dbmaster ~]# tar jxf heartbeat.bz2 #该名称是我后来改过的 [root@dbmaster ~]# cd Heartbeat-3-0-958e11be8686/ ./bootstrap export CFLAGS="$CFLAGS -I/usr/local/heartbeat/include -L/usr/local/heartbeat/lib" ./configure --prefix=/usr/local/heartbeat --with-daemon-user=hacluster --with-daemon-group=haclient --enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1' make && make install echo $? [root@dbbackup ~]# mkdir -pv /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/ [root@dbbackup ~]# cp /usr/lib/ocf/lib/heartbeat/ocf-* /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/ [root@dbmaster ~]# cp Heartbeat-3-0-958e11be8686/doc/{ha.cf,haresources,authkeys} /usr/local/heartbeat/etc/ha.d/ #拷贝配置文件 [root@dbmaster Heartbeat-3-0-958e11be8686]# chmod 600 /usr/local/heartbeat/etc/ha.d/authkeys #该权限必须为600 #以上安装两台机器一样

配置文件

[root@dbmaster ~]# vim /usr/local/heartbeat/etc/ha.d/haresources #末尾添加如下 dbmaster IPaddr::192.168.111.100/24/ens32 drbddisk::r0 Filesystem::/dev/drbd0::/nfs::ext4 killnfsd #dbmaster IPaddr::192.168.111.10/24/ens32主机名 后跟虚拟IP地址、接口 #drbddisk::r0管理drbd资源的名称 #Filesystem::/dev/drbd0::/nfs::ext4 renfsd文件系统::挂载的目录及格式::后跟renfsd资源脚本 [root@dbmaster ~]# cp /etc/ha.d/resource.d/drbddisk /usr/local/heartbeat/etc/ha.d/resource.d/ #两台一样 [root@dbmaster ~]# echo "pkill -9 nfs; systemctl restart nfs; exit 0" > /usr/local/heartbeat/etc/ha.d/resource.d/killnfsd #编辑nfs脚本文件killnfsd ,killnfsd 脚本文件的作用, #drbd主备切换时,若nfs没有启动,则此脚本会把nfs启动 #drbd主备切换时,若nfs已启动,则此脚本会重启nfs服务,因为NFS服务切换后,必须重新mount一下nfs共享出来的目录,否则会出现stale NFS file handle的错误 [root@dbmaster ~]# chmod +x /usr/local/heartbeat/etc/ha.d/resource.d/drbddisk [root@dbmaster ~]# chmod +x /usr/local/heartbeat/etc/ha.d/resource.d/killnfsd [root@dbmaster resource.d]# pwd /usr/local/heartbeat/etc/ha.d/resource.d [root@dbmaster resource.d]# ll drbddisk Filesystem killnfsd IPaddr -rwxr-xr-x 1 root root 3162 5月 14 15:43 drbddisk -rwxr-xr-x 1 root root 1923 5月 14 10:15 Filesystem -rwxr-xr-x 1 root root 2297 5月 14 10:15 IPaddr -rwxr-xr-x 1 root root 57 5月 14 15:41 killnfsd #必须要有这四个脚本,有的是自带,有的是复制,有的自己写,上面已经说明而且必须要有执行权限。 [root@dbmaster ~]# vim /usr/local/heartbeat/etc/ha.d/ha.cf #修改主配置文件(去掉注释或修改值) logfile /var/log/ha-log #指定heartbeat日志文件的位置 logfacility local0 #利用系统日志打印日志 keepalive 1 # 心跳发送时间间隔 deadtime 5 # 备用节点5s内没有检测到master机的心跳,确认对方故障 warntime 2 # 警告2次 initdead 10 # 守护进程启动30s后,启动服务资源。 udpport 694 #设定集群节点间的通信协议及端口为udp694监听端口(该端口可以修改) ucast ens32 192.168.111.4 # 另一台主机节点eth0的地址,注意是另一台。 auto_failback off #当primary节点切换到secondary节点之后,primary节点恢复正常,不进行切回操作,因为切换一次mysql master成本很高。 node dbmaster node dbbackup # 定义两个节点的主机名,一行写一个。 ping 192.168.111.2 #两个IP的网关 respawn hacluster /usr/local/heartbeat/libexec/heartbeat/ipfail #使用这个脚本去侦听对方是否还活着(使用的是ICMP报文检测) [root@dbmaster ~]# vim /usr/local/heartbeat/etc/ha.d/authkeys #认证文件 auth 1 #表示使用id为2的验证 下边需要定义一个2的验证算法 1 sha1 HA_DB #口令(HISHA1)随便给 主从配置相同即可

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/457e3b51f6565777a75797eeae2a5949.html