三台伺服器:一台作為 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)
#! /bin/bash
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
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++