LVS-NAT 部署案例

案例环境

LVS负载调度器作为Web服务器迟的网关,LVS两张网卡,分别连接内网和外网,使用轮询(rr)调度算法;

两个节点的首页文件保存在NFS远程共享目录中

3台linux主机先使用NAT模式安装好各自所需软件,再切换成仅主机模式,构建出局域网。配置之前,要将防火墙和核心防护关闭

主机名 IP地址 角色 软件包
LVS

外网:192.168.0.104

内网:192.168.100.10

LVS负载均衡调度器  加载LVS内核模块;ipvsadm软件包
node1 192.168.100.20     web节点1 httpd软件包
node2 192.168.100.30 web节点2 http的软件包
nfs 192.168.100.40 耐腐蚀远程共享目录 nfs-util软件包

实验步骤

NFS服务器安装

1.安装nfs-utils软件包,启动rpcbind和nfs

[root@localhost ~]# rpm -q rpcbind#查看软件包是否安装过
rpcbind-0.2.0-42.el7.x86_64
[root@localhost ~]# yum -y install nfs-utils
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
软件包 1:nfs-utils-1.3.0-0.48.el7.x86_64 已安装并且是最新版本
无须任何处理
[root@localhost ~]# systemctl start rpcbind [root@localhost ~]# systemctl start nfs

2、创建共享目录并剪辑配置文件并发布共享目录

[root@localhost ~]# mkdir /opt/test01
[root@localhost ~]# mkdir /opt/test02
[root@localhost ~]# cd /opt
[root@localhost opt]# chmod 777 test01
[root@localhost opt]# chmod 777 test02
[root@localhost ~]# exportfs -rv
exporting 192.168.100.0/24:/opt/test02
exporting 192.168.100.0/24:/opt/test01

3、在两个节点上安装HTTPD服务,分别查看共享目录,分别进行挂载

node1
[root@server2 ~]# showmount -e 192.168.100.40
Export list for 192.168.100.40:
/opt/test02 192.168.100.0/24
/opt/test01 192.168.100.0/24
[root@server2 ~]# vim /etc/fstab
192.168.100.40:/opt/test01 /var/www/html nfs defaults 0 0
mount-a
systemctl start httpd
[root@server2 ~]# netstat -anpt | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      57721/httpd         
node2
[root@server2 ~]# showmount -e 192.168.100.40
Export list for 192.168.100.40:
/opt/test02 192.168.100.0/24
/opt/test01 192.168.100.0/24
[root@server2 ~]# vim /etc/fstab
192.168.100.40:/opt/test01 /var/www/html nfs defaults 0 0
mount-a
systemctl start httpd
[root@server2 ~]# netstat -anpt | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      57721/httpd       

4、在两个节点上分别配置首页内容

vim /var/www/html/index.html
<h1>this is test01</h1>   #192.168.100.20节点中写
<h1>this is test02</h1>   #192.168.100.30节点中写

LVS-NAT服务部署

1、加载LVS 内核模块

[root@server1 ~]# modprobe ip_vs
[root@server1 ~]# cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn

2、安装ipvsadm管理工具

[root@server1 ~]# yum -y install ipvsadm

3、使用脚本设置NAT工作模式,只要在LVS服务器上配置,web服务器上不需要添加配置

[root@server1 ~]# vim nat.sh
#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
ipvsadm -C
ipvsadm -A -t 192.168.0.104:80 -s rr
ipvsadm -a -t 192.168.0.104:80 -r 192.168.100.20:80 -m
ipvsadm -a -t 192.168.0.104:80 -r 192.168.100.30:80 -m
ipvsadm

ipvsadm命令选项解析:
-C:清除内核虚拟服务器表中的所有记录
-A:增加一台新的虚拟服务器
-t:说明虚拟服务器提供的是tcp的服务
-s rr:启用轮询算法
-a:在一个虚拟服务器中增加一台新的真实服务器
-r:指定真实服务器
-m:指定LVS的工作模式为NAT模式
ipvsadm:启用LVS功能  

[root@server1 ~]# vim nat.sh
[root@server1 ~]# sh nat.sh
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.104:http rr
  -> 192.168.100.20:http          Masq    1      0          0         
  -> 192.168.100.30:http          Masq    1      0          0         

4、在浏览器中输入192.168.0.104地址验证是否为轮询调度

第一次是访问节点1的网页内容,刷新后,第二次访问的是节点2网页的内容。

 

 

 

 

 项目成功 

  

  

  

  

  

 

  

  

 

posted @ 2020-11-03 22:25  孙天飞  阅读(126)  评论(0编辑  收藏  举报