LVS负载均衡群集之NAT模式搭建环境及操作步骤详解
下文给大家带来LVS负载均衡群集之NAT模式搭建环境及操作步骤详解,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用创新互联在行业内累计的经验来做一个解答。
成都创新互联基于分布式IDC数据中心构建的平台为众多户提供BGP机房服务器托管 四川大带宽租用 成都机柜租用 成都服务器租用。
实验原理图
实验环境
- LVS调度器作为web云服务器池的网关
- LVS服务器配置两块网卡分别连接内外网
- 使用轮询(rr)调度算法
- LVS负载调度器网段规划 内网33网关:192.168.144.1 外网36:12.0.0.1
- web1 192.168.144.151
- web2 192.168.144.170
- nfs服务器 192.168.144.145
- client测试机 12.0.0.12
实践操作
在NFS服务器上添加两块硬盘,做共享存储使用,格式化
- 在虚拟机上添加硬盘
[root@nfs ~]# fdisk /dev/sdb //分区
令(输入 m 获取帮助):n //创建新分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p //主分区
分区号 (1-4,默认 1): //回车默认选项
起始 扇区 (2048-41943039,默认为 2048): //回车默认选项
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039): //回车默认选项
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):w //保存
[root@nfs ~]# mkfs.xfs /dev/sdb1 //格式化磁盘
##以上操作格式化/dev/sdc磁盘
[root@nfs ~]# mkdir /opt/kgc /opt/accp //创建挂载点
[root@nfs ~]# vim /etc/fstab //创建自动挂载
...
/dev/sdb1 /opt/kgc xfs defaults 0 0 //编辑自动挂载条目
/dev/sdc1 /opt/accp xfs defaults 0 0
[root@nfs ~]# mount -a //刷新挂载
[root@nfs ~]# df -hT //查看磁盘挂载情况
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sdb1 xfs 20G 33M 20G 1% /opt/kgc
/dev/sdc1 xfs 20G 33M 20G 1% /opt/accp
[root@nfs ~]# systemctl stop firewalld.service //关闭防火墙
[root@nfs ~]# setenforce 0
[root@nfs ~]# rpm -q nfs-utils //查看nfs两个包是否安装
nfs-utils-1.3.0-0.48.el7.x86_64
[root@nfs ~]# rpm -q rpcbind
rpcbind-0.2.0-42.el7.x86_64
[root@nfs ~]# vim /etc/exports //配置共享存储配置文件
...
/opt/kgc 192.168.144.0/24(rw,sync,no_root_squash) //支持144网段读写,同步,不支持降级处理
/opt/accp 192.168.144.0/24(rw,sync,no_root_squash)
把NFS服务器切换为仅主机模式,启动服务
[root@nfs ~]# systemctl start nfs //开启nfs服务
[root@nfs ~]# systemctl start rpcbind
[root@nfs ~]# showmount -e //查看提供共享信息
Export list for nfs:
/opt/accp 192.168.144.0/24
/opt/kgc 192.168.144.0/24
[root@nfs ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //修改网卡信息
BOOTPROTO=static //改为静态
IPADDR=192.168.144.145 //添加地址,子网掩码,网关
NETMASK=255.255.255.0
GATEWAY=192.168.144.1
[root@nfs ~]# service network restart //重启网络
在web1,web2上安装http服务,切换网卡为仅主机模式
- web1服务器
[root@web1 ~]# yum install httpd -y //安装web服务 [root@web1 ~]# systemctl stop firewalld.service //关闭防火墙 [root@web1 ~]# setenforce 0 [root@web1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //修改网卡信息 BOOTPROTO=static //改为静态 ... IPADDR=192.168.144.151 //添加地址,子网掩码,网关 NETMASK=255.255.255.0 GATEWAY=192.168.144.1 [root@web1 ~]# service network restart [root@web1 ~]# showmount -e 192.168.144.145 //查看nfs共享信息 Export list for 192.168.144.145: /opt/accp 192.168.144.0/24 /opt/kgc 192.168.144.0/24 [root@web1 ~]# vim /etc/fstab //设置自动挂载 192.168.144.145:/opt/kgc /var/www/html nfs defaults,_netdev 0 0 //挂载到站点中,模式为nfs,默认网络设备 [root@web1 ~]# mount -a //刷新挂载 [root@web1 ~]# df -hT //查看磁盘挂载信息 文件系统 类型 容量 已用 可用 已用% 挂载点 192.168.144.145:/opt/kgc nfs4 20G 32M 20G 1% /var/www/html [root@web1 ~]# echo "this is kgc web" > /var/www/html/index.html //创建网页 [root@web1 ~]# systemctl start httpd.service //启动web服务
- web2服务器
[root@web2 ~]# yum install httpd -y //安装web服务 [root@web2 ~]# systemctl stop firewalld.service //关闭防火墙 [root@web2 ~]# setenforce 0 [root@web2 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 //修改网卡信息 BOOTPROTO=static //改为静态 ... IPADDR=192.168.144.170 //添加地址,子网掩码,网关 NETMASK=255.255.255.0 GATEWAY=192.168.144.1 [root@web2 ~]# service network restart [root@web2 ~]# showmount -e 192.168.144.145 //查看nfs共享信息 Export list for 192.168.144.145: /opt/accp 192.168.144.0/24 /opt/kgc 192.168.144.0/24 [root@web2 ~]# vim /etc/fstab //设置自动挂载 192.168.144.145:/opt/accp /var/www/html nfs defaults,_netdev 0 0 //挂载到站点中,模式为nfs,默认网络设备 [root@web2 ~]# mount -a //刷新挂载 [root@web2 ~]# df -hT //查看磁盘挂载信息 文件系统 类型 容量 已用 可用 已用% 挂载点 192.168.144.145:/opt/accp nfs4 20G 32M 20G 1% /var/www/html [root@web2 ~]# echo "this is accp web" > /var/www/html/index.html //创建网页 [root@web2 ~]# systemctl start httpd.service //启动web服务
在lvs负载调度器上添加两块网卡并设置路由转发
[root@lvs ~]# yum install ipvsadm -y ##安装ipvsadm调度管理工具
- 添加外网的网卡,并切换为仅主机模式
[root@lvs ~]# cd /etc/sysconfig/network-scripts [root@lvs network-scripts]# cp -p ifcfg-ens33 ifcfg-ens36 //复制网卡配置文件为ens36配置文件 [root@lvs network-scripts]# vim ifcfg-ens33 BOOTPROTO=static IPADDR=192.168.144.1 //设置内网网关ip NETMASK=255.255.255.0 [root@lvs network-scripts]# vim ifcfg-ens36 BOOTPROTO=static //删除UUID NAME=ens36 //修改为36 DEVICE=ens36 IPADDR=12.0.0.1 //设置外网网关 NETMASK=255.255.255.0 [root@lvs network-scripts]# service network restart //重启网卡服务 //可以在web上用ping测试能否连同网关 [root@lvs network-scripts]# vim /etc/sysctl.conf //路由转发配置文件 net.ipv4.ip_forward=1 //开启路由转发 [root@lvs network-scripts]# sysctl -p //加载路由转换功能 [root@lvs network-scripts]# iptables -F //清除转发表 [root@lvs network-scripts]# iptables -t nat -F //清除nat地址转换表 [root@lvs network-scripts]# iptables -t nat -A POSTROUTING -o ens36 -s 192.168.144.0/24 -j SNAT --to-source 12.0.0.1 //指定nat地址转换表,指定数据流出接口,指定原ip地址,指定源地址转换SNAT,指定转换的ip地址
加载lvs内核模块,配置管理软件ipvsadm
[root@lvs network-scripts]# modprobe ip_vs //加载lvs内核 [root@lvs network-scripts]# cat /proc/net/ip_vs //查看ipvs信息 IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn [root@lvs network-scripts]# ipvsadm --save > /etc/sysconfig/ipvsadm //centos7必须要先保存 [root@lvs network-scripts]# systemctl start ipvsadm //启动ipvsadm服务 [root@lvs network-scripts]# vim /opt/nat.sh //编写ipvsadm脚本 #!/bin/bash ipvsadm -C //清空ipvs缓存 ipvsadm -A -t 12.0.0.1:80 -s rr //指定虚拟服务访问入口,指定轮询算法 ipvsadm -a -t 12.0.0.1:80 -r 192.168.144.151:80 -m //指定真实服务器,nat模式 ipvsadm -a -t 12.0.0.1:80 -r 192.168.144.170:80 -m ipvsadm //启动 [root@lvs network-scripts]# chmod +x /opt/nat.sh //给执行权限 [root@lvs network-scripts]# cd /opt/ [root@lvs opt]# ./nat.sh //启动脚本 IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP lvs:http rr -> 192.168.144.151:http Masq 1 0 0 -> 192.168.144.170:http Masq 1 0 0
用client测试机(仅主机模式)访问12.0.0.1
看了以上关于LVS负载均衡群集之NAT模式搭建环境及操作步骤详解,如果大家还有什么地方需要了解的可以在创新互联行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,创新互联技术工程师在行业内拥有十几年的经验了。
分享文章:LVS负载均衡群集之NAT模式搭建环境及操作步骤详解
URL分享:http://ybzwz.com/article/gpiejp.html