keepalived高可用部署_单实例——rpm版

下载 keepalived——rpm包地址:

http://www.rpm-find.net/linux/RPM/ftp.scientificlinux.org/linux/scientific/6.4/x86_64/os/Packages/keepalived-1.2.7-3.el6.x86_64.html

配好yum仓库解决

yum -y install keepalived-1.2.7-3.el6.x86_64.rpm 
#安装keepalived包
[root@zys data]# rpm -aq keepalived
keepalived-1.2.7-3.el6.x86_64


[root@zys data]# /etc/init.d/keepalived start
正在启动 keepalived:                                      [确定]


[root@zys data]# ps -el | grep keep
1 S root       4153      1  0  80   0 - 27526 poll_s 23:38 ?        00:00:00 /usr/sbin/keepalived -D
1 S root       4155   4153  0  80   0 - 28052 poll_s 23:38 ?        00:00:00 /usr/sbin/keepalived -D
5 S root       4156   4153  0  80   0 - 28052 poll_s 23:38 ?        00:00:00 /usr/sbin/keepalived -D
启动后有3个keepalived进程表示安装正确


[root@zys data]# ip add | grep 192.168
    inet 192.168.227.11/24 brd 192.168.227.255 scope global eth0
    inet 192.168.200.16/32 scope global eth0
    inet 192.168.200.17/32 scope global eth0
    inet 192.168.200.18/32 scope global eth0
默认有三个vip地址
主配置文件
vim /etc/keepalived/keepalived.conf
修改主配置文件
   1 ! Configuration File for keepalived
  2 
  3 global_defs {
  4    notification_email {
  5      acassen@firewall.loc
  6      failover@firewall.loc
  7      sysadmin@firewall.loc
  8    }
  9    notification_email_from Alexandre.Cassen@firewall.loc
 10    smtp_server 192.168.200.1
 11    smtp_connect_timeout 30 #11行以前是keepalive的邮件报警设置,默认即可
 12    router_id ningx01 #唯一标识符,主节点与备节点的router_id不能相同
 13 }
 14 
 15 vrrp_script chk_nginx { #定义vrrp脚本,名称chk_nginx
 16 script "/data/chk_nginx.py" #脚本的路径,脚本内容见后方
 17 
 18 interval 2 #间隔2秒
 19 weight 2 #权重2次
 20 }
 21 
 22 vrrp_instance VI_1 { #vrrp实例,实例名为VI_1,主备节点的名称应该相同
 23     state MASTER #身份master
 24     interface eth0 #通信接口eth0
 25     virtual_router_id 55 #虚拟路由ID,在配置文件中应该唯一
 26     priority 150 #优先级,数值越大优先级越高,间隔建议相差50
 27     advert_int 1 #通信间隔默1秒
 28     authentication { #权限配置
 29         auth_type PASS #使用PASS认证,主备节点相同
 30         auth_pass 1111 #认证密码,主备相同
 31     }
 32     virtual_ipaddress { #虚拟IP地址
 33         192.168.227.10/24 dev eth0 label eth0:1#vip192.168.227.10,子网掩码24位,绑定接口eth0,别名eth0:1 ,主备相同
 34     }
 35         track_script { #触发检测
 36         chk_nginx #检测的脚本名为chk_nginx,前面定义的名称
 37         }
 38 }
前11行为设置报警邮件的设置,默认即可,报警邮件可用zabbix
[root@zys data]# /etc/init.d/keepalived restart
停止 keepalived:                                          [确定]
正在启动 keepalived:                                      [确定]
重启服务
[root@zys data]# ip add | grep eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet 192.168.227.11/24 brd 192.168.227.255 scope global eth0
    inet 192.168.227.10/24 scope global secondary eth0:1
检查192.168.227.10的VIP已经出现


backup的配置文件和master的一样,除下表的内容外
Keepalived配置参数 Master节点Backup节点
Router_id(唯一标识) router_id lb01router_id lb02
State(角色状态) state MASTERstate BACKUP
Priority(优先级) priority 150priority 100


nginx服务挂了,自动关闭keepalived,
自动关闭keepalived服务脚本
[root@zys data]# cat chk_nginx.py 
#!/usr/bin/env python
import commands


state,valu = commands.getstatusoutput("netstat  -atupn | grep nginx | grep LISTEN| wc -l")
if valu == "0":
print "ooo"
commands.getstatusoutput("service keepalived stop")

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值