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

[经验分享] heartbeat+ldirector 构建高可用LVS

[复制链接]

尚未签到

发表于 2019-1-5 12:32:00 | 显示全部楼层 |阅读模式
  heartbeat+ldirector 构建高可用LVS-DR集群
  上篇文章实现了,脚本自动化管理LVS-DR集群,现在我们通过heartbeat的一个插件ldriector来实现项目功能。(上篇文章链接:)
  项目实践:配置LVS Director(WEB LVS)的HA集群,要求:
  1、DR模型;
  2、能监控后台RealServer的健康状态;

  相关网卡配置见上篇文章,这里只说明ldrictor的使用。
  1安装
  需要准备的软件包(已经安装过heartbeat v2):
  perl-MaliTools heartbeat-ldirectored
  将其放在一个文件夹
  yum --nogpgcheck localinstall *.rpm
  2.复制ld的配置文件到/etc/ha.d
  [root@node1 /]# cd /usr/share/doc/heartbeat-ldirectord-2.1.4/
  [root@node1 heartbeat-ldirectord-2.1.4]# ls
  COPYING ldirectord.cf README
  [root@node1 heartbeat-ldirectord-2.1.4]# cp ldirectord.cf /etc/ha.d/
  [root@node1 heartbeat-ldirectord-2.1.4]# cd /etc/ha.d/
  [root@node1 ha.d]# ls
  authkeys harc ldirectord.cf README.config shellfuncs
  ha.cf haresources rc.d resource.d
  只需要把LVS需要定义的集群定义到/etc/ha.d/ldirector.cf,不需要ipvsadm来实现
  3.修改 ldirector
  vim ldirector.cf


  • # 修改配置文件,只启用如下内容  

  • checktimeout=10

  • # ldirectord等待Realserver健康检查完成的时间,单位为秒;  

  • # 任何原因的检查错误或超过此时间限制,ldirector将会将此Realserver从IPVS表中移除;  

  • checkinterval=2

  • autoreload=yes  

  • # 此项用来定义ldirectord是否定期每隔一段时间检查此配置文件是否发生改变并自动重新加载此文件;  

  • logfile="/var/log/ldirectord.log"

  • # 定义日志文件存放位置;  

  • quiescent=yes  

  • # 当某台Realserver出现异常,此项可将其设置为静默状态(即其权重为“0”)从而不再响应客户端的访问请求;  

  • virtual=172.16.14.1:80

  • # 此项用来定义LVS服务及其使用的VIP和PORT  

  • real=172.16.14.21:80 gate 1

  • real=172.16.14.22:80 gate 2

  • real=172.16.14.23:80 gate 3

  • fallback=127.0.0.1:80 gate  

  • # 当IPVS表没有任何可用的Realserver时,此“地址:端口”作为最后响应的服务;  

  • # 一般指向127.0.0.1,并可以通过一个包含错误信息的页面通知用户服务发生了异常;  

  • service=http  

  • # 定义基于什么服务来测试Realserver;  

  • request="index.html"

  • receive="Test Page"

  • scheduler=wlc  

  • protocol=tcp  

  • # 定义此虚拟服务用到的协议;  

  • checktype=negotiate  

  • # ldirectord进程用于监控Realserver的方法;{negotiate|connect|A number|off}  

  • checkport=80

  在haresource里添加如下行,以启用ldriector
  vim haresorce
  node1.a.org 172.16.14.1/32/eth0/172.16.14.1 ldirectord::ldirectord.cf
  拷贝这两个文件到node2上
  scp haresources ldirectord.cf node2:/etc/ha.d
  启用服务
  /etc/init.d/heartbeat start
  ssh node2 -- '/etc/init.d/heartbeat start'
  至此,ldirector配置完成,我只做相关测试而没有配置后台的三个RSS,来看一下效果

  由于后台三个RSS就没有开启(相当于当机),ldirictor默认将他们的权重都设为0既不生效,而把本地的80开启,这个外界访问时,将看到一个提示界面(可以自己定义一些内容,比如网站维护中等)




运维网声明 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-659657-1-1.html 上篇帖子: 基于heartbeat v1+ldirectord实现LVS的高可用 下篇帖子: heartbeat+ldirectord+lvs实现高可用负载
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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