码迷,mamicode.com
首页 > 其他好文 > 详细

heartbeat及共享文件高可用集群

时间:2015-08-21 00:29:19      阅读:345      评论:0      收藏:0      [点我收藏+]

标签:heartbeat高可用及基于共享文件高可用

准备两台虚拟机,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/目录下

        技术分享

                 配置IP可以使用IPaddr或者IPaddr2,前者使用ifconfig命令,后者时候ip命令;  

                 v1版专用配置接口,不是V1版不使用,样例配置文件在:

                  技术分享

                把这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 

        技术分享

                  auth #:使用第几个算法,#就填那个数字


        编辑主配置文件ha.cf,启动基本功能;

                日志功能,启用其中一个;

                技术分享

                这里定义的是发往local0,需要在/etc/rsyslog.conf内定义,并重启服务

                技术分享

                service   rsyslog restart


                默认发送心跳时间,默认为2秒;

                keepalive 2

                死亡时间;

                deadtime 30

                警告时间;

                warntime 10

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

                initdead 120

                基于UDP传送心跳默认端口

                udpport        694

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

                技术分享

                多播

                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的名字保持一致;

                技术分享

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

                技术分享

                可以指定多个主机

                技术分享

                对节点之间传递的信息压缩

                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

                技术分享

                技术分享

                使用浏览器访问fip192.168.1.10,完成了。。

                技术分享技术分享



           基于共享文件的高可用

                在第3台主机上设置主页:

                 vim /web/htdocs/index.html

                技术分享

                共享文件: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/

                技术分享

                设置成功后卸载掉;

                umount /var/www/html/

                编辑/etc/ha.d/haresoureces

      技术分享

                /usr/lib64/heartbeat/hb_takeover    拿回资源

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

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


          

                


heartbeat及共享文件高可用集群

标签:heartbeat高可用及基于共享文件高可用

原文地址:http://10086101.blog.51cto.com/10076101/1686628

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!