yum -y install ipvsadm
yum -y install keepalived
启动keepalived服务
创新互联是一家专业提供福清企业网站建设,专注与成都网站设计、网站建设、H5技术、小程序制作等业务。10年已为福清众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
systemctl start keepalived.service
使用配置LVS的时候,不能直接配置内核中的ipvs,需使用ipvs的管理工具ipvsadm进行管理。用于查看lvs转发及代理情况的工具。
2).修改keepalived配置文件
20的Master配置文件如下:
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
admin@localhost
}
notification_email_from root@localhost
router_id LVS_01 #表示运行keepalived服务器的一个标识,发邮件时显示在邮件主题的信息
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER #指定keepalived的角色Master
interface ens192 #网卡,ip a查看
virtual_router_id 100 #虚拟路由标识,主备两个节点的设置必须一样,以指明各个节点属于同一VRRP组
priority 100 #定义优先级,Master的priority要高于slave
advert_int 1 #设定MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位秒
authentication { #设置验证类型和密码
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
10.20.1.99/24 dev ens192 #设置VIP
}
}
virtual_server 10.20.1.99 443 { #设置虚拟服务器,需指定虚拟IP地址和服务端口
delay_loop 3 #健康时间检查,单位秒
lb_algo rr #负载均衡调度算法wlc|rr
lb_kind DR #设置LVS实现负载均衡机制,有NAT、TUN、DR三个模式
persistence_timeout 50 #会话保持时间,单位秒。此选项对动态网页是非常有用
protocol TCP #指定转发协议类型,有TCP和UDP
real_server 10.20.1.22 443 { #Real Server服务器,这里为Nginx服务器
weight 1 #设置权重
TCP_CHECK { #设置检查方式,可以设置HTTP_GET | SSL_GET
connect_port 443 #检测Real Server的侦听端口
connect_timeout 5 #超时时间,单位秒。如果在这个时间内无返回,则说明一次监测失败
retry 3 #设置多少次监测失败,就判断这个Real Server死掉
delay_before_retry 3 #重试间隔
}
}
real_server 10.20.1.23 443 {
weight 1
TCP_CHECK {
connect_port 443
connect_timeout 5
retry 3
delay_before_retry 3
}
}
}
21的slave的/etc/keepalived/keepalived.conf配置,需更改state Backup和修改priority的值小于master的priority。
Master服务器上查看IP,VIP在Master上。
ipvsadm命令查看规则。
3). Real Server配置
因为VS/DR模式,在后端Real Server即Nginx服务器上配置脚本。配置两台Nginx服务器上为回环地址lo:0绑定VIP地址、ARP广播。
vim /opt/scripts/lvs_rs.sh
#!/bin/bash
vip=10.20.1.99
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p &>/dev/null
在22、23服务器上分别执行。
4). 测试LVS+Keepalived高可用群集
客户端的浏览器中,能够通过LVS+Keepalived群集的VIP地址漂移(10.20.1.99)正常访问web,验证群集构建成功。
先在20Master上将keepalived.service服务器关闭,查看IP情况:
发现VIP没了。
然后在21Slave上查看VIP是否漂移过来了:
发现VIP已经来到Slave上了。
这时,将20Master上将keepalived.service服务又重新启动,VIP后回来了。