ha.cf配置文件文件设置heartbeat的检验机制,没有执行机制
下面是该配置文件的译文:
#这文件下面有很多的选 项,你必须设置的有节点列表集{node ...},{serial,bcast,mcast,或ucast}中的一个,auto_failback的值
#注意:配置文件是逐行读取的,并且选项的顺序是会影响最终结果的。
#特别注意,确保 udpport,serial baud rate等配置必须在心跳检测媒体(heartbeat media)前配置!他们将影响debug和log file指令。
#也就是是在定义网卡,串口等心跳检测接口前先要定义端口号。
#如果你保持配置选项顺序像该文件中的顺序的话一切都不会有问 题。
#记录日志方面的注意事项:
#如果debugfile,logfile和logfacility都没有定义,日志记录就相当于use_logd yes。否则,他们将分别生效。如果要阻止记录日志到syslog,那么logfacility必须设置为“none”
#debug日志文件路径
#debugfile /var/log/ha-debug
#ha日志文件路径
#logfile /var/log/ha-log
#用于syslog()/logger的设备 ,即配置记录日志时使用的设备
logfacility local0
#在下面指定多长时间时应该注意,默认时间单位是秒
#keepalive: 在heartbeat之间连接保持多久,即心跳间隔时间(即每2s发送一次广播)
#keepalive 2
#备节点30秒没有接收到主节点信号,认为主节点挂了,接管VIP
#deadtime:
#10s秒备节点没有接收到主节点心跳信号,向日志中写入一条警告信息
#warntime 10
#在某些机器/操作系统等中,网络在机器重启后需要花一定的时间启动并正常工作。因此我们必须分开他们初次起来的dead time,这个值应该最少设置为两倍的正常dead time。
#initdead 120
#用于bacst/ucast通讯的UDP 端口
#udpport 694
#串口的波特率
#baud 19200
#serial 串口名称
#serial /dev/ttyS0 # Linux
#serial /dev/cuaa0 # FreeBSD
#serial /dev/cuad0 # FreeBSD 6.x
#serial /dev/cua/a # Solaris
#广播heartbeats的接口
#bcast eth0 # Linux
#bcast eth1 eth2 # Linux
#bcast le0 # Solaris
#bcast le1 le2 # Solaris
#设置一个多 播心跳介质
#mcast [dev] [mcast group] [port] [ttl] [loop]
#[dev] 发送/接收heartbeats的设备,即心跳线直连接口
#[mcast group] 加入到的多播组(D类,多播地址224.0.0.0 - 239.255.255.255)
#[port] 端口用于发送/接收udp(设置这个值跟上面的udpport为相同值)
#[ttl] 外流的 heartbeats的ttl值。这个影响多播包能传播多远。(0-255)必须要大于0 。
#[loop] 为多播heartbeat开关loopback。如果enabled,一个外流的包将被回环到原处并由发送它的接口接收。(0或者1)设置这 个值为0。
#mcast eth0 225.0.0.1 694 1 0 #eth0是心跳线直连接口
#配 置一个unicast / udp heartbeat 介质
#ucast [dev] [peer-ip-addr]
#[dev] 用于发送/接收heartbeat的设备,即心跳线直连接口
#[peer-ip-addr] 包被发送到的对等的IP地址
#ucast eth0 192.168.1.2
#关于boolean值
#下面大小写不敏感的值将认为是true:
#true, on, yes, y, 1
#下面的大小不写敏感的值将认为是false:
#false, off, no, n, 0
#auto_failback: 决定一个resource是否自动恢复到它的primary节点,或者不管什么节点,都继续运行在上面直到节点出现故障或管理员进行干预(即主节点从故障中恢复后是否主动将VIP、资源等接管回来)。
#auto_failback 的可能值有:
#on - 允许自动failbacks
#off - 禁止自动failbacks
#legacy - 在所有节点都不支持auto_failback的选项中允许自动failbacks
#auto_failback 'on'和'off'向后兼容旧的'nice_failback on'设置。
#查看FAQ获取如何从'legacy'转为到'on'并不会闪断的信息。
#默认的auto_failback值是“legacy”,它在启动的时候会发送一个警告。因此,确保你在ha.cf文件中配置了auto_failback指令。
auto_failback on
#基本上STONITH支持
#使用这个指令假设有一个stonith设备在集群中。这个设备的参数从一个配置文件中读取,这行的格式是:
stonith
#注意:在集群中的每个节点上的这个文件都靠你去维护。
#stonith baytech /etc/ha.d/conf/stonith.baytech
#你可以使用这个指令配置多个stonith设备:
#这行的格式是:
#stonith_host
#表示stonith设备联结到的机器或者用来表示从任何主机都可以访问。
#是stonith设备的类型(支持的设备的列表在/usr/lib/stonith中)
#是驱动指定的参数,要查看特定设备的格式,运行:
#stonith -l -t
#需要注意如果你将你的stonith设备的访问信息放在这里,并且你让这个文件开放读权限,那么你可能会招致一个DoS***。
#要得到支持的 stonith设备的列表,运行
#stonith -L
#要哪个stonith设备是支持的详细信息和它们详细的配置选项,运行这个命令:
#stonith -h
#stonith_host * baytech 10.0.0.3 mylogin mysecretpassword
#stonith_host ken3 rps10 /dev/ttyS1 kathy 0
#stonith_host kathy rps10 /dev/ttyS1 ken3 0
#Watchdog是一个watchdog计时器,如果我们的心超过一分钟不跳,我们的机器将会reboot。
#注意:如果你使用软件watchdog,你很可能希望用参数“nowayout=0”来加载这个模块或编译它的时候去掉
#CONFIG_WATCHDOG_NOWAYOUT 设置。否则,即使一个有序的关闭heartbeat也会触发重启,这很可能不是你想要的。
#watchdog /dev/watchdog
#说明哪些机器在这个集群中
#node nodename ... --必须要匹配uname -n
#node ken3
#node kathy
#不常用的选项
#将10.10.10.254看成一个伪集群成员,与下面的 ipfail一起使用。
#注意:不要使用一个集群节点作为ping节点
#ping 10.10.10.254
#将 10.10.10.254和10.10.10.253看成一个叫group1的伪集群成员。如果10.10.10.254或10.10.10.253是 up的,那么group1为up
#与下面的ipfail一起使用。
#ping_group group1 10.10.10.254 10.10.10.253
#用于Fiber Channel的HBA ping指令,将fc-card-name看成是伪集群成员,与下面的ipfail一起使用。
#你可以从http://hbaapi.sourceforge.net获 取HBAAPI,你需要从vender获得用于你的HBA指令的特定的库来安装HBAAPI。
#你所需要做的是编译你从sourceforge 获得的通用部分,它会生成libHBAAPI.so,然后你要将它拷贝到/usr/lib目录。同时
#你也要把hbaapi.h拷贝到/usr /include 。
#fc-card-name是从hbaapitest程序获取的名字,它是hbaapi包的一部分。运行hbaapitest将生成一个冗长的输出,其中第一行类似:
#Apapter number 0 is named: qlogic-qla2200-0
#在这里fc-card-name是qlogic-qla2200-0
#hbaping fc-card-name
#与heartbeat 一起启动和停止的进程。重启,除非它们以rc=100退出。
#respawn userid /path/name/to/run
#respawn hacluster /usr/lib/heartbeat/ipfail
#用于客户端api的访问控制,缺省为不可访问。
#apiauth client-name gid=gidlist uid=uidlist
#apiauth ipfail gid=haclient uid=hacluster
###########################
#不常用的选项
###########################
#hopfudge maximum hop count minus number of nodes in config
#hopfudge 1
#deadping - 上面设置的用来ping的节点的死亡时间
#deadping 30
#hbgenmethod - Heartbeat产生数字的生产方法。通常执行存储在磁盘上并在需要时进行增量。
#hbgenmethod time
#realtime - 允许/禁止实时执行(高优先级)缺省为on
#realtime off
#debug - 设置debug等级,缺省为0
#debug 1
#APT认证 - 代替以前的fifo-permission-base系统
#可以放上一个uid列表和/或gid列表。如果两个都放,那么符合uid列表或gid列表中的进程都将通过验证
#组名“default”有特定的意思。如果它被指定,那么它将用于验证无组的客户端和任何没有另外指定的客户组
#这是一个复杂的表达式,“default”将从不用于下面的情况(现实中缺省的 验证指令记录在括号中)
#ipfail (uid=HA_CCMUSER)
#ccm (uid=HA_CCMUSER)
#ping (gid=HA_APIGROUP)
#cl_status (gid=HA_APIGROUP)
#这样做是为了避免创建一个大的安全漏洞,并匹配最可能需要的配置。
#apiauth ipfail uid=hacluster
#apiauth ccm uid=hacluster
#apiauth cms uid=hacluster
#apiauth ping gid=haclient uid=alanr,root
#apiauth default gid=haclient
#网线中的信息格式,可以是classic或netstring
#default: classic
#msgfmt classic/netstring
#我们是否使用记录监控?
#如果使用了记录监控,此文件里面的 logfile/debugfile/logfacility将不再有意义。你应该检查在配置文件中是否有记录监控(缺省为/etc/logd.cf)
#更 多的信息可以在http://www.linux-ha.org/ha_2ecf_2fUseLogdDirective中 找到。推荐配置use_logd为yes。
#use_logd yes/no
#如果前一个连接失败了,我们再次连接到记录监控器的间隔。
#conn_logd_time 60
#配置压缩模块
#它可 以为zlib或bz2,基于我们的系统中是否有相应的库。
#compression bz2
#配置压缩的限度
#这个值决定压缩一个信息的限度,例如:如果限度为1,那么任何大于1KB的消息都会被压缩,缺省为 2(KB)
#compression_threshold 2
联系客服