您的位置:首页 > 运维架构 > 网站架构

keepalived 高可用配置实例

2016-05-24 20:36 323 查看
keepalived 高可用配置单/双 主模型

安装环境 准备2台主机 网络模式 :nat
AU 192.168.16.8 (master)
AU1 192.168.16.11(backup)

(1) yum install keepalived -y
service keepalived start
ps -ef
( 2 ) cd /etc/keepalived
cp keepalived.conf keepalived.conf.back
vi keepalived.conf 主节au1 192.168.16.8 (内容如下)
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc 定义报警故障的Email 地址
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 127.0.0.1 发送邮件的服务器
smtp_connect_timeout 30 连接SMTP超时时长
router_id au1 路由id名 唯一
}
vrrp_instance VI_1 { 实例名字VI_1
state MASTER 状态 主
interface eth0 通讯接口 为 eth0
virtual_router_id 55 实例id 55 默认为51 ,主备节点相同
priority 150 主节点优先级 ,备节点要低于主节点
advert_int 1 通信检查间隔时间 1 秒
authentication {
auth_type PASS 密码认证类型
auth_pass 1111 密码 1111
}
virtual_ipaddress {
192.168.16.50/24 dev eth0 label eth0:1 设定虚拟主机ip/24 指明绑定的网络接 eth0 ,别名eth0:1,可以设定多个IP
}
}

(3) vi keepalived.conf (备用节点au2 192.168.16.11)

! Configuration File for keepalived

global_defs {
notification_email {
acassen@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id au2
}

vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 55
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.16.50/24 dev eth0 label eth0:1
}
}
注:主备配置修改的不同点:
router_id au1/au2 路由ID,唯一标示
state MASTER/BACKUP 节点状态 主从
priprity 150/100 竞选优先级 主节点优先级要高于备节
其他主备节点要相同配置

配置完了 service keepalived restart 重启服务

检查iptables -F selinux setenforce 0 关闭

查看配置结果: ip addr | grep 192.168.16.50

MASTER 显示 inet 192.168.16.50/24 .....配置成功

BACKUPP 正常情况不显示 ....配置成功

测试: MASTER 服务停掉 stop 后 BACKUP 显示 inet 192.168.16.50/24.....

MASTER 主服务器遇故障down机后 备服务器节点马上接上同步数据

当主服务器修整好了之后从新上线 ,又重新接管了虚拟ip ,如此反复切换

这种叫做单IP自动漂移

keepalived 双实例双主模式的ip配置如下:

au1 192.168.16.8 (master)

vi keepalived.conf 增加一个vrrp_instance VI_2实例

( 一) vrrp_instance VI_2 {
state BACKUP
interface eth0
virtual_router_id 56
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.16.60/24 dev eth0 label eth0:2
}
}

(二) au2 192.168.16.11 (backup)

vi keepalived.conf 增加一个vrrp_instance VI_2 实例

vrrp_instance VI_2 {
state MASTER
interface eth0
virtual_router_id 56
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.16.60/24 dev eth0 label eth0:2
}
}

配置完成后 service keepalived restart

查看状态 ip add|egrep "192.168.16.50|192.168.16.60"(注意:两个管道符之间没有空格,否则语法错误无法显示)

au1 显示 inet 192.168.16.50/24 ......
au2 显示 inet 192.168.16.60/24 ......

测试 在au1 (192.168.16.8) 停止服务stop ,在本机测试不显示,

而在au2 (192.168.16.11) 主机测试 ip add|egrep "192.168.16.50|192.168.16.60"

会同时显示 inet 192.168.16.50/24 ......

inet 192.168.16.60/24 ......

同理测试 au2 (192.168.16.11) 停止服务stop ,在本机测试不显示,

而在au1 (192.168.16.8) 主机测试 ip add|egrep "192.168.16.50|192.168.16.60"

会同时显示 inet 192.168.16.50/24 ......

inet 192.168.16.60/24 ......

由此可见,我们发现au1,au2主备节点已经实现了初始配置的vip服务状态

当任意一端Duang机。vip可以实现互相切换接管漂移,能保证数据的同步

VRRP是一个“选举”协议,它能够动态地将一个虚拟路由器的责任指定至同

一个VRRP组中的其它路由器上,从而消除了静态路由配置的单点故障。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  service 模型 Email