LVS-NAT配置

NAT模式

一 初始化配置

vi /etc/sysctl.conf
将net.ipv4.ip_forward = 0 改成1

sysctl -p 使配置生效

二. 在分发器(web02)添加一块新网卡

1 在虚拟机里新增一块网卡, net4
2 查看网卡的MAC地址
vi /etc/udev/rules.d/70-persistent-net.rules

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:41:7f:89", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

3 将/etc/sysconfig/network-scripts中ifcfg-eth0复制成ifcfg-eth1, 并修改内容

HWADDR=00:0c:29:41:7f:89
BOOTPROTO=static
IPADDR=192.168.4.132
NETMASK=255.255.255.0

4 重启网络service network restart

eth1      Link encap:Ethernet  HWaddr 00:0C:29:41:7F:89  
          inet addr:192.168.4.132  Bcast:192.168.4.255  Mask:255.255.255.0

三. 配置分发器

  • 安装lvs管理软件
    yum -y install ipvsadm

  • 设为开启自启动chkconfig ipvsadm on

  • 启动服务 service ipvsadm start

  • 添加分发器
    ipvsadm -A -t 192.168.1.132:80 -s rr

    • -A: 添加
    • -t: tcp
    • -s: 指定算法 rr:轮询
  • 添加真实机
    ipvsadm -a -t 192.168.1.132:80 -r 192.168.4.131 -m
    ipvsadm -a -t 192.168.1.132:80 -r 192.168.4.133 -m

    • -a: 添加real server的地址
    • -t: tcp
    • -r: 指定real server的IP地址
    • -m: NAT模式的LVS
  • 查看添加的规则
    ipvsadm -L -n

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.1.132:80 rr
  -> 192.168.4.131:80             Masq    1      0          0         
  -> 192.168.4.133:80             Masq    1      0          0 
  • 保存规则
    /etc/init.d/ipvsadm save

三. 配置真实机

  • realServer有两台主机, 分别为web01和web03, 配置ip和网关分别为:

    • web01: eth0: vmnet4: IP: 192.168.4.131 网关: 192.168.4.132
    • web03: eth0: vmnet4: IP: 192.168.4.133 网关: 192.168.4.132
  • web01中执行

echo "I am web01" >> /home/web/local/apache2/htdocs/index.html
  • web03中执行
echo "I am web03" >> /home/web/local/apache2/htdocs/index.html
  • 开启web01和web03的web服务, 测试
    测试是使用文本浏览器, 安装elinks
    yum -y install elinks
    elinks 192.168.4.131 --dump
    如下, web01和web03两台真实主机轮流被选择
[root@web02 ~]# elinks 192.168.1.132 --dump
                                   It works!

   I am web03
[root@web02 ~]# elinks 192.168.1.132 --dump
                                   It works!

   I am Web01
[root@web02 ~]# elinks 192.168.1.132 --dump
                                   It works!

   I am web03
[root@web02 ~]# elinks 192.168.1.132 --dump
                                   It works!

   I am Web01

  • 查看转发情况 ipvsadm -L -n -c
  • 查看转发统计 ipvsadm -L -n --stats
  • 查看连接速率 ipvsadm -L -n --rate
  • 清空统计数据 ipvsadm -Z
  • 清空规则 ipvsadm -C
  • LVS规则配置文件 /etc/sysconfig/ipvsadm

你可能感兴趣的:(LVS-NAT配置)