LVS NAT模式配置(三)


环境

128添加新网卡

128查看网络

vip                    192.168.37.133(新添加的网卡IP)
调度器  192.168.64.128 ipvsadm
后端真实服务器 192.168.64.129 Nginx
后端真实服务器 192.168.64.130 Nginx
测试服务器 192.168.64.131

调度器129机器

安装ipvsadm

yum -y install ipvsadm

LVS-NAT配置脚本

#!/bin/bash
#
# chkconfig: - 88 12
# description: LVS script for LVS/NAT
#
. /etc/rc.d/init.d/functions
#
VIP=192.168.37.133 #你的第二块网卡IP地址
DIP=192.168.64.129    
RIP1=192.168.64.130
RIP2=192.168.64.131
#

case "$1" in
start)           

  /sbin/ifconfig ens39:1 $VIP netmask 255.255.255.0 up #第二块网卡名称

# Since this is the Director we must be able to forward packets
  echo 1 > /proc/sys/net/ipv4/ip_forward

# Clear all iptables rules.
  /sbin/iptables -F

# Reset iptables counters.
  /sbin/iptables -Z

# Clear all ipvsadm rules/services.
  /sbin/ipvsadm -C

# Add an IP virtual service for VIP 192.168.0.219 port 80
# In this recipe, we will use the round-robin scheduling method. 
# In production, however, you should use a weighted, dynamic scheduling method. 
  /sbin/ipvsadm -A -t $VIP:80 -s wrr

# Now direct packets for this VIP to
# the real server IP (RIP) inside the cluster
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1 -m -w 1
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP2 -m -w 2
  
  /bin/touch /var/lock/subsys/ipvsadm.lock
;;

stop)
# Stop forwarding packets
  echo 0 > /proc/sys/net/ipv4/ip_forward

# Reset ipvsadm
  /sbin/ipvsadm -C

# Bring down the VIP interface
  ifconfig ens39:1 down #第二块网卡名称
  
  rm -rf /var/lock/subsys/ipvsadm.lock
;;

status)
  [ -e /var/lock/subsys/ipvsadm.lock ] && echo "ipvs is running..." || echo "ipvsadm is stopped..."
;;
*)
  echo "Usage: $0 {start|stop}"
;;
esac

修改你所对应的IP地址和新添加的网卡名称 也可以修改轮询规则 我这边用的权重轮询规则

真实服务器

安装nginx或者httpd  

启动Nginx或者httpd

为了方便测试 网页修改为不同内容

130网卡修改

131网卡修改

图片有误 抱歉了 我调度器ip地址是192.168.64.128

图片有误 抱歉了 我调度器ip地址是192.168.64.128

图片有误 抱歉了 我调度器ip地址是192.168.64.128

网关指向调度器IP地址

网关指向调度器IP地址

网关指向调度器IP地址

好像不用重启网络服务

启动脚本(最后一步)

service tff-lvs-NAt start (tff-lvs-NAt 我脚本名称)

131机器测试

while true ; do curl 192.168.37.133;sleep 1;done

大功告成

如果其中一个80端口服务不在了,它会每次都向这个不在的端口进行连接 挺费时间的  就有了后来的高可用工具如keepalived

小知识

编辑网卡

 复制自带的配置文件 修改保留部分信息如下

 

TYPE="Ethernet"
BOOTPROTO="static"

NM_CONTROLLED=yes

NAME="ens39"
UUID="72ad4486-e35a-4554-8574-ca25a70f8a04" #和ens33一样

DEVICE="ens39"
ONBOOT="yes"

PREFIX=24

IPADDR=192.168.37.133

DNS1=192.168.64.2
DNS2=8.8.8.8
          

重启网络服务

ipvsadm命令使用参考链接

ipvsadm命令详解_10968134的技术博客_51CTO博客

lvs