地址转换模式(LVS-NAT)
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,LVS 基本配置详解请参考博文:https://blog.51cto.com/14306186/2437030案例环境:实现结果如下:使用NAT模式的群集技术,LVS负载调度器是所有节点访问Inter
千家信息网最后更新 2025年02月23日地址转换模式(LVS-NAT)
LVS 基本配置详解请参考博文:https://blog.51cto.com/14306186/2437030
案例环境:
实现结果如下:
- 使用NAT模式的群集技术,LVS负载调度器是所有节点访问Internet的网关服务器,其200.0.0.1也作为整个群集的VIP地址。
- 使用轮询(rr)的调度算法。
- web1和web2先搭建web服务,分别准备不同的网页文件,供客户端访问,以此来确定client访问LVS服务器的200.0.0.1,可以访问到两台wbe服务器。
- 待client测试成功后,web1和web2便可以挂载NFS服务器提供的共享目录,以此来为client提供相同的网页文件。
一、准备:
1、先把网络调试至互通
2、准备系统镜像和相关的软件包,以便搭建httpd服务,和安装相关工具。这里为了方便,便直接使用系统映像中的安装包来搭建httpd服务。
3、配置防火墙策略放行流量(图个方便,我这里直接停掉了防火墙)
二、配置负载调度器:
开启路由转发功能:[root@localhost /]# vim /etc/sysctl.conf ................... // 省略部分net.ipv4.ip_forward = 1[root@localhost /]# sysctl -pnet.ipv4.ip_forward = 1
配置负载分配策略:
[root@localhost /]# modprobe ip_vs # 加载 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 是在负载调度器上使用的 LVS 群集管理工具,通过调用 ip_vs 模块来添加、删除服务器节点,以及查看群集的运行状态(需要手动安装)。
[root@localhost /]# yum -y install ipvsadm # 安装 ipvsadm[root@localhost /]# ipvsadm -v # 查看版本信息ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)
[root@localhost /]# ipvsadm -C # 清除原有策略[root@localhost /]# ipvsadm -A -t 200.0.0.1:80 -s rr [root@localhost /]# ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.10:80 -m -w 1[root@localhost /]# ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.20:80 -m -w 1[root@localhost /]# ipvsadm-save # 保存策略-A -t localhost.localdomain:http -s rr-a -t localhost.localdomain:http -r 192.168.1.10:http -m -w 1-a -t localhost.localdomain:http -r 192.168.1.20:http -m -w 1[root@localhost /]# systemctl enable ipvsadm.service # 设置为开机自启
配置节点服务器:
web1 配置:[root@localhost /]# yum -y install httpd # 安装 http 服务[root@localhost /]# echo test1.com > /var/www/html/index.html # 准备测试网页[root@localhost /]# systemctl start httpd # 开启服务[root@localhost /]# systemctl enable httpd # 开机自启
web2 配置:
[root@localhost /]# yum -y install httpd # 安装 http 服务[root@localhost /]# echo test2.com > /var/www/html/index.html # 准备测试网页[root@localhost /]# systemctl start httpd[root@localhost /]# systemctl enable httpd
当然,在实际生产环境时,网页内容都是一样的,这里为了区分验证从实验的成功与否,我写了两个内容不同的测试文件。
测试一下 LVS 是否在工作:
刷新网页:
三、NFS 共享存储服务:
搭建 NFS 共享使两台web服务器共同挂载同一个NFS服务器共享的目录,以此来提供相同的网页文件。
安装 nfs-utils、rpcbind 软件包:[root@localhost /]# yum -y install nfs-utils rpcbind # 安装软件包[root@localhost /]# systemctl enable nfs # 设置为开机自启[root@localhost /]# systemctl enable rpcbind
这两软件包我使用 rpm-qa 在Centos 7 上查看的时候是有的,具体这里本人也不是很清楚到底是不是安装系统时自带的,所以在做时还是敲一下这命令吧,以防万一嘛,如有大佬知道的,还烦请告知小弟。(拜谢)
设置共享目录:[root@localhost /]# mkdir -p /opt/wwwroot # 创建共享目录[root@localhost /]# vim /etc/exports # 修改 NFS 主配置文件/opt/wwwroot 192.168.2.0/24(rw,sync,no_root_squash)--rw:允许读写,ro 为只读--sync:表示同步写入--no_root_squash:当客户机以 root 身份访问时赋予本地的 root 权限(默认是 root_squash,将作为 nfsnobody 用户降权对待)[root@localhost wwwroot]# echo nfs.test.com > index.html # 准备测试文件
[root@localhost /]# systemctl restart rpcbind # 重启服务使配置生效[root@localhost /]# systemctl restart nfs[root@localhost /]# showmount -e # 查看本机发布的共享目录Export list for localhost.localdomain:/opt/wwwroot 192.168.2.0/24
在两台 web 主机上挂载 NFS 共享目录,并配置为开机自动挂载
[root@localhost /]# mount 192.168.2.1:/opt/wwwroot /var/www/html/ # 在两台 web 主机上都执行此操作[root@localhost /]# df -hT /var/www/html/ # 查看是否挂载成功Filesystem Type Size Used Avail Use% Mounted on192.168.2.1:/opt/wwwroot nfs4 50G 4.0G 47G 8% /var/www/html[root@localhost /]# vim /etc/fstab # 设为开机自动挂载192.168.2.1:/opt/wwwroot /var/www/html nfs defaults,_netdev 0 0
测试验证:
.
我们看到 NFS 上写的测试文件已经访问成功,但无论怎么刷新都不会变,这就说明 LVS 负载均衡也就成功了。
当LVS服务器重启后,LVS规则将会丢失,这就用到了备份,需要注意的是,备份时的主机名和恢复时的主机名必须一致,并且需要注意网卡优先的问题,否则在恢复后,会发现VIP(群集的虚拟IP)变成了LVS服务器的另一个IP地址
[root@localhost /]# ipvsadm-save > /etc/sysconfig/ipvsadm.bak # 先备份一分[root@localhost /]# ipvsadm -ln # 查看IP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn[root@localhost /]# ipvsadm-restore < /etc/sysconfig/ipvsadm.bak # 恢复策略[root@localhost /]# ipvsadm -lnIP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConnTCP 200.0.0.1:80 rr # 注意这里是否还是原来的 VIP -> 192.168.1.10:80 Masq 1 0 0 -> 192.168.1.20:80 Masq 1 0 0
服务
服务器
配置
测试
文件
网页
目录
准备
成功
主机
策略
软件
软件包
调度
备份
模块
系统
节点
地址
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全 应急演练报告
群星进服务器显示连接
湖北万词霸屏软件开发
服务器存储池怎么清理
软件开发客户不给尾款
阿里云服务器安全协议
网络安全周线上知识竞赛
网页报错数据库25
云服务器有云数据库吗
图数据库在道路网络的应用
网站服务器安全软件下载
湖北c语言软件开发哪家可靠
数据库连接服务器太慢
软件开发文档规范化
微信小程序配置服务器
流量超出数据库限制
淄博市网络安全协会
广东企业云空间工具云服务器
网络安全制度编制说明
我的世界手机版封神斗罗服务器
条码打印机怎么设置数据库
acces数据库怎么建立
浙江吾空网络技术有限公司
网络技术该入什么科目
叶少云服务器
考研复试数据库题型
手机使用云服务器访问twitter
基站属于服务器吗
龙华富士康服务器部门
数据库循环查询sql