123sw 发表于 2019-1-7 13:15:19

Linux集群系列之十——高可用集群之heartbeat安装配置

  rhel 5.8 32bit
  heartbeat v2
  ha web
  node1 node2
  节点名称, /etc/hosts
  节点名称必须跟uname -n命令的直行结果一致
  

  ssh 互信通信,
  时间同步
  1先配置两个主机的ip 列如 192.168.1.11   192.168.1.12 VIP192.168.1.8网关
  

  192.168.1.1
  

  配置两个主机的主机名#hostname node1.mylinux.com
  #hostname node2.mylinux.com
  为了让主机名永久生效编辑 /etc/sysconfig/network
  2 配置双击互信(在1.11上配置)
  #ssh-keygen -t rsa -f~/.ssh/id_rsa -P ''
  #ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.12
  在1.12上配置一样
  #ssh-keygen -t rsa -f~/.ssh/id_rsa -P ''
  #ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.11
  

  测试 在1.11上 #ssh 192.168.1.12 'ifconfig'
  测试 在1.12上 #ssh 1192.168.1.11 'ifconfig'
  3 配置主机名称解析分别在1.11和1.12上配置
  # vim /etc/hosts
  127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
  ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
  192.168.1.11node1.mylinux.com node1
  192.168.1.12node2.mylinux.com node2
  可以通过ping node2 和node1来测试解析是否正常
  #scp /etc/hosts node2:/etc
  

  iptables -L -n 确保没有相关的限定或者打开UDP的694端口
  

  4 时间同步(1.12上运行ntp服务)
  ntpdata192.168.1.13
  或者直接手动同步 ntpdate 192.168.1.13
  # which ntpdate
  /usr/sbin/ntpdate
  crontab -e每隔五分钟同步一次
  */5 * * * *   /sbin/ntpdate 192.168.1.13 &> /dev/null
  scp /var/spool/cron/root node2:/var/spool/cron/
  

  kz
  

  http://www.linux-ha.org/wiki/Heartbeat
  http://clusterlabs.org/
  

  epel:
  https://fedoraproject.org/wiki/Special:RecentChanges
  

  heartbeat-2.1.4-11.el5.i386.rpm   核心包
  heartbeat-devel-2.1.4-11.el5.i386.rpm开发包
  heartbeat-gui-2.1.4-11.el5.i386.rpm图形界面用于管理hearbeat集群
  heartbeat-ldirectord-2.1.4-11.el5.i386.rpm为ipvs高可用提供规则自动生成,即后
  

  端realserver健康状态检查的组件
  heartbeat-pils-2.1.4-11.el5.i386.rpm 装载库的插件
  heartbeat-stonith-2.1.4-11.el5.i386.rpm用于修改报头的接口
  
  安装之前必须先安装这2个包
  libnet-1.1.6-7.el5.i386
  perl-MailTools-1.77-1.el5.noarch
  

  #yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch
  #yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386
  #yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm
  #scp perl-MailTools-1.77-1.el5.noarch libnet-1.1.6-7.el5.i386 heartbeat-2.1.4
  

  -11.el5.i386.rpm heartbeat-gui-2.1.4-11.el5.i386.rpm heartbeat-pils-2.1.4-
  

  11.el5.i386.rpm heartbeat-stonith-2.1.4-11.el5.i386.rpm node2:/root/
  

  
  #yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch
  #yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386
  #yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm
  #yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm
  

  /etc/ha.d/resource.d/IPaddr专门用于实现将VIP配置到某个活动节点上,并且监控IP是
  

  否生效
  

  #cd /etc/ha.d
  

  三个配置文件
  1.密钥文件,600权限,authkeys
  2.heratbeat服务的配置文件 ha.cf
  3.资源管理配置文件
  haresources
  #ls /usr/share/doc/heartbeat-2.1.4
  #cp -p /usr/share/doc/heartbeat-2.1.4/{authkeys,ha.cf,haresources} ./
  #dd if=/dev/random count=1 bs=612 |md5sum 生成随机数
  

  定义主配置文件
  #vim authkeys
  auth 1
  1 md5 【随机数】
  #vim ha.cf
  #debugfile /var/log/ha-debug 调试日志
  logfile /var/log/heartbeat.log 日志文件
  #logfacilitylocal0 日志的设施
  keepalive 2    两秒发一次心跳信息
  deadtime 30 死亡时间,探测多少时间后确定为死亡
  warntime 10 警告时长
  initdead 120 第一个节点启动以后等待第二个节点启动,的等待时间(至少要2个节点
  

  才能组成集群)
  udpport 694 心跳信息传递端口
  baud 19200 串行线发送速率是多少
  bcast eth0 定义广播
  #mcast 组播
  #ucast 单播
  node 指定当前集群有几个节点,每个节点用一个node去指定
  nodenode1.mylinux.com
  nodenode2.mylinux.com
  ping 192.168.1.1通过网关来检测自己是否正常
  #respawn hacluster 服务荡掉多久重启服务
  #compression bz2 是否压缩日志
  #compression_threshold 2    大于2k压缩
  

  

  

  定义资源 /etc/ha.d/resource.d/Filesystem 资源代理
  

  
  yum install httpd
  echo "node1.mylinux.com" >> /var/www/html/index.html
  service httpd start
  测试
  service httpd stop
  chkconfig httpd off
  
  yum -y install httpd
  echo "node2.mylinux.com" >> /var/www/html/index.html
  service httpd start
  测试
  service httpd stop
  chkconfig httpd off
  

  
  #cd /etc/ha.d
  #vim haresources
  node1.mylinux.com   IPaddr::192.168.1.8/24/eth0 httpd
  #scp -pauthkeys haresources ha.cf node2:/etc/ha.d/
  #service heratbeat start
  #ssh node2 'service heartbeat start'
  

  cd /usr/lib/heartbeat
  ./hb_standby 把自己转换成备节点进行测试
  
  ifconfig
  netstat -tnlp 此时检查80端口是否启用
  

  
  ifconfig lo:0 down
  ifconfig eth0 192.168.1.14/24
  echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
  echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_announce
  echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
  echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
  #mkdir /web/htdocs -pv 建立一个文件夹 并且共享出去
  vim /etc/exports
  /web/htdocs192.168.1.0/255.255.255.0(ro)
  vim /web/htdocs/index.html
  nfs server
  #service nfs start
  service portmap restart
  

  
  #ssh node2 '/etc/init.d/heratbeat stop'
  #service hearbeat stop
  #setenforce 0
  #mount 192.168.1.14:/web/htdocs/mnt
  #ls /mnt
  #umount /mnt
  #vim /etc/ha.d/haresources
  node1.mylinux.com IPaddr::192.168.1.8/24/eth0
  

  Filesystem::192.168.1.14:/web/htdocs::/var/www/html::nfs httpd
  

  #scp haresources node2:/etc/ha.d/
  #sercice heartbeat start
  #ssh node2 'service heartbeat start'
  #/usr/lib/heartbeat/hb_standby让主节点成为备节点进行测试
  

  

  




页: [1]
查看完整版本: Linux集群系列之十——高可用集群之heartbeat安装配置