heartbeat重要文件的配置参数说明
主要三个重要的文件:ha.cf, authkey, haresource1)ha.cf的重要参数的说明:
参数
说明
debugfile/var/log/ha-debug
heartbeat的调试日志存放的位置
logfile /var/log/ha-log
heartbeat的日志存放位置
logfacility local1
在syslog服务中配置通过local1设备接收日志
keepalive 2
指定心跳的间隔时间为2秒(即每两秒在eth1上发送一次广播)
deadtime 30
指定若备用节点在30秒内没有收到主节点的心跳信号,则立即接管主节点的服务资源
warntime10
指定心跳延迟的时间为10 秒。当十秒盅内备份节点不能收到主节点的心跳信号的时候,
就会往日志中写入一个警告日志,但是此时不会切换服务。
initdead 120
指定在heartbeat首次运行后,需要等待120秒才启动主服务器的任何资源,
该选项用于解决这种情况产生的时间间隔,取值至少为deadtime的两倍,
单机启动时会遇到VIP绑定很慢,为正常现想,改制设置的长的原因
bcasteth1
指明心跳使用以太旺广播的方式在eth1接口上进行广播,
如果使用两个世纪的网络来传送心跳则 bcast eth0 eth1
mcast eth2 225.0.0.1 694 10
设置广播通信使用的端口,694为默认的使用端口号
auto_failbackon
用来定义当主节点恢复后,是否将服务自动的切回
node data-1-1
主节点的主机名
nodedata-2-2
备节点的主机名
crm no
是否开启cluster resource Manager(集群资源管理)功能
配置authkey文件:
软件提供的authkey默认文件并不是很复杂
/et/ha.d/authkeys
1 #
2 # Authentication file.Must be mode 600
3 #
4 #
5 # Must have exactly one auth directive at the front.
6 # auth send authentication using this method-id
7 #
8 # Then, list the method and key that go with that method-id
9 #
10 # Available methods: crc sha1, md5.Crc doesn't need/want akey.
11 #
12 # You normally only have one authentication method-id listed in this file
13 #
14 # Put more than one to make a smooth transition when changing auth
15 # methods and/or keys.
16 #
17 #
18 # sha1 is believed to be the "best", md5 next best. --->sha1是被认为是最好的咱们用这个就是最好
19 #
20 # crc adds no security, except from packet corruption.
21 # Use only on physically secure networks.
22 #
23 #auth 1
24 #1 crc
25 #2 sha1 HI!
26 #3 md5 Hello!
默认的配置使用的是crc的方法,这是不加密的,不够安全,下面介绍一下authkey的一个生产配置,其实呢,就是两行:
auth 1
1sha1 47e9333ewqe67y8ewrew78u9ewrew04
简单吧,两行搞定,authkeys需要600,否则heartbeat服务会报错无法开启服务
注意:两台机器都是需要配置的
配置haresource文件:
编辑配置heartbeat资源文件 /etc/ha.d/haresources
生产环境的配置如下:
1 cat /etc/ha.d/haresources
2
3 data-1-1 IPaddr::10.0.0.17/24/eth0 ----》这后面还是可以加好多的参数的相当于执行 /etc/ha.d/resource.d/IPaddr 10.0.0.17/24/eth0/ stop/start
4 data-1-2IPaddr::10.0.0.18/24/eth0
配置haresource说明:
data-1-1 为主机名,表示初始状态会在data-1-1 丙丁IP 10.0.0.10
IPaddr为heartbeat配置IP的默认脚本,其后的IP等都是脚本的参数
10.0.0.10/24/eth0表示的是集群对外服务的VIP,初始启动在data-1-1上,24为子网掩码,eth0为ip绑定的物理网卡,为heartbeat提供对外服务的通信接口
heartbeat和keepalived的应用场景的区别:
1)对于一般的web,db,负载均衡(nginx,haproxpy)等等,heartbeat和keepalived都可以实现
2)lvs负载均衡最好和keepalived结合,虽然heartbeat也可以调用带有ipvsadm命令的脚本来启动和停止lvs负载均衡,但是heartbeart本身并没有对下面节
点rs的健康检查功能,heartbeat的这个缺陷可以通过ldiretord的插件来进行弥补。
3)需要数据同步(配合drbd)的高可用业务最好用heartbeat,例如:mysql双主多从,NFS/MFS存储,他们的特点是需要数据同步,这样的业务最好用
heartbeat,因为heartbeat自带了drbd的脚本,可以利用强大的drbd同步软件配合实现同步。如果你解决了数据同步可以不用drbd,例如:共享存储或
者是inotify+rsync,那就考虑keepalived
页:
[1]