基于 openEuler 构建 LVS-NAT 群集

1、环境准备

准备好下面四台台服务器:

|-------------|-------------------------------------------|--------------|
| 主机名 | IP | 角色 |
| openEuler-1 | 192.168.121.11(公网)、192.168.121.131.11(内网) | LVS |
| openEuler-2 | 192.168.131.12 | Real Server1 |
| openEuler-3 | 192.168.131.13 | Real Server2 |
| Rocky8 | 192.168.121.51 | Client |

2、Web服务器配置

在两台RS上安装并配置nginx服务:

复制代码
[root@openEuler-2 ~]# echo "web test page!(ip:`hostname -I`)" > /usr/share/nginx/html/index.html

[root@openEuler-2 ~]# systemctl restart nginx

[root@openEuler-2 ~]# curl localhost
this is test page!(ip:192.168.131.12 )

# 第二台RS配置同上

注意:RS的网关是lvs的DIP(内网地址)。

3、LVS开启路由转发

在lvs上:

复制代码
临时开启:
1、echo1>/proc/sys/net/ipv4/ip_forward
2、sysctl -w net.ipv4.ip_forward=1
永久开启:
修改文件 /etc/sysctl.conf
net.ipv4.ip forward=1
使生效:sysctl -p

4、LVS配置

在lvs上:

复制代码
[root@openEuler-1 ~]# ipvsadm -At 192.168.121.11:80 -s rr
[root@openEuler-1 ~]# ipvsadm -at 192.168.121.11:80 -r 192.168.131.12:80 -m
[root@openEuler-1 ~]# ipvsadm -at 192.168.121.11:80 -r 192.168.131.13:80 -m
[root@openEuler-1 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.121.11:80 rr
  -> 192.168.131.12:80            Masq    1      0          0
  -> 192.168.131.13:80            Masq    1      0          0

6、测试

在Client上:

复制代码
[root@localhost ~]# for ((i=1;i<10;i++))
> do
> curl 192.168.121.11
> done
web test page!(ip:192.168.131.13 )
web test page!(ip:192.168.131.12 )
web test page!(ip:192.168.131.13 )
web test page!(ip:192.168.131.12 )
web test page!(ip:192.168.131.13 )
web test page!(ip:192.168.131.12 )
web test page!(ip:192.168.131.13 )
web test page!(ip:192.168.131.12 )
web test page!(ip:192.168.131.13 )
相关推荐
Jia ming2 小时前
跟踪器与事件使用举例
linux·事件·跟踪器
生活很暖很治愈2 小时前
Linux——基础IO&软硬链接
linux·ubuntu
2401_858936882 小时前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
玄同7652 小时前
Git常用命令指南
大数据·git·elasticsearch·gitee·github·团队开发·远程工作
Roc.Chang2 小时前
Ubuntu 下 VLC 无法启动(Segmentation fault)终极解决方案
linux·ubuntu·vlc·媒体播放
松涛和鸣3 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂3 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
吠品3 小时前
命令行揭示SSL证书真相
https·github·ssl
wVelpro4 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
、BeYourself4 小时前
解决git@github.com: Permission denied (publickey)
github