🏡作者主页:点击!
🐧Linux基础知识(初学):点击!
🐧Linux高级管理专栏:点击!
🔐Linux中firewalld防火墙:点击!
⏰️创作时间:2024年7月9日14点11分
🀄️文章质量:94分
目录
前言——
LVS(Linux Virtual Server)是一种高性能、高可用的服务器集群系统,它能够通过IP负载均衡技术实现网络服务的负载均衡。NAT模式是LVS中最常用的一种工作模式。
在NAT模式下,LVS集群包含三种角色的节点:
负载均衡器(Director Server):这是一台运行LVS软件的服务器,它接收来自客户端的请求,并根据调度算法将请求转发至真实服务器(Real Server)。
真实服务器(Real Server):这是一组提供实际服务的服务器,它们可以是Web服务器、数据库服务器等。
共享存储服务器(NFS Server):为了实现会话共享,真实服务器需要将会话数据存储在共享存储服务器上,通常使用NFS(Network File System)来实现。
NAT模式的工作流程如下:
- 客户端发送请求到负载均衡器的虚拟IP(VIP)地址。
- 负载均衡器根据调度算法选择一台真实服务器,并将客户端的请求通过网络地址转换(NAT)转发给该真实服务器。
- 真实服务器处理请求,并将响应数据直接发送回客户端。
配置LVS NAT模式需要以下步骤:
- 安装LVS软件包和内核模块。
- 在负载均衡器上配置虚拟IP(VIP)和真实服务器(RIP)池。
- 在负载均衡器上配置NAT规则和调度算法。
- 在真实服务器上配置共享存储(NFS)并挂载。
- 配置真实服务器的网关指向负载均衡器。
实验环境
网络配置
1.调度器(LVS)
cd /etc/sysconfig/network-scripts/ cp -p ifcfg-ens33 ifcfg-ens36 vim ifcfg-ens33 vim ifcfg-ens36
vim /etc/sysctl.conf sysctl -p 刷新 net.ipv4.ip_forward = 1
开启路由转发
重启网卡 测试连通性
systemctl restart network
安装
yum install -y ipvsadm
ipvsadm: 这是要安装的软件包名称。ipvsadm是Linux虚拟服务器管理工具,
2.两台Web服务器
网关需要指向LVS的ens33网卡IP
都安装httpd yum install -y httpd
3.检测群集
先做测试人为干预网页 检测集群是否正常 是否在两台web服务器上切换
第一台Web echo 1111111 > /var/www/html/index.html 第二台Web echo 2222222 > /var/www/html/index.html
配置完成之后打开或重启服务 systemctl restart httpd systemctl start httpd
进行访问测试是否可以访问页面 选择LVS调度器那台服务器
一切正常,可以访问(如果遇到不能访问的情况下 记得关闭防火墙)
4.调度器LVS配置
modprobe ip_vs
: 加载 IP 虚拟服务器内核模块。cat /proc/net/ip_vs
: 查看当前 IP 虚拟服务器的配置和状态。
[root@localhost ~]# modprobe ip_vs [root@localhost ~]# 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
ipvsadm-save > /etc/sysconfig/ipvsadm
: 保存当前 IPVS 配置到文件。
[root@localhost ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
ipvsadm -C
: 清除所有现有的 IPVS 配置。
[root@localhost ~]# ipvsadm -C
[root@localhost ~]# ipvsadm -A -t 192.168.140.100:80 -s rr [root@localhost ~]# ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.111:80 -m -w 1 [root@localhost ~]# ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.112:80 -m -w 1 [root@localhost ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
ipvsadm -A -t 192.168.140.100:80 -s rr
:
添加一个新的虚拟服务,IP 为 192.168.140.100,端口 80,使用轮询(Round Robin)调度算法。ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.111:80 -m -w 1
:
为虚拟服务添加一个真实服务器,IP 为 192.168.192.111,端口 80,使用 NAT 模式(-m),权重为 1。ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.112:80 -m -w 1
:
添加另一个真实服务器,IP 为 192.168.192.112,配置与上一个相同。ipvsadm-save > /etc/sysconfig/ipvsadm
: 再次保存 IPVS 配置到文件。
这些命令设置了一个简单的负载均衡器,将发往 192.168.140.100:80 的流量均匀分配到两个后端服务器(192.168.192.111:80 和 192.168.192.112:80)。使用 NAT 模式意味着源 IP 地址将被修改为负载均衡器的 IP。
systemctl start ipvsadm
客户端网关指向ens36 192.168.140.100
访问测试
可以看到这个页面一直在轮替切换 表示一切正常
4.NFS服务器
接下来配置NFS
yum install -y install rpcbind nfs-utils root@localhost ~]# vim /etc/exports [root@localhost ~]# mkdir /wwwroot [root@localhost ~]# vim /etc/exports
[root@localhost ~]# echo NFS SMQNZ /wwwroot/index.html [root@localhost ~]# systemctl start nfs rpcbind [root@localhost ~]# netstat -nultp | grep rpcbind udp 0 0 0.0.0.0:893 0.0.0.0:* 1142/rpcbind udp 0 0 0.0.0.0:111 0.0.0.0:* 1142/rpcbind udp6 0 0 :::893 :::* 1142/rpcbind udp6 0 0 :::111 :::* 1142/rpcbind
[root@localhost ~]# showmount -e Export list for localhost.localdomain: /wwwroot 192.168.192.0/24
showmount
命令用于显示NFS服务器上已经导出(exported)的目录列表。-e
选项表示显示远程主机已导出的目录列表。
5.NFS共享挂载
你执行的这些命令是在配置NFS服务,启动NFS服务器,查看导出的共享目录,并将远程NFS共享挂载到本地系统上。这种网络文件系统可以让多台Linux系统方便地共享数据。
在两台Web上操作
同样的操作 进行挂载
[root@localhost ~]# systemctl start nfs [root@localhost ~]# showmount -e 192.168.192.113 Export list for 192.168.192.113: /wwwroot 192.168.192.0/24 [root@localhost ~]# mount 192.168.192.113:/wwwroot /var/www/html [root@localhost ~]# df -hT
进行访问测试
客户端访问测试
进行访问测试
客户端访问测试
查看连接数