[分享]用MySQL+HeartBeat实现MySQL主主自动切换来保证网站不中断服务_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2421 | 回复: 0   主题: [分享]用MySQL+HeartBeat实现MySQL主主自动切换来保证网站不中断服务        下一篇 
shylone
注册用户
等级:下士
经验:199
发帖:90
精华:0
注册:2011-11-24
状态:离线
发送短消息息给shylone 加好友    发送短消息息给shylone 发消息
发表于: IP:您无权察看 2014-12-11 9:30:23 | [全部帖] [楼主帖] 楼主

测试

1、 主服务器的mysql服务应该被heartbeat启动,同时heartbeat为主节点设置IP地址192.168.0.8。使用ifconfig eth0:0可以看到如下信息

Eth0:0       Link encap:Ethernet HWaddr 00:0C:29:22:7E:15
inet addr:192.168.0.8 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe22:7e15/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:324 errors:0 dropped:0 overruns:0 frame:0
TX packets:34 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:43369 (42.3 KiB) TX bytes:7878 (7.6 KiB)


2、 查看主服务器日志信息

可以使用命令查看日志文件:

#tail -f /var/log/messages


此时会发现出现如下信息:

primary heartbeat[2886]: info: Heartbeat restart on node backup
primary heartbeat[2886]: info: Link backup:eth1 up.
primary heartbeat[2886]: info: Node backup: status up
primary heartbeat: info: Running /etc/ha.d/rc.d/status status
primary heartbeat: info: Running /etc/ha.d/rc.d/ifstat ifstat
primary heartbeat[2886]: info: Node backup: status active
primary heartbeat: info: Running /etc/ha.d/rc.d/status status


可以使用tcpdump命令查看心跳广播是否到达两个服务器节点。

#tcpdump -i all -n -p udp port 694


3、 停止主服务器的Heartbeat

停止主服务器的Heartbeat,使用命令:

#/etc/init.d/heartbeat stop 或者 #service heartbeat stop

现在使用ifconfig eth0:0可以看到如下信息:

eth0:0         Link encap:Ethernet HWaddr 00:0C:29:E1:14:84
inet addr:192.168.0.8 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fee1:1484/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:73 errors:0 dropped:0 overruns:0 frame:0
TX packets:39 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:8218 (8.0 KiB) TX bytes:8147 (7.9 KiB)


这说明浮动IP已经切换到backup服务器上了。

此时可以使用命令查看backup服务器日志文件:

#tail -f /var/log/messages


此时会发现出现如下信息:

backup heartbeat[4950]: WARN: node primary: is dead
backup heartbeat[4950]: info: Link primary:eth1dead.
backup heartbeat: info: Running /etc/ha.d/rc.d/status status
backup heartbeat: info: Running /etc/ha.d/rc.d/ifstat ifstat
backup heartbeat: info: Taking over resource group test
*** /etc/ha.d/resource.d/test called with status
backup heartbeat: info: Acquiring resource group:
primary.
com test
backup heartbeat: info: Running /etc/ha.d/resource.d/test start
*** /etc/ha.d/resource.d/test called with start
backup heartbeat: info: mach_down takeover complete.


在这个过程中,使用ping命令进行不间断监测,可以发现集群IP地址一直处于可通状态,并没有产生任何阻塞或延迟,所以,在关闭处于激活状态的heartbeat的情况下,双机系统可以实现无缝切换。

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论