构建高可用LVS+keepalived+httpd和双主模型的keepalived方案
keepalived简介
keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,通过ping来监测对方的状态。 拓扑图:
----------------------------------------------------------------------------------------- 实验环境: centos-6.4 所需的安装包:
主的和备的Director上都安装上keepalived
后端的两个realserver上都安装上htppd服务 ----------------------------------------------------------------------------------------- 1.先同步各点上的时间 [root@yulong]# ntpdate 172.16.0.1 2.在主的和从的上面安装keepalived [root@yulong ~]# yum install keepalived -y 3.编辑keepalived配置文件 [root@yulongkeepalived]# vim keepalived.conf 修改一下参数为自己所用的 global_defs { notification_email { root@localhost收件人 } notification_email_fromkeep@localhost发件人 smtp_server 127.0.0.1 邮件服务器 smtp_connect_timeout 10 链接超时时间 router_id LVS_DEVEL 添加如下字段设置可以手动切换故障转移: vrrp_scriptchk_maintainace { script \ interval 1 weight -2 } 这段脚本的意思就是如果在这个目录下存在down的这个一个文件就把vip给转移到BAKPUP节点.这个文件可以手动创建来实现调试. 以下用文字注释的都是需要修改的地方 vrrp_instance VI_1 { state MASTER 设置主节点 interface eth0 网卡类型 virtual_router_id 51 虚拟路由ID priority 100 设置权重,权重必须大于BACKUP的权重 advert_int 1 authentication { auth_type PASS 加密方法 auth_pass 1111 密码 } virtual_ipaddress { 172.16.8.100 设置访问的虚拟IP } track_script { chk_maintainace这个是定义刚才添加的那段代码生效 } } 4.配置完毕以上内容后复制到从节点上一份 [root@yulongkeepalived]# scpkeepalived.confyu:/etc/keepalived/ 5.然后在从节点上需要修改下如下两项 [root@www ~]# vim /etc/keepalived/keepalived.conf state BACKUP 设置为备用节点 priority 99 权重设置为比主节点的小 6.然后主备都启动keepalived服务 [root@yulongkeepalived]# servicekeepalived restart Stopping keepalived: [ OK ] Starting keepalived: [ OK ] 7.然后查看master上的状态 [root@yulongkeepalived]# ipaddr show 2: eth0: