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

[经验分享] 在redhat5.4上配置lvs+heartbeat+ldirectord 集群

[复制链接]

尚未签到

发表于 2018-5-13 12:35:18 | 显示全部楼层 |阅读模式
lvs+heartbeat+ldirectord
在现在大规模网站中应用的集群技术中,能够提供负衡均载,高可用性的web服务,当然还有其他的方案同样也能提供负衡均载,高可用性,这里来实现一下lvs+heartbeat+ldirectord
在所需要的软件包
heartbeat-2.1.4-9.el5.i386.rpm         
heartbeat-pils-2.1.4-10.el5.i386.rpm
heartbeat-devel-2.1.4-9.el5.i386.rpm      
heartbeat-stonith-2.1.4-10.el5.i386.rpm
heartbeat-gui-2.1.4-9.el5.i386.rpm         
libnet-1.1.4-3.el5.i386.rpm
heartbeat-gui-2.1.4-9.el5.x86_64.rpm      
perl-MailTools-1.77-1.el5.noarch.rpm
heartbeat-ldirectord-2.1.4-9.el5.i386.rpm
网络和系统环境的需求:
网络规划:
192.168.10.0
192.168.20.0 该网段是作为heartbeat的心跳网段
   需要五台主机
       两台主机充当heartbeat 服务器,且为其分配的Ip地址为
        主节点:   192.168.10.1
             心跳地址:  192.168.20.1
        辅助接点:  192.168.10.2
                心跳地址: 192.168.20.2
        浮动的ip地址:
                     192.168.10.10
.首先配置真实服务器
1,因为此次实现的是web集群
首先在真实服务器上安装apache 并测试其能够运行
  #yuminstall  httpd
  #service  httpd start
  #并用客户机访问该web服务,如果能够正常运行,
2 在真实服务器上隐藏arp解析,并设置其能够宣布自己的IP地址
#echo  1>/proc/sys/net/ipv4/conf/lo/arp_ignore
#echo  2>/proc/sys/net/ipv4/conf/lo/arp_announce
#echo  1> /proc/sys/net/ipv4/conf/all/arp_ignore
#echo  2> /proc/sys/net/ipv4/conf/all/arp_announce
3配置浮动ip
#ifconfig lo:0 192.168.10.10 broadcast 192.168.10.10 netmask 255.255.255.255 up
# ifconfig
并确认配置的浮动IP,能够正常,当然该中方法配置的IP地址在重启网卡的时候,该地址就会消失
当然,您可以在/etc/sysconfig/network-scripts/下面创建ifcfg-lo:0 文件,并把其中的IP地址修改为浮动的ip地址
4添加路由
   #route add -host 192.168.10.10 dev lo:0
5 同样在其他真实服务器上面配置
.配置配置双机热备heartbeat
1 同样在主节点和辅助节点上同样需要安装apache服务
   #yum install  httpd
   #并在web的根目录下面创建index.html文件,文件中的内容为当真实服务器不能正常运行的时候,主辅节点,提供一些说明性信息,同样也要测试其apache能够正常运行
#service httpd start
同样用客户端进行测试,测试完成后,并关闭其服务
#service httpd stop
#chkconfig httpd  off
2 安装ipvsadm 软件包
   #yum install ipvsadm
3 配置ipvsadm
  #ipvsadm -A –t  192.168.10.10:80 –s wlc
  #ipvsadm -a –t 192.168.10.10:80 –r 192.168.10.3 -w 1 –g
  #ipvsadm -a  -t 192.168.10.10:80 –r 192.168.10.4–w 2 –g
4 安装并配置heartbeat
   #yum –nogpgcheck localinstall  *.rpm
   : 在安装前先把光盘挂载,因为在安装heartbeat的时候,依赖一些软件包
5 /usr/share/doc/heartbeat-2.14/ authkeysha.cf haresource 到目录/etc/ha.d/
   #cp /usr/share/doc/heartbeat-2.14/{authkeys,ha.cf,haresource}
     /etc/ha.d/
6. 修改文件authkeys
   #echo –ne auth 1 \nl shal >>/etc/ha.d/authkeys
   #dd if=/dev/urandom bs=512 count=1 | opensslmd5 >> /etc/ha.d/authkeys
   #vim /etc/ha.d/authkeys (查看密钥是否追加到该文件中,并把密钥要和1 shal 同行)
  并把authkeys文件的权限该为0600
#chmod 0600 authkeys
7 修改heartbeat的主配置文件
   #vim /etc/ha.d/ha.cf
   确保以下几行开启
   debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility  local0
keepalive 2
deadtime 30
warntime 10
initdead 120
udpport 694
bcast  eth1
auto_failback
node node1.example.com
node node2.example.com
respawn hacluster /usr/lib/heartbeat/ipfail
8 目录下面/usr/share/doc/heartbeat-ldirectord-2.1.4 中拷贝文件 ldirectord.cf 到目录/etc/ha.d/,并修改其名为heartbeat-ldirectord-lvs-httpd.cf,并修改
  确保下面行,去掉注释
  checktimeout =3
  checkinterval=1
  fallback=127.0.0.180
autoreload=yes
quiescent=yes
virtual=192.168.10.1080
   real=192.168.10.380  gate 1
            注:gate后面跟的是权重
    real=192.168.10.480 gate 2
   fallback=127.0.0.180 gate
        注:fallback 如果真是服务器的服务不能正常运行,则会把客户的请求转发到本节点的服务上
    service = http
    request=.ldirectord.html
       注:该项是节点进行探测真是服务apache的根目录下面的文件,从而确认该真是服务器能够正常运行
  receive=GOOD
    注:该信息是返回给主节点的确认信息,当返回的的信息为上面的内容时,则服务运行正常,否则服务是down
   protocol=tcp
  checktype=negotiate
  checkport=80
修改完后并保存
  注: 该部和第三不中配置ipvsadm 是重复的,当然第三步中的配置可以省略
   
  #cp /usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf  /etc/ha.d/ldirectord-lvs-httpd.cf
9  修改文件haresource
  #vim /etc/ha.d/harecource
  在其末尾添加
  node1.example.com  192.168.10.10  ldirectord-lvs-httpd.cf   注: node1.example.com为主节点的主机名
      192.168.10.10 为浮动地址
10 在辅助节点上做和主节点上一样的配置
11 分别在真是服务器上的apache的根目录下面创建文件
   .ldirectord.html
且内容中必须包含
     GOOD
12分别启动真是服务器上的apache服务
   #service httpd  start
   #chkconfig httpd  on
13 先启动主节点的heartbeat 服务
   #service heartbeat  start
   #chkconfig heartbeat  on
  并用ifconfig查看eth00 是否出现,该ip地址为
   192.168.10.10,即使浮动地址
   当出现浮动地址的时,并启动辅助节点
   #service heartbeat start
   #chkconfig heartbeat on
14 在主节点上
  #ipvsadm -L –n
查看lvs的配置,并用客户机进行测试
15  注:不知在配置heartbeat+lvs+ldirectord中,真是服务器上的服务是否还需要手动启动,有人说在启动heartbeat的时,就已经把真是服务器上的服务器启动开了,但是我在配置的哦时候,是手动启动开真是服务器上的服务:如apache
希望大家指出我的配置不对的地方

运维网声明 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-459510-1-1.html 上篇帖子: redhat 添加httpd服务的方法2010 下篇帖子: redhat linux操作系统不破坏除根分区以外分区的数据的安装方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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