eth0:0 Link encap:Ethernet HWaddr 00:0C:29:D8:FD:EB
inet addr:192.168.100.10 Bcast:192.168.100.15 Mask:255.255.255.240
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:14970 errors:0 dropped:0 overruns:0 frame:0
TX packets:14977 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:3624073 (3.4 Mb) TX bytes:3626223 (3.4 Mb)
Interrupt:19 Base address:0x10a0
同时/dev/sdb1,应该被挂接。使用df -h,可以看到的信息包含下面的行:
/dev/sdb1 485M 8.1M 452M 2% /ha
7、 启动备份服务器的Heartbeat
启动主服务器的Heartbeat,使用命令:
#/etc/init.d/heartbeat start
或者
#service heartbeat start
可以使用命令查看日志文件:
#tail -f /var/log/messages
此时会发现出现如下信息:
backup heartbeat[4656]: info: No local resources [/usr/lib/heartbeat/
ResourceManager listkeys backup.mydomain.com]
backup.mydomain.com heartbeat[4656]: info: Resource acquisition completed.
表示备份服务器没有可以使用的资源,原因是备份服务器的现在是闲置状态,它只监听主服务器心跳,直到主服务器失效。
8、 查看主服务器日志信息
可以使用命令查看日志文件:
#tail -f /var/log/messages
此时会发现出现如下信息:
primary heartbeat[2886]: info: Heartbeat restart on node backup.mydomain.com
primary heartbeat[2886]: info: Link backup.mydomain.com:eth2 up.
primary heartbeat[2886]: info: Node backup.mydomain.com: 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.mydomain.com: status active
primary heartbeat: info: Running /etc/ha.d/rc.d/status status
可以使用tcpdump命令查看心跳广播是否到达两个服务器节点。
#tcpdump -i all -n -p udp port 694
9、 停止主服务器的Heartbeat
停止主服务器的Heartbeat,使用命令:
#/etc/init.d/heartbeat stop
或者
#service heartbeat stop
此时可以使用命令查看备份服务器日志文件:
#tail -f /var/log/messages
此时会发现出现如下信息:
backup.mydomain.com heartbeat[5725]: WARN: node primary.mydomain.com: is dead
backup.mydomain.com heartbeat[5725]: info: Link primary.mydomain.com:eth1dead.
backup.mydomain.com heartbeat: info: Running /etc/ha.d/rc.d/status status
backup.mydomain.com heartbeat: info: Running /etc/ha.d/rc.d/ifstat ifstat
backup.mydomain.com heartbeat: info: Taking over resource group test
*** /etc/ha.d/resource.d/test called with status
backup.mydomain.com heartbeat: info: Acquiring resource group:
primary.mydomain.
com test
backup.mydomain.com heartbeat: info: Running /etc/ha.d/resource.d/test start
*** /etc/ha.d/resource.d/test called with start
backup.mydomain.com heartbeat: info: mach_down takeover complete.
在这个过程中,使用ping命令进行不间断监测,可以发现集群IP地址一直处于可通状态,并没有产生任何阻塞或延迟,所以,在关闭处于激活状态的heartbeat的情况下,双机系统可以实现无缝切换。但是在另外一些情况下,比如网络故障、主机关机或重启等,如果该主机的heartbeat处于激活状态,则不能实现双机的无缝切换,切换过程需要有一定的延迟,使用ping命令可以发现集群IP地址暂时无法使用。
10、 配置ipfail
ipfail插件的用途是检测网络故障,并作出合理的反应,如果需要的话使集群资源failover。为了实现这样的功能ipfail使用ping节点或者ping节点组,这些节点在集群中作为“哑”节点出现。如果HA节点间可以相互通信ipfail便可以可靠地检测到其中一个网络连接失效的情况,并作出补救。
配置ipfail的步骤如下:
a.选择好的候选ping节点
这步很重要。你的选择越好,则得到的HA集群便越强壮。选择固定的交换机路由器等是一个好主意。不要选择HA集群中的任一个成员,也不要选择其他人的工作站。选择能反映您HA节点的连接状况的ping节点也很重要。如果您要监视两个接口的连接情况,明智的做法是为每个接口选择一个只对该接口可用的ping节点。
b.设置auto_failback为on或者off
只有当Heartbeat被配置为非legacy时ipfail才会起作用。在ha.cf文件中,如下将auto_failback设置为on或者off:
auto_failback on
或者
auto_failback off
c.配置ha.cf使之启动ipfail。
向ha.cf中增加如下一行(假设您在编译时的PREFIX为/usr):
respawn hacluster /usr/lib/heartbeat/ipfail
d.向ha.cf中加入ping节点:
ping pnode1 pnode2 pnodeN
将pnode1,pnode2,…pnodeN等替换为您ping节点的IP地址。
确保向集群中各个成员的ha.cf中加入以上相同的配置指令。
e. 修改Heartbeat配置文件
如果修改了配置文件etc/ha.d/ authkeys或者 /etc/ha.d/ha.cf后要使用下面的命令重新加载服务。
#/etc/init.d/heartbeat reload
或者
#service heartbeat reload (未完待续)
| 第1页: 准备工作 | 第2页: 下载安装软件包 |
| 第3页: 启动主服务器的Heartbeat |