keepalived主服务器配置
systemctl stop firewalld
setenforce 0
yum -y install keepalived ipvsadm #安装keepalived和ipvsadm管理工具
将主配置文件备份并编辑文件
cd /etc/keepalived
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf
global_defs {
router_id R1 #本服务器的名称
}
vrrp_instance VI_1 { #定义VRRP热备实例
state MASTER #热备状态,MASTER表示主服务器,BACKUP表示为备用服务器
interface ens33 #承载VIP地址的物理接口
virtual_router_id 1 #虚拟路由器的ID号,每个热备组保持一致
priority 100 #优先级,数值越大优先级越高
advert_int 1 #通告间隔秒数(心跳频率)
authentication { #认证信息
auth_type PASS #认证类型
auth_pass pwd123 #密码
}
virtual_ipaddress { #指定漂移地址(VIP)
192.168.248.100
}
}
配置完成后启动服务。此时主服务器仍然在线,VIP地址实际上仍然由主服务器控制,其他服务器处于备用状态,因此在备用服务器上将不会为ens33接口添加VIP地址。
systemctl start keepalived
ip addr show dev ens33
为LVS配置虚拟IP地址
cd /etc/sysconfig/network-scipts/
cp ifcfg-ens33 ifcfg-ens33:0
vim ifcfg-ens33:0
.........
NAME=ens33:0
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.248.100
NETMASK=255.255.255.0
配置负载均衡分配策略
ipvsadm -C #清除原有策略
ipvsadm -A -t 192.168.248.100:80 -s rr
ipvsadm -a -t 192.168.248.100:80 -r 192.168.248.30:80 -g -w 1
ipvsadm -a -t 192.168.248.100:80 -r 192.168.248.40:80 -g -w 1
ipvsadm-save #保存策略
调整/prox响应参数
vim /etc/sysctl.conf
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
sysctl -p
web地址池配置
vim /etc/keepalived/keepalived.conf
同样也要为备用服务器配置相同的参数
备用服务器配置
systemctl stop firewalld
setenforce 0
yum -y install keepalived ipvsadm #安装keepalived和ipvsadm管理工具
与主服务器相同配置大致相同,只要修改服务器的名称、热备状态、优先级就可以了
cd /etc/keepalived
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf
global_defs {
router_id R2 #本服务器的名称
}
vrrp_instance VI_1 { #定义VRRP热备实例
state BACKUP #热备状态,MASTER表示主服务器,BACKUP表示为备用服务器
interface ens33 #承载VIP地址的物理接口
virtual_router_id 1 #虚拟路由器的ID号,每个热备组保持一致
priority 99 #优先级,数值越大优先级越高
advert_int 1 #通告间隔秒数(心跳频率)
authentication { #认证信息
auth_type PASS #认证类型
auth_pass pwd123 #密码
}
virtual_ipaddress { #指定漂移地址(VIP)
192.168.248.100
}
}
配置节点服务器(web服务器)
systemctl stop firewalld
setenforce 0
yum -y install httpd
echo "AAAAAAAA
" >> /var/www/html/index.html #编写测试页
systemctl start httpd
通过浏览器查看网页是否可以正常查看
为服务器节点配置虚拟IP地址(VIP)
cd /etc/sysconfig/network-scripts
cp ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.248.100
NETMASK=255.255.255.255
ONBOOT=yes
调整/proc响应参数
vim /etc/sysctl.conf
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
sysctl -p
添加VIP本地访问路由,将访问VIP的数据限制在本地,以避免通信紊乱
vim /etc/rc.local
......
/sbin/route add -host 192.168.248.100 (VIP地址) dev lo:0
route add -host 192.168.248.100 dev lo:0