上传文件至 'os/lvs'

master
newrain001 2 years ago
parent c245e529be
commit 32fb25d1bd
  1. 20
      os/lvs/lvs-dr-real.sh
  2. 30
      os/lvs/lvs-dr-server.sh
  3. 17
      os/lvs/lvs-nat-real.sh
  4. 25
      os/lvs/lvs-nat-server.sh

@ -0,0 +1,20 @@
#!/usr/bin/bash
VIP=192.168.96.200
NETMASK=32
case $1 in
start)
ip addr add dev lo $VIP/$NETMASK
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore #忽略arp广播
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce #匹配精确ip地址回包
;;
stop)
ip addr del dev lo $VIP/$NETMASK
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac

@ -0,0 +1,30 @@
#!/usr/bin/bash
# VIP
VIP=192.168.96.200
# 真实服务器
REAL_SERVER=(192.168.96.167 192.168.96.168 192.168.96.170)
# 真实服务器权重
WEIGHT=(3 5 15)
# 调度算法
SCHEDULER=wrr
INTERFACE=ens33
NETMASK=32
case $1 in
start)
ip addr add $VIP/$NETMASK dev $INTERFACE
# 设置虚拟服务
ipvsadm -A -t $VIP:80 -s $SCHEDULER
for i in ${!REAL_SERVER[@]}
do
ipvsadm -a -t $VIP:80 -r ${REAL_SERVER[$i]}:80 -g -w ${WEIGHT[$i]}
done
;;
stop)
ipvsadm -C
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac

@ -0,0 +1,17 @@
#!/usr/bin/bash
# 默认网关
GATEWAY=192.168.96.166
# 网卡
INTERFACE=ens33
case $1 in
start)
ip route add default via $GATEWAY dev $INTERFACE
;;
stop)
ip route del default via $GATEWAY dev $INTERFACE
;;
*)
echo "Usage: $0 {start|stop}"
esac

@ -0,0 +1,25 @@
#!/usr/bin/bash
VIP=10.9.29.110
REAL_SERVER=(192.168.96.167 192.168.96.168)
WEIGHT=(1 1)
SCHEDULER=wrr
case $1 in
start)
ipvsadm -A -t $VIP:80 -s $SCHEDULER
echo "1" > /proc/sys/net/ipv4/ip_forward
# 设置虚拟服务
for i in ${!REAL_SERVER[@]}
do
ipvsadm -a -t $VIP:80 -r ${REAL_SERVER[$i]}:80 -m -w ${WEIGHT[$i]}
done
;;
stop)
ipvsadm -C
echo "0" > /proc/sys/net/ipv4/ip_forward
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
Loading…
Cancel
Save