LVS NET部署

环境交代:

192.168.1.7:LVS主机

192.168.1.8

192.168.1.10

三台都要做

1
2
[root@server01 ~]# systemctl stop firewalld
[root@server01 ~]# setenforce  0

 在1.7上做以下操作:

配置VIP:192.168.1.110

1
2
3
4
5
6
7
IPADDR=192.168.1.110
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
 
NAME=ens33:0
DEVICE=ens33:0
ONBOOT=yes

 开启网卡:ifup  en33:0

验证:ip addr show

1
2
3
4
5
6
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:ec:57:38 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.7/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.110/24 brd 192.168.1.255 scope global secondary noprefixroute ens33:0
       valid_lft forever preferred_lft forever

安装LVS软件

1
[root@localhost ~]# yum -y install ipvsadm

 开启路由转发功能

1
[root@localhost ~]# echo '1' > /proc/sys/net/ipv4/ip_forward

 清除ipvsadm表

1
[root@localhost ~]# ipvsadm -C

 添加新的虚拟服务(192.168.1.110为VIP)

1
[root@localhost ~]# ipvsadm -A -t 192.168.1.110:80 -s rr

- A: 添加新的虚拟服务器记录
-t :表示使用TCP协议

-s:调度策略 rr 轮询

添加后端真实服务记录

1
2
[root@localhost ~]# ipvsadm -a -t 192.168.1.110:80 -r 192.168.1.8:80 -m
[root@localhost ~]# ipvsadm -a -t 192.168.1.110:80 -r 192.168.1.10:80 -m

 -a 表示在虚拟服务器中添加一条新纪录,也可以理解为绑定
-m 表示使用的是NAT模式
-r 表示后端真实服务器

在后端真实服务器上操作(1.8|1.10)

安装apache服务

1
[root@bogon src]# yum -y install httpd

 创建测试页面

1
2
[root@bogon src]# cat /var/www/html/index.html
web01
1
2
[root@server01 ~]# cat /var/www/html/index.html
web02

 重启httpd服务

1
[root@server01 ~]# systemctl restart httpd

 在1.7上验证NAT效果

1
2
3
4
[root@localhost network-scripts]# curl 192.168.1.110
web02
[root@localhost network-scripts]# curl 192.168.1.110
web01

 LVS DR模式部署

1.7上运行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/sh
  
VIP=192.168.1.110
RIP1=192.168.1.8
RIP2=192.168.1.10
#. /etc/rc.d/init.d/functions
 
case "$1" in
start)
  echo "start LVS of DirectorServer"
  #set the Virtual IP Address
   ifconfig ens33:0 $VIP/24
   #/sbin/route add -host $VIP dev ens160:0
   #Clear IPVS table
   /sbin/ipvsadm -C
  #set LVS
  /sbin/ipvsadm -A -t $VIP:80 -s wrr
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
  #Run LVS
  /sbin/ipvsadm
  #end
;;
stop)
 echo "close LVS Directorserver"
/sbin/ipvsadm -C
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac

 1.8和1.10上运行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh
VIP=192.168.1.110
#. /etc/rc.d/init.d/functions
case "$1" in
    start)
        echo "Start LVS of RealServer"
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
        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
        ;;
    stop)
        /sbin/ifconfig lo:0 down
        echo "Stop LVS of RealServer"
        echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
        echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
        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}"
        exit 1
esac

 验证:curl 192.168.1.110

原文地址:https://www.cnblogs.com/xiaonan1/p/12607922.html