# 2台web服务lo:0的VIP仍然保留,内核参数配置仍然保留
# lvs1删除LVS规则,在lvs1上配置keepalived,因为规则将会由keepalived配置
[root@lvs1 ~]# ipvsadm -D -t 192.168.4.15:80
[root@lvs1 ~]# ifdown eth0:0
[root@lvs1 ~]# rm -f /etc/sysconfig/network-scripts/ifcfg-eth0:0
[root@lvs1 ~]# yum install -y keepalived
# 编辑配置文件
[root@lvs1 ~]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
root@localhost # 收件人地址
}
notification_email_from admin@tedu.cn # 发件人地址
smtp_server 127.0.0.1 # 邮件服务器地址
smtp_connect_timeout 30
router_id lvs1 # 唯一标别ID
vrrp_iptables # 自动开启IPTABLES放行规则
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.4.15/24 # VIP地址
}
}
virtual_server 192.168.4.15 80 { # LVS虚拟服务器
delay_loop 6 # 健康检查延迟6秒
lb_algo rr # 调度算法
lb_kind DR # 工作模式
persistence_timeout 50 # 50秒内相同客户端调度到相同服务器
protocol TCP
real_server 192.168.4.100 80 { # real server配置
weight 1 # 权重
TCP_CHECK { # 对real server健康检查的配置
connect_timeout 3 # 连接超时时间
nb_get_retry 3 # 健康检查重试次数
delay_before_retry 3 # 两次检查的间隔
}
}
real_server 192.168.4.200 80 {
weight 2
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
# 启动keepalived服务
[root@lvs1 ~]# systemctl start keepalived
# 为了实现邮件报警功能,安装邮件服务
[root@lvs1 ~]# yum install -y postfix
[root@lvs1 ~]# systemctl enable postfix --now
# 验证
[root@lvs1 ~]# ip a s eth0 # 查看到vip 192.168.4.15
[root@lvs1 ~]# ipvsadm -Ln # 规则已经生成
# 配置第二台lvs
[root@lvs2 ~]# yum install -y keepalived ipvsadm postfix mailx
[root@lvs1 ~]# scp /etc/keepalived/keepalived.conf 192.168.4.6:/etc/keepalived/
[root@lvs2 ~]# vim /etc/keepalived/keepalived.conf
... ...
10 router_id lvs2
19 state BACKUP
22 priority 80
[root@lvs2 ~]# systemctl start keepalived
[root@lvs2 ~]# ipvsadm -Ln