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

[经验分享] heartbeat及共享文件高可用集群

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-21 08:57:14 | 显示全部楼层 |阅读模式
准备两台虚拟机,IP地址为192.168.1.4和192.168.1.3

                把节点时间同步,分别在两台虚拟机上设置时间同步:
                crontab -e  打开后编辑,使每3分钟同步一次;指向可靠的网关;
                */3 * * * * /usr/sbin/ntpdate 192.168.1.1 &> /dev/null
                节点间需要通过主机名互相通信,必须解析主机至IP地址,通信中使用的名字与节点名字必须保持一致
                vim /etc/hosts
                192.168.1.4    hsxaou
                192.168.1.3    hsxaou1

                编辑此文件可修改主机名称:/etc/sysconfig/network

                建立各节点之间的root用户能够基于密钥认证
                ssh-keygen -t rsa -P ''
                 把生成的公钥复制到对应的节点上

                 ssh-copy-id  -i  /root/.ssh/id_rsa.pub  root@192.168.1.3   
                 查看来两台主机时间是否同步;
                 date; ssh hsxaou1 'date'
                 准备好之后在各节点开始安装程序,先解决依赖的包,libnet需要epel源;
                 yum install net-snmp-libs  libnet  PyXML

                下载heartbeat2.rpm包到本地,并复制到另外一个节点家目录;

                 scp -r heartbeat2/    hsxaou1:~/     
                在两个节点上分别安装;

                 rpm -ivh heartbeat-2.1.4-12.el6.x86_64.rpm heartbeat-pils-2.1.4-12.el6.x86_64.rpm heartbeat-stonith-2.1.4-12.el6.x86_64.rpm
                 配置文件在/etc/ha.d/目录下

         wKioL1XJVebzjWZXAACe7O0Ghow993.jpg
                 配置IP可以使用IPaddr或者IPaddr2,前者使用ifconfig命令,后者时候ip命令;  
                 v1版专用配置接口,不是V1版不使用,样例配置文件在:
                   wKiom1XJVDixo5rYAAEY9FYMcjM770.jpg
                把这3个样例文件authkeys,ha.cf,haresources复制到/etc/ha.d/目录下,并修改authkeys的权限需修改为400或600;

         cp /usr/share/doc/heartbeat-2.1.4/{ha.cf,haresources,authkeys} /etc/ha.d/

            修改权限为600
                  chmod 600 authkeys
       编辑配置文件authkeys,在此文件内指明启用的算法和要启用的秘钥;
        算法简单时自己可以生成一个,放在里面;

         openssl rand -base64 16
         wKioL1XJWRXz_3J8AAA-qUBRxlw884.jpg
                  auth #:使用第几个算法,#就填那个数字


        编辑主配置文件ha.cf,启动基本功能;
                日志功能,启用其中一个;

                wKiom1XJV-iCr8vKAABJt9mcypc948.jpg
                这里定义的是发往local0,需要在/etc/rsyslog.conf内定义,并重启服务
                wKioL1XJWaCCFB2fAAAv-mesx-s556.jpg

                service   rsyslog restart


                默认发送心跳时间,默认为2秒;
                keepalive 2
                死亡时间;
                deadtime 30
                警告时间;

                warntime 10

                heartbeat运行在多个节点上时,启动时间比较长,可以根据情况延长时间;

                initdead 120

                基于UDP传送心跳默认端口

                udpport        694

                广播,使用哪个就启用哪个

                wKiom1XJWI3xXd_4AAAgNTFAvw4535.jpg

                多播

                mcast eth0 225.22.190.1 694 1 0

                地址不能和别人相同,自己修改下,694端口,1为ttl值表示只允许传递一次;0为loop值,不允许循环

                 ip link set eth0 multicast on|off   使用多播时需要启用;


                资源转回

                auto_failback on

                指明高可用集群要使用的节点,节点名必须与uname -n的名字保持一致;

                wKioL1XJW17wqR6_AAAtBmFZETk542.jpg

                指明ping node,仲裁设备,探测辅助性设备

                wKiom1XJWY-CrkGYAAAQxQD7oYQ027.jpg

                可以指定多个主机

                wKioL1XJW6jxOnSwAAAk6_zrvPY368.jpg

                对节点之间传递的信息压缩
                compression     bz2
                指明2kb以上的才压缩

                compression_threshold 2

                vim  /haresources

                定义集群资源

                指定主节点名字,后面为资源地址,每个资源单独进行指定
                设置fip(公共IP),会自动设置在某块网卡的别名上, 从左侧第一个启动,在哪个主机上前面就使用哪个主机的名字   
hsxaou  192.168.1.10/24/eth0/192.168.255.255 httpd  
                完成后把配置文件发送到另外一个节点,保留原来的权限

                scp -p ha.cf haresources authkeys hsxaou1:/etc/ha.d/
分别在各节点上,启动heartbeat之前先要把httpd页面配置好,作为测试2个节点的页面设置不一样,作为区分并且设置为开机不自动启动;
                vim /var/www/html/index.html
        chkconfig httpd off
                启动heartbeat服务,并查看80端口是否打开;

                service heartbeat start

                ss -tunl

                wKiom1XJY1vwSwTHAAAa8hndpfM601.jpg
                wKioL1XJZXOjJapoAAAVWqKKu-E016.jpg
                使用浏览器访问fip192.168.1.10,完成了。。

                wKioL1XJZfOheX8pAACeOoUCjeg429.jpg wKiom1XJZCPic_m_AACXqVupfuE446.jpg


           基于共享文件的高可用:
                在第3台主机上设置主页:

                 vim /web/htdocs/index.html

                wKiom1XVrfPCjKi_AAAilumhoWk399.jpg
                共享文件:vim /etc/exports

                 /web/htdocs    *(rw,no_root_squash)

                启动nfs服务:service nfs start

                nfs开机自启:chkconfig nfs on

                在192.168.1.4节点上挂载文件进行测试,使用浏览器访问测试
                mount -t nfs 192.168.1.5:/web/htdocs /var/www/html/
                wKiom1XVrbOgXszrAACIqJqMGPY980.jpg
                设置成功后卸载掉;

                umount /var/www/html/
                编辑/etc/ha.d/haresoureces

       wKiom1XVsGHBJ-oOAABqnycRR54161.jpg
                /usr/lib64/heartbeat/hb_takeover    拿回资源

                /usr/lib64/heartbeat/hb_standby    资源转出

                /usr/lib64/heartbeat/ha_propagate  把本节点的上的ha.cf和athkeys文件自动发送到另外一个节点的/etc/ha.d/下,并显示可以设置为ha的有哪些




运维网声明 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.yunweiku.com/thread-101882-1-1.html 上篇帖子: 基于heartbeat v1实现Director的高可用 下篇帖子: heartbeat+ldirector+lvs实现高可用集群
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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