zgdy 发表于 2019-1-7 09:01:51

heartbeat yum安装,配置

  需要的包
  libnet-1.1.2.1-1.rh.el.um.1.i386.rpm
  ipvsadm-1.24-5.i386.rpm
  heartbeat-2.0.4-1.el4.i386.rpm
  heartbeat-pils-2.0.4-1.el4.i386.rpm
  heartbeat-stonith-2.0.4-1.el4.i386.rpm
  主机ip:192.168.11.122(eth0),心跳:192.168.11.123(eth1)
  主机hostname:node1
  备机ip:192.168.11.105(eth0),心跳:192.168.11.107(eth1)
  备机hostname:node2
  vip:192.168.11.234
  1、安装
  yum install libnet ipvsadm heartbeat heartbeat-stonith heartbeat-pils
  2、配置
  1)配置/etc/hosts(主从都需要配置)
  # cat /etc/hosts
  # Do not remove the following line, or various programs
  # that require network functionality will fail.
  127.0.0.1       node1         localhost.localdomain localhost
  ::1             localhost6.localdomain6 localhost6
  192.168.11.122node1
  192.168.11.105node2
  192.168.11.123priv1(node1的eth1的ip,作为心跳)
  192.168.11.107priv2(node2的eth1的ip,作为心跳)
  2)配置/etc/sysconfig/network(主从都需要配置)
  NETWORKING=yes
  NETWORKING_IPV6=no
  HOSTNAME=node1(hostname值设定)
  3)在/etc/ha.d/目录下,建3个文件authkeys,ha.cf,haresources
  a)主配置文件ha.cf(主从服务器配置一样)
  logfile /var/log/ha-log         #指名heartbeat的日志存放位置。
  #crm on                           #是否开启Cluster Resource Manager(集群资源管理)功能。
  bcast eth1                         #指明心跳使用以太网广播方式,并且是在eth1接口上进行广播。
  keepalive 2                     #指定心跳间隔时间为2秒(即每两秒钟在eth1上发送一次广播)。
  deadtime 30                     #指定备用节点在30秒内没有收到主节点的心跳信号后,则立即接管主节点的服务资源。
  warntime 10                     #指定心跳延迟的时间为十秒。当10秒钟内备份节点不能接收到主节点的心跳信号时,就会往日志中写入一个警告日志,但此时不会切换服务。
  initdead 120            #在某些系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔。取值至少为deadtime的两倍。
  udpport 694                     #设置广播通信使用的端口,694为默认使用的端口号。
  baud 19200                     #设置串行通信的波特率。
  #serial /dev/ttyS0            #选择串行通信设备,用于双机使用串口线连接的情况。如果双机使用以太网连接,则应该关闭该选项。
  #ucast eth0 192.168.1.2 #采用网卡eth0的udp单播来组织心跳,后面跟的IP地址应为双机对方的IP地址。
  #mcast eth0 225.0.0.1 694 1 0 #采用网卡eth0的Udp多播来组织心跳,一般在备用节点不止一台时使用。Bcast、ucast和mcast分别代表广播、单播和多播,是组织心跳的三种方式,任选其一即可。
  auto_failback on #用来定义当主节点恢复后,是否将服务自动切回,heartbeat的两台主机分别为主节点和备份节点。主节点在正常情况下占用资源并运行所有的服务,遇到故障时把资源交给备份节点并由备份节点运行服务。在该选项设为on的情况下,一旦主节点恢复运行,则自动获取资源并取代备份节点,如果该选项设置为off,那么当主节点恢复后,将变为备份节点,而原来的备份节点成为主节点。
  #stonith baytech /etc/ha.d/conf/stonith.baytech   # stonith的主要作用是使出现问题的节点从集群环境中脱离,进而释放集群资源,避免两个节点争用一个资源的情形发生。保证共享数据的安全性和完整性。
  #watchdog /dev/watchdog #该选项是可选配置,是通过Heartbeat来监控系统的运行状态。使用该特性,需要在内核中载入"softdog"内核模块,用来生成实际的设备文件,如果系统中没有这个内核模块,就需要指定此模块,重新编译内核。编译完成输入"insmod softdog"加载该模块。然后输入"grep misc /proc/devices"(应为10),输入"cat /proc/misc |grep watchdog"(应为130)。最后,生成设备文件:"mknod /dev/watchdog c 10 130" 。即可使用此功能。
  node node1    #主节点主机名,可以通过命令“uanme –n”查看。
  node node2    #备用节点主机名。
  ping 192.168.60.1 #选择ping的节点,ping 节点选择的越好,HA集群就越强壮,可以选择固定的路由器作为ping节点,但是最好不要选择集群中的成员作为ping节点,ping节点仅仅用来测试网络连接。
  respawn hacluster /usr/lib/heartbeat/ipfail #该选项是可选配置,列出与heartbeat一起启动和关闭的进程,该进程一般是和heartbeat集成的插件,这些进程遇到故障可以自动重新启动。最常用的进程是ipfail,此进程用于检测和处理网络故障,需要配合ping语句指定的ping node来检测网络的连通性。其中hacluster表示启动ipfail进程的身份。
  b)配置haresources(主从服务器配置一样)
  node1 192.168.2.234mysqld
  node1:是我们在ha.cf配置文件中的node之一。而且是当前准备作为主节点的那个node
  192.168.2.234为vip
  mysqld:为心跳管理的服务,该服务必须在/etc/init.d/目录下,也可以在heartbeat的安装目录下的etc/ha.d/resource.d/目录下的脚本,这些脚本必须支持xxxx start、xxxx stop模式;如果要添加多个服务,以空格区分。比如node1 192.168.2.234mysqld httpd,这样heartbeat同时监管了这两个服务了。写在这里的服务heartbeat应用程序都是有权利去启动和停止该项服务的。
  c)配置authkeys(主从服务器配置一样)
  auth 1
  1 crc
  # chmod 600 /usr/local/etc/ha.d/authkeys
  注意: authkeys的权限一定要是600
  最后service heartbeat start 启动heartbeat程序。就ok了。
  启动后会发现,node1的mysql会随着heartbeat的启动自动start,但是node2 的mysql数据库就算是本来start的,也会被heartbeat程序给stop掉,这个可以查看/var/log/ha-log 查看详情。heartbeat每一步都是怎么工作的。都干了些啥。都可以看到。

页: [1]
查看完整版本: heartbeat yum安装,配置