🏡作者主页:
🐧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 配置到文件。
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
进行访问测试
客户端访问测试
进行访问测试
客户端访问测试
查看连接数
发表评论