1. keepalived的安装
1.1 环境的准备
克隆一台一样的负载均衡服务器
hostname | ip |
---|---|
lb01 | 192.168.246.5 |
lb02 | 192.168.246.6 |
克隆之后修改IP地址
1.2 安装keepalived
lb01 lb02
yum -y install keepalived
1.3 编辑keepalived的配置文件
配置文件有三部分组成:全局 vrrpd lvs(lvs用不到,先可以删除)
vim /etc/keepalived/keepalives.conf
! Configuration File for keepalived
global_defs { --- 全局配置部分
notification_email { --- 设置发送邮件信息的收件人
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from oldboy@163.com --- 设置连接的邮件服务器信息
smtp_server 163.smtp.xxx_
smtp_connect_timeout 30
router_id LVS_DEVEL --- 高可用集群主机身份标识(集群中主机身份标识名称不能重复)
}
vrrp_instance oldboy { --- Vrrp协议家族 oldboy
state MASTER --- 标识所在家族中的身份 (MASTER/BACKUP)
interface eth0 --- 指定虚拟IP地址出现在什么网卡上
virtual_router_id 51 --- 标识家族身份信息 多台高可用服务配置要一致
priority 100 --- 设定优先级 优先级越高,就越有可能成为主
advert_int 1 --- 定义组播包发送的间隔时间(秒) 主和备配置一样 1
authentication { --- 实现通讯需要有认证过程
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { --- 配置虚拟IP地址信息
192.168.200.16
192.168.200.17
192.168.200.18
}
}
lbo1的配置文件:
! Configuration File for keepalived
global_defs {
router_id lb01
}
vrrp_instance yq {
state MASTER
interface eth0
virtual_router_id 51
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.246.3/24
}
}
lb02的配置文件:
! Configuration File for keepalived
global_defs {
router_id lb02
}
vrrp_instance yq {
state BACKUP
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.246.3/24
}
}
1.4 测试
systemctl start keepalived
systemctl enable keepalived
ip a
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
link/ether 00:0c:29:61:5f:bb brd ff:ff:ff:ff:ff:ff
inet 192.168.246.5/24 brd 192.168.246.255 scope global eth0
valid_lft forever preferred_lft forever
inet 192.168.246.3/24 scope global secondary eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe61:5fbb/64 scope link
valid_lft forever preferred_lft forever
可以看到eth0的下有一个虚拟的网,192.168.246.3,当我们访问这个网址的时候就会跳转到192.168.246.5,然而这个在lb02的eth0就没有虚拟的,说明了lb01变成了主。只有当lb01的keepalived的服务宕机了,就会自动在lb02,自动的变成主,这个时候访问192.168.246.3就会跳转到192.168.246.6
修改配置文件hosts(windows)
192.168.246.3 www.yq.com
www.yq.com
1.5 可能出现的问题
1.两台高可用服务器,根据上边的配置,上边lb01当做了主要的高可用服务器,这样的会造成lb02的资源浪费
2.keepalived是依赖于nginx进行工作的,当nginx服务出现了问题,那么keepalived的访问就会出现问题,这个时候我们就要通知主高可用的服务器停止keepalived,进行检查,修复nginx
3.没有配置除了192.168.246.3可以访问www.yq.com.使用192.168.246.5也可以进行访问,web集群使用的是外网,不安全,但是高可用集群的服务器必须可以连接外网,他是要进行访问请求的
解决问题:下一个博客