三台服务器:一台作为 director,两台作为 real server
director 有一个外网网卡(192.168.199.158) 和一个内网ip(192.168.1.155)
两个 real server 上只有内网 ip (192.168.1.182) 和 (192.168.1.183),并且需要把两个 real server 的内网网关设置为 director 的内网 ip(192.168.1.155)后面有详细过程
wget http://nginx.org/download/nginx-1.16.0.tar.gz 安装nginx
vip : 192.168.40.124
rip : 192.168.40.155
192.168.40.123
调度器安装:
1、关闭防火墙
2、安装ipvsadm
yum install ipvsadm -y
3、添加表 -D删除整个表 -d删除一条 (不加上算法)
ipvsadm -A -t 192.168.40.124:8080 -s(调度算法) rr(轮询算法)
添加记录(调度的对象,web)
ipvsadm -a -t 192.168.40.124:8080 -r 192.168.40.155
ipvsadm -a -t 192.168.40.124:8080 -r 192.168.40.123
4、设置vip地址
ifconfig ens33:1 192.168.40.124/32
route add -host 192.168.40.124 dev ens33:1
echo 1 > /proc/sys/net/ipv4/ip_forward
两台Web 服务上配置安装
虚拟隐藏VIP
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
在lo上设置VIP地址
ifconfig lo:0 192.168.40.124/32
添加路由
route add -host 192.168.40.124 dev lo:0
调度器
ipvsadm -Ln
wget http://nginx.org/download/nginx-1.16.0.tar.gz 安装nginx
Director节点: (ens33 192.168.199.169 vip eth0:0 192.168.199.158)
Real server1: (ens33 192.168.199.111 vip lo:0 192.168.199.158)
Real server2: (ens33 192.168.199.231 vip lo:0 192.168.199.158)
arp_announce 2
arp_ignore 1
vim /usr/local/sbin/lvs_dr.sh
#! /bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
ipv=/sbin/ipvsadm
dip=192.168.199.122
vip=192.168.199.38
rs1=192.168.199.143
rs2=192.168.199.241
ifconfig ens33:0 down
ifconfig ens33:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev eth0:0
$ipv -C
$ipv -A -t $vip:80 -s wrr
$ipv -a -t $vip:80 -r $rs1:80 -g -w 3
$ipv -a -t $vip:80 -r $rs2:80 -g -w 1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
vim /usr/local/sbin/lvs_dr_rs.sh
#! /bin/bash
vip=192.168.199.38
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip 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
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++