设为首页 收藏本站
查看: 1084|回复: 0

[经验分享] LVS-HA

[复制链接]

尚未签到

发表于 2015-9-5 09:03:57 | 显示全部楼层 |阅读模式
  heartbeat 监听在udp的694的端口
  
  LRM:本地资源管理器
  CRM:资源管理器
  RA:资源代理(脚本)
  heartbeat  legacy  :    heartbeat  传统类型的资源代理,通常位于/etc/ha.d/haresources.d/目录下;
  
  LSB:/etc/rc.d/init.d/*{start|stop|status|restart}    目录下的脚本;
  
  
  
  具体实现:
  [iyunv@stu21 ~]# lftp 172.16.0.1  
  lftp 172.16.0.1:~> cd  pub/Sources/6.x86_64
  lftp 172.16.0.1:/pub/Sources/6.x86_64> mirror  heartbeat2/
  Total: 1 directory, 7 files, 0 symlinks     
  New: 7 files, 0 symlinks
  5829264 bytes transferred
  lftp 172.16.0.1:/pub/Sources/6.x86_64>
  
  lftp 172.16.0.1:/pub/Sources/6.x86_64> bye
  [iyunv@stu21 ~]# ls
  anaconda-ks.cfg  heartbeat2  install.log         lamp_source  nginx-1.4.7.tar.gz  nginx-1.6.2.tar.gz
  dir.sh           ifcfg-eth6  install.log.syslog  nginx        nginx-1.6.2
  [iyunv@stu21 ~]# cd  heartbeat2/
  [iyunv@stu21 heartbeat2]#
  [iyunv@stu21 heartbeat2]# ls
  heartbeat-2.1.4-12.el6.x86_64.rpm            heartbeat-ldirectord-2.1.4-12.el6.x86_64.rpm
  heartbeat-debuginfo-2.1.4-12.el6.x86_64.rpm  heartbeat-pils-2.1.4-12.el6.x86_64.rpm
  heartbeat-devel-2.1.4-12.el6.x86_64.rpm      heartbeat-stonith-2.1.4-12.el6.x86_64.rpm
  heartbeat-gui-2.1.4-12.el6.x86_64.rpm
  
  安装方法:
  1、# yum install  net-snmp-libs  libnet  PyXML  perl-Time-Date
  2、# rpm -ivh heartbeat-2.1.4-12.el6.x86_64.rpm heartbeat-stonith-2.1.4-12.el6.x86_64.rpm heartbeat-pils-2.1.4-12.el6.x86_64.rpm
  
  
  同步时间  
  (两个节点)
  节点一(172.16.21.6)
  [iyunv@stu21 heartbeat2]# ntpdate 172.16.0.1
  31 Dec 20:59:25 ntpdate[6950]: adjust time server 172.16.0.1 offset 0.379319 sec
  [iyunv@stu21 heartbeat2]#
  
  最好几分钟同步一下
  [iyunv@stu21 heartbeat2]# crontab -e
  no crontab for root - using an empty one
  
  */3 * * * * /usr/sbin/ntpdate  172.16.0.1  &> /dev/null
  
  ~                                                                                                     
  ~                                                                  
  
  
  节点二:(172.16.21.10)
  
  [iyunv@stu21 heartbeat2]# ntpdate 172.16.0.1
  31 Dec 21:00:50 ntpdate[4737]: adjust time server 172.16.0.1 offset 0.380532 sec
  [iyunv@stu21 heartbeat2]#
  最好每个几分钟同步一下
  
  [iyunv@stu21 heartbeat2]# crontab -e
  no crontab for root - using an empty one
  
  */3 * * * * /usr/sbin/ntpdate  172.16.0.1  &> /dev/null
  
  ~                                                                                                     
  ~                                                                  
  在节点一上生成密钥,使得两节点间检测心跳信息无须密码
  [iyunv@stu21 .ssh]# ssh-keygen -P ''
  Generating public/private rsa key pair.
  Enter file in which to save the key (/root/.ssh/id_rsa):
  Your identification has been saved in /root/.ssh/id_rsa.
  Your public key has been saved in /root/.ssh/id_rsa.pub.
  The key fingerprint is:
  75:cc:d5:7e:f8:ae:d6:c7:7b:36:45:f6:22:a8:06:dc root@node1.stu21.com
  The key's randomart image is:
  +--[ RSA 2048]----+
  |              .. |
  |           o .  .|
  |          . +  o |
  |         . .  . =|
  |     . .S  .   +o|
  |      o E . . . +|
  |       . .   . =.|
  |        o     ..B|
  |       .     ..+=|
  +-----------------+
  [iyunv@stu21 .ssh]#
  在 节点1 的  /etc/hosts 下增加 " uname  -n  " 所显示两个节点的内容
  172.16.21.6     node1.stu21.com   node1(别名)
  172.16.21.10    node2.stu21.com   node2(别名)
  
  [iyunv@stu21 ~]# ssh-copy-id  -i .ssh/id_rsa.pub  root@node2
  
  The authenticity of host 'node2 (172.16.21.10)' can't be established.
  RSA key fingerprint is 6a:5a:71:de:61:ca:29:01:c2:7d:8d:6f:06:27:2b:b2.
  Are you sure you want to continue connecting (yes/no)? yes
  Warning: Permanently added 'node2' (RSA) to the list of known hosts.
  root@node2's password:
  Now try logging into the machine, with "ssh 'root@node2'", and check in:
  
  .ssh/authorized_keys
  
  to make sure we haven't added extra keys that you weren't expecting.
  
  [iyunv@stu21 ~]# cd .ssh/
  [iyunv@stu21 .ssh]# ls
  authorized_keys  id_rsa  id_rsa.pub  known_hosts
  
  [iyunv@stu21 .ssh]# ssh node2 'date';date
  Wed Dec 31 21:38:29 CST 2014
  Wed Dec 31 21:38:29 CST 2014
  [iyunv@stu21 .ssh]#
  
  
  [iyunv@stu21 ~]# scp  /etc/hosts  node2:/etc/hosts
  hosts                                                              100%  358     0.4KB/s   00:00   
  [iyunv@stu21 ~]#
  
  
  在节点2 的终端上生成密钥一份给 节点2的机子上
  
  [iyunv@stu21 ~]# ssh-keygen -t rsa -P ''
  Generating public/private rsa key pair.
  Enter file in which to save the key (/root/.ssh/id_rsa):
  Your identification has been saved in /root/.ssh/id_rsa.
  Your public key has been saved in /root/.ssh/id_rsa.pub.
  The key fingerprint is:
  fe:fe:67:a7:c2:da:23:a9:91:28:05:4b:06:ea:87:84 root@node2.stu21.com
  The key's randomart image is:
  +--[ RSA 2048]----+
  |  .              |
  |.. .             |
  |E.  +            |
  |o .o o           |
  | o .. . S        |
  |  .  . o .       |
  |    . . +  o     |
  |     .   oo.+ o .|
  |        .o++o=.o |
  +-----------------+
  [iyunv@stu21 ~]#
  
  
  [iyunv@stu21 ~]# ssh-copy-id  -i .ssh/id_rsa.pub  root@node1
  
  The authenticity of host 'node1 (172.16.21.6)' can't be established.
  RSA key fingerprint is 6a:5a:71:de:61:ca:29:01:c2:7d:8d:6f:06:27:2b:b2.
  Are you sure you want to continue connecting (yes/no)? yes
  Warning: Permanently added 'node1,172.16.21.6' (RSA) to the list of known hosts.
  root@node1's password:
  Permission denied, please try again.
  root@node1's password:
  Now try logging into the machine, with "ssh 'root@node1'", and check in:
  
  .ssh/authorized_keys
  
  to make sure we haven't added extra keys that you weren't expecting.
  
  验证下是否能检测对方时间
  [iyunv@stu21 ~]# ssh node1 'date' ; date
  Wed Dec 31 21:50:55 CST 2014
  Wed Dec 31 21:50:55 CST 2014
  [iyunv@stu21 ~]#
  
  前期准备已将完成,接下来就是配置la
  分别在两个节点机子上检查
  [iyunv@stu21 ~]# rpm -ql heartbeat
  
  
  
  
  [iyunv@stu21 ~]# cd /usr/share/doc/heartbeat-2.1.4/
  [iyunv@stu21 heartbeat-2.1.4]# ls
  apphbd.cf  COPYING.LGPL         GettingStarted.txt  hb_report.html      README             startstop
  authkeys   DirectoryMap.txt     ha.cf               hb_report.txt       Requirements.html
  AUTHORS    faqntips.html        HardwareGuide.html  heartbeat_api.html  Requirements.txt
  ChangeLog  faqntips.txt         HardwareGuide.txt   heartbeat_api.txt   rsync.html
  COPYING    GettingStarted.html  haresources         logd.cf             rsync.txt
  [iyunv@stu21 heartbeat-2.1.4]# cp -p authkeys  haresources  ha.cf  /etc/ha.d/
  [iyunv@stu21 heartbeat-2.1.4]#
  
  [iyunv@stu21 heartbeat-2.1.4]# cd /etc/ha.d/
  [iyunv@stu21 ha.d]#
  [iyunv@stu21 ha.d]# ll
  total 48
  -rw-r--r-- 1 root root   645 Sep 10  2013 authkeys
  -rw-r--r-- 1 root root 10539 Sep 10  2013 ha.cf
  -rwxr-xr-x 1 root root   745 Sep 10  2013 harc
  -rw-r--r-- 1 root root  5905 Sep 10  2013 haresources
  drwxr-xr-x 2 root root  4096 Dec 31 20:43 rc.d
  -rw-r--r-- 1 root root   692 Sep 10  2013 README.config
  drwxr-xr-x 2 root root  4096 Dec 31 20:43 resource.d
  -rw-r--r-- 1 root root  7864 Sep 10  2013 shellfuncs
  [iyunv@stu21 ha.d]#
  
  改下加深颜色的文件权限必须为 600或是400
  [iyunv@stu21 ha.d]# chmod 600 authkeys
  [iyunv@stu21 ha.d]# ll
  total 48
  -rw------- 1 root root   645 Sep 10  2013 authkeys
  -rw-r--r-- 1 root root 10539 Sep 10  2013 ha.cf
  -rwxr-xr-x 1 root root   745 Sep 10  2013 harc
  -rw-r--r-- 1 root root  5905 Sep 10  2013 haresources
  drwxr-xr-x 2 root root  4096 Dec 31 20:43 rc.d
  -rw-r--r-- 1 root root   692 Sep 10  2013 README.config
  drwxr-xr-x 2 root root  4096 Dec 31 20:43 resource.d
  -rw-r--r-- 1 root root  7864 Sep 10  2013 shellfuncs
  [iyunv@stu21 ha.d]#
  
      配置文件:
              ha.cf: heartbeat的主配置文件;
              authkeys:集群信息加密算法及密钥;
              haresources: heartbeat v1的CRM配置接口;
  ---------------------------------------------------------------------------------------------------------------------------------
  
  [iyunv@stu21 ha.d]# vim ha.cf    
  logfile /var/log/ha-log(开启)
  #
  #
  #       Facility to use for syslog()/logger
  #
  #logfacility    local0(关闭)//如果要开启,则需要在  /etc/rsyslog.conf   增加一条 local0.*       /var/log/heartbeat.log
  .
  .
  mcast eth0 227.203.101.1 694 1 0(开启多播地址,集群,得在默认下修改)
  
  #node   ken3
  #node   kathy
  node    node1.stu21.com (节点1    uname -n)
  node    node2.stu21.com(节点2   )
  
  
  #ping 10.10.10.254
  ping 172.16.0.1
  
  
  compression     bz2
  #
  #       Confiugre compression threshold
  #       This value determines the threshold to compress a message,
  #       e.g. if the threshold is 1, then any message with size greater than 1 KB
  #       will be compressed, the default is 2 (KB)
  compression_threshold 2
  
  ---------------------------------------------------------------------------------------------------------------------------------
  [iyunv@node1 ~]# openssl rand -hex 6
  89b3938df5e8
  [iyunv@node1 ~]#
  [iyunv@stu21 ha.d]# ls
  authkeys  ha.cf  harc  haresources  rc.d  README.config  resource.d  shellfuncs
  [iyunv@stu21 ha.d]# vim authkeys
  
  #auth 1
  #1 crc
  #2 sha1 HI!
  #3 md5 Hello!
  auth 2
  2  sha1  89b3938df5e8
  
  [iyunv@stu21 ha.d]# vim haresources
  #node1  10.0.0.170 Filesystem::/dev/sda1::/data1::ext2
  #
  # Regarding the node-names in this file:
  #
  # They must match the names of the nodes listed in ha.cf, which in turn
  # must match the `uname -n` of some node in the cluster.  So they aren't
  #virtual in any sense of the word.
  node1.stu21.com  172.16.21.35/16/eth0/172.16.255.255  httpd(只加这一句)
  
  
  接下来同样复制一份给节点 node2
  
  [iyunv@stu21 ha.d]# scp -p authkeys  haresources  ha.cf  node2:/etc/ha.d/
  authkeys                                                           100%  672     0.7KB/s   00:00   
  haresources                                                        100% 5968     5.8KB/s   00:00   
  ha.cf                                                              100%   10KB  10.4KB/s   00:00   
  [iyunv@stu21 ha.d]#
  
  
  下面来测试两节点的web服务器是否正常
  测试节点1(172.16.21.6)
  [iyunv@stu21 ha.d]# service nginx start
  Starting nginx:                                            [  OK  ]
  [iyunv@stu21 ha.d]# curl 172.16.21.6
  <h1>www.stu21.com   /nginx  </h1>
  [iyunv@stu21 ha.d]# service nginx stop
  Stopping nginx:                                            [  OK  ]
  [iyunv@stu21 ha.d]# chkconfig  nginx off
  [iyunv@stu21 ha.d]# chkconfig  --list  nginx  
  nginx              0:off    1:off    2:off    3:off    4:off    5:off    6:off
  [iyunv@stu21 ha.d]#
  
  测试节点2(172.16.21.10)
  [iyunv@stu21 ~]#
  [iyunv@stu21 ~]# curl 172.16.21.10
  <h1>node2.stu21.com   /nginx  </h1>
  [iyunv@stu21 ~]# service nginx stop
  Stopping nginx:                                            [  OK  ]
  [iyunv@stu21 ~]# chkconfig  nginx off
  [iyunv@stu21 ~]# chkconfig --list  nginx
  nginx              0:off    1:off    2:off    3:off    4:off    5:off    6:off
  [iyunv@stu21 ~]#
  
  
  
  [iyunv@stu21 ~]# service heartbeat start;ssh node2 'service heartbeat start'
  
  
  
  
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-109581-1-1.html 上篇帖子: Rhel6-heartbeat+lvs配置文档 下篇帖子: Mysql+keeplived+lvs
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表