负载均衡的高可用实验
准备四台服务器
两台做Keepalived,两台做real server
keepalived服务器
master:192.168.188.128
backup:192.168.188.129
real server服务器
real1:192.168.188.130
real2:192.168.188.131
Keepalived部署:
master:192.168.188.128
backup:192.168.188.129
real server部署
real1:yum -y install nginx & echo “1111” >/usr/share/nginx/html/index.html
real2:yum -y install nginx & echo “2222” >/usr/share/nginx/html/index.html
systemctl start nginx
一、给nginx做keepalived高可用
1、nginx的负载均衡部署
master1:yum -y install nginx
vim /etc/nginx/nginx.conf
在http全局模块下添加
upstream keepalived {
server 192.168.188.130 weight=10 max_fails=5 fail_timeout=30;(权重,最大失败次数,失败重连)
server 192.168.188.131 weight=10 max_fails=5 fail_timeout=30;
在location模块下操作
#root /html;
#index index.html
proxy_pass http://keepalived; #keepalived 为http模块儿下定义的地址池的名字
2、部署keepalived
yum -y install keepalived
master配置文件
mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.default #备份配置文件
vim /etc/keepalived/keepalived.conf
global_defs { #全局配置
router_id director1 #指定机器的router_id
}
vrrp_instance VI_1 {
state MASTER #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 100 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.10/24 #指定的VIP
}
}
backup配置文件
vim /etc/keepalived/keepalived.conf
global_defs {
router_id director2
}
vrrp_instance VI_1 {
state BACKUP #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 50 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.10/24 #指定的VIP
}
}
3、部署完成重启keepalived
systemctl restart keepalived
4、client访问测试,访问并刷新指定的VIP
二、给lvs做高可用
1、首先给两台keepalived服务器做lvs负载均衡实验,(略:详细步骤键lvs负载均衡集群实战)
yum -y install keepalived ipvsadm
master:192.168.188.128
backup:192.168.188.129
2、准备环境配置文件
master配置:
vim /etc/keepalived/keepalived.conf
global_defs { #全局配置
router_id director1 #指定机器的router_id
}
vrrp_instance VI_1 {
state MASTER #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 100 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.10/24 #指定的VIP
}
}
backup配置文件
vim /etc/keepalived/keepalived.conf
global_defs {
router_id director2
}
vrrp_instance VI_1 {
state BACKUP #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 50 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.10/24 #指定的VIP
}
}
3、客户端访问192.168.188.10不停刷新访问,观察其现象,可手动模拟宕机操作。
三、给haproxy做keepalived
1、首先给master、backup服务器做haproxy(详情见:haproxy)
2、编辑配置文件
yum -y install keepalived ipvsadm
master:192.168.188.128
backup:192.168.188.129
2、准备环境配置文件
master配置:
vim /etc/keepalived/keepalived.conf
global_defs { #全局配置
router_id director1 #指定机器的router_id
}
vrrp_instance VI_1 {
state MASTER #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 100 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.110/24 #指定的VIP
}
}
backup配置文件
vim /etc/keepalived/keepalived.conf
global_defs {
router_id director2
}
vrrp_instance VI_1 {
state BACKUP #指定该Keepalived节点的初始状态
interface ens33 #vrrp实例绑定的接口,用于发送VRRP包
virtual_router_id 80 #设置VRID标识,整个集群的调度一致(0-255)
priority 50 #定义优先级
advert_int 1 #检查的时间间隔 默认为1s
authentication { #设置认证
auth_type PASS #指定认证方式
auth_pass 1111 #指定认证所使用的密码
}
virtual_ipaddress {
192.168.188.110/24 #指定的VIP
}
}
3、客户端访问192.168.188.10不停刷新访问,观察其现象,可手动模拟宕机操作。
