keepalived是基于VRRP协议(Virtual Router Redundancy Protocol,虚拟路由冗余协议)的开源软件,被广泛应用于云网络中,用于提供高可用的虚拟ip服务
本文基于centos系统,介绍keepalived的3个成员的配置方法
一、安装
yum install -y keepalived
二、配置
假设有3台云服务器,分别为ecs-1 ,ecs-2,ecs-3。
ecs-1 的ip地址为192.168.1.3/24, ecs-2的ip地址为192.168.1.4/24,ecs-3的ip地址为192.168.1.5/24
ha-vip即虚拟ip地址为192.168.1.100
配置ecs-1为主服务器,ecs-2和ecs-3为备用服务器
配置文件一般保存在 /etc/keepalived/keepalived.conf中
ecs-1配置:
! Configuration File for keepalived
global_defs {
router_id 192.168.1.3 //本机router-id
vrrp_skip_check_adv_addr
vrrp_garp_interval 0 //免费arp发布间隔
}
vrrp_instance 1 { //vrrp组名称
state MASTER //配置为主用服务器
interface eth0 // 配置云服务器对应的网卡
virtual_router_id 1 //配置vrrp组的路由器id,3成员需要保持一致
priority 200 //配置云优先级,数值越大,优先级越高
advert_int 1 //keepalived报文发送间隔
unicast_src_ip 192.168.1.3 //本段ip地址
unicast_peer { //对端成员ip地址
192.168.1.4
192.168.1.5
}
virtual_ipaddress {
192.168.1.100 // 虚拟ip地址
}
garp_master_delay 0
garp_master_refresh 5
}
ecs-2配置:
! Configuration File for keepalived
global_defs {
router_id 192.168.1.4
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
}
vrrp_instance 1 {
state BACKUP //配置为备服务器模式
interface eth0
virtual_router_id 1
priority 120 //配置优先级
advert_int 1
unicast_src_ip 192.168.1.4
unicast_peer {
192.168.1.3
192.168.1.5
}
virtual_ipaddress {
192.168.1.100
}
garp_master_delay 0
garp_master_refresh 5
}
ecs-3配置:
! Configuration File for keepalived
global_defs {
router_id 192.168.1.5
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
}
vrrp_instance 1 {
state BACKUP //配置为备服务器模式
interface eth0
virtual_router_id 1
priority 100 //配置优先级
advert_int 1
unicast_src_ip 192.168.1.5
unicast_peer {
192.168.1.3
192.168.1.4
}
virtual_ipaddress {
192.168.1.100
}
garp_master_delay 0
garp_master_refresh 5
}
三、开启服务
在天翼云平台虚拟私有云中的虚拟ip页面,创建虚拟ip,ip地址为192.168.1.100,并绑定云服务器ecs-1,ecs-2,ecs-3的对应网卡
并在3台云服务器中开启keepalived服务
systemctl start keepalived
待3台云服务器协商成功,ecs-1成为主服务器,并在对应网卡上生成虚拟ip地址192.168.1.100,对外提供vip地址的对应服务。
如果ecs-1服务器宕机,虚拟ip地址会切换到ecs-2服务器上,提供高可用服务