LVS负载均衡群集及LVS-NAT部署(热爱漫无边际,生活自有分寸)(二)

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
公网NAT网关,每月750个小时 15CU
传统型负载均衡 CLB,每月750个小时 15LCU
简介: LVS负载均衡群集及LVS-NAT部署(热爱漫无边际,生活自有分寸)(二)

二、LVS-NAT部署实操


LVS调度器作为web服务器池的网关,LVS两块网卡,分别连接内外网,使用轮询(rr)调度算法




负载均衡器centos7-4 ens33:192.168.109.134   ens36:12.0.0.254


web服务器1centos7-2 (http)192.168.109.132


web服务器2centos7-3 (nginx)192.168.109.133


NFS服务器centos7-1 192.168.109.131


客户端w7:12.0.0.200


注:web服务一台用httpd,一台用nginx

#每台机子关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

2.1 NFS服务器配置

NFS服务器centos7-1 192.168.109.131

#下载nfs服务所需的包
yum install nfs-utils.x86_64 rpcbind -y







2.2 web1配置

web服务器1centos7-2 (http)192.168.109.132

#安装http服务,并开启
[root@web1 ~]# yum install -y httpd
[root@web1 ~]# systemctl start httpd
[root@web1 ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
#挂载nfs服务器
[root@web1 ~]# mount 192.168.109.131:/opt/nfs/stevelu /var/www/html/
[root@web1 ~]# cd /var/www/html/
[root@web1 html]# ls
index.html
[root@web1 html]# cat index.html 
i am stevelu


2.3 web2配置

web服务器2centos7-3 (nginx)192.168.109.133


安装nginx服务

#先安装epel源,在用yum安装nginx服务
先安装[root@web2 ~]# yum install -y epel-release
[root@web2 ~]# yum install -y nginx
[root@web2 ~]# systemctl start nginx
[root@web2 ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
#挂载nfs服务器
[root@web2 ~]# mount 192.168.109.131:/opt/nfs/gyq /usr/local/nginx/html


2.4 负载均衡器配置

负载均衡器centos7-4 ens33:192.168.109.134 ens36:12.0.0.254




#设置外网网卡
[root@7-4 network-scripts]# cp ifcfg-ens33 ifcfg-ens36
[root@7-4 network-scripts]# vim ifcfg-ens36
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO=static
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens36"
DEVICE="ens36"
ONBOOT="yes"
IPADDR=12.0.0.254
NETMASK=255.255.255.0
GATEWAY=12.0.0.2
[root@7-4 network-scripts]# systemctl restart network
#重启网卡

#开启IP转发
[root@7-4 ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward=1
#加载
[root@7-4 ~]# sysctl -p
net.ipv4.ip_forward = 1
#设置防火墙相关规则
 [root@7-4 ~]# iptables -F
[root@7-4 ~]# iptables -F -t nat
[root@7-4 ~]# iptables -t nat -A POSTROUTING -s 192.168.109.0/24 -o ens3
[root@7-4 ~]# iptables -nL -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  192.168.109.0/24     0.0.0.0/0            to:12.0.0.
[root@7-4 ~]#


#下载ipvsadm工具
[root@7-4 ~]# yum install -y ipvsadm
#先保存源配置生成文件,没有这个文件服务起不来
[root@7-4 ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@7-4 ~]# systemctl start ipvsadm
[root@7-4 ~]# systemctl enable ipvsadm
Created symlink from /etc/systemd/system/multi-user.target.wants/ipvsadm.service to /usr/lib/systemd/system/ipvsadm.service.
#加载全部模块
[root@7-4 ~]# for i in $(ls /usr/lib/modules/$(uname -r)/kernel/net/netfilter/ipvs|grep -o "^[^.]*");do echo $i; /sbin/modinfo -F filename $i >/dev/null 2>&1 && /sbin/modprobe $i;done
ip_vs_dh
ip_vs_ftp
ip_vs
ip_vs_lblc
ip_vs_lblcr
ip_vs_lc
ip_vs_nq
ip_vs_pe_sip
ip_vs_rr
ip_vs_sed
ip_vs_sh
ip_vs_wlc
ip_vs_wrr
[root@7-4 ~]# ipvsadm -C
[root@7-4 ~]# ipvsadm -A -t 12.0.0.254:80 -s rr -p 10
[root@7-4 ~]# ipvsadm -a -t 12.0.0.254:80 -r 192.168.109.132:80 -m
[root@7-4 ~]# ipvsadm -a -t 12.0.0.254:80 -r 192.168.109.133:80 -m
[root@7-4 ~]# ipvsadm 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  7-4:http rr persistent 10
  -> 192.168.109.132:http         Masq    1      0          0         
  -> 192.168.109.133:http         Masq    1      0          0 
[root@7-4 ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
#也可通过 (ipvsadm-save < 文件名 )导入配置文件 
#查看相关状态
[root@7-4 ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  12.0.0.254:80        rr          persistent 10
          VIP地址      端口号策略        长连接时间10秒
  -> 192.168.109.132:80           Masq    1      0          0         
  -> 192.168.109.133:80           Masq    1      0          0   
         节点服务器                nat模式 权重  正在连接   断开连接



2.5 客户机访问

客户端w7:12.0.0.200


客户端设置相应的IP地址和网关



关闭客户端的防火墙




改完后重启网卡





总结


部署LVS步骤:


1.加载ip_vs模块,安装ipvsadm工具


2.开启路由准发


3.新建LVS虚拟服务器并添加节点服务器


4.配置节点服务器


建立测试网站

挂载NFS共享存储

建立测试网页


5.保存规则并测试

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
打赏
0
0
0
0
14
分享
相关文章
LVS详解(五)——LVS NAT模式实战
LVS详解(五)——LVS NAT模式实战
150 3
LVS+Keepalived:实现高效软负载均衡的利器
本文介绍了如何使用LVS(Linux Virtual Server)和Keepalived搭建高可用负载均衡集群。LVS通过不同调度算法将请求转发给后端服务器,而Keepalived基于VRRP协议实现服务高可用,避免IP单点故障。具体步骤包括环境准备、安装配置ipvsadm和Keepalived、启动服务及测试。文中还详细解释了配置文件中的关键参数,并提供了故障转移测试方法。最后,文章简要对比了软件、硬件和云负载均衡方案的特点,帮助读者选择合适的负载均衡策略。
202 4
LVS+Keepalived 负载均衡
LVS+Keepalived 负载均衡
113 8
LVS+Keepalived 负载均衡
LVS+Keepalived 负载均衡(二)28-1
【8月更文挑战第28天】LVS+Keepalived 负载均衡 配置 LVS VIP
82 5
使用LVS搭建集群实现负载均衡(二)安装使用
【8月更文挑战第8天】使用LVS搭建集群实现负载均衡(二)安装使用
96 5
使用LVS搭建集群实现负载均衡(一)
【8月更文挑战第8天】使用LVS搭建集群实现负载均衡
218 5
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等