LVS实验——部署NAT模式集群

目录

一、实验需求

二、实验环境搭建

1、LVS

2、webserver1

3、webserver2

三、搭建

1、LVS

2、webserver

3、在LVS中进行检测测试

4、保存调度命令


LVS简介

Linux Virtual Server,负载调度器,内核集成

VS: Virtual Server,负责调度 RS:RealServer,负责真正提供服务

工作原理

VS根据请求报文的目标IP和目标协议及端口将其调度转发至某RS,根据调度算法来挑选RS

一、实验需求

1、实验设备

一台测试机、一台LVS、两台web服务器

2、设备环境要求

lvs :双网卡 仅主机 和nat

webserver: 仅主机

1.Director 服务器采用双网卡,一个是桥接网卡连接外网,一个是仅主机网卡与后端Web服务器相连

2.Web服务器采用仅主机网卡与director相连

3.Web服务器网关指向192.168.0.100

4.后端web服务器不需要连接外网

二、实验环境搭建

|------------|--------------------------------|----------------|-----------|
| 主机名 | IP | VIP | 角色 |
| lvs | 192.168.0.150 | 172.25.254.150 | 调度器(VS) |
| webserver1 | 192.168.0.10, 网关:192.168.0.150 | null | 真实服务器(RS) |
| webserver2 | 192.168.0.20, 网关:192.168.0.150 | null | 真实服务器(RS) |
| test | 172.25.254.131 | | 测试机 |

1、LVS

bash 复制代码
vmset.sh eth1 192.168.0.150 lvs.zx.org        # 增添一块网卡,设置为"仅主机模式"
vmset.sh eth0 172.25.254.150 lvs.zx.org
# 该命令使用前提------配置有vmset.sh脚本
bash 复制代码
vim /etc/NetworkManager/system-connections/eth1.nmconnection     #修改内容如图片
nmcli connection reload    # 修改之后重启
nmcli connection up eth1    

在LVS中启用内核路由功能 :

2、webserver1

网卡设置为"仅主机模式",webserver2同样。

bash 复制代码
vmset.sh eth0 192.168.0.10 webserver1.zx.org
bash 复制代码
[root@webserver1 ~]# vim /etc/NetworkManager/system-connections/eth0.nmconnection 
[root@webserver1 ~]# nmcli connection reload 
[root@webserver1 ~]# nmcli connection up eth0

3、webserver2

bash 复制代码
vmset.sh eth0 192.168.0.20 webserver2.zx.org
bash 复制代码
[root@webserver2 ~]# vim /etc/NetworkManager/system-connections/eth0.nmconnection 
[root@webserver2 ~]# nmcli connection reload 
[root@webserver2 ~]# nmcli connection up eth0

三、搭建

1、LVS

(1)安装ipvsadm

bash 复制代码
 yum install ipvsadm -y

(2)添加调度策略

cpp 复制代码
ipvsadm -Ln    # 查看策略
cat /etc/sysconfig/ipvsadm-config    # 查看策略主配置文件内容

[root@apache ~]# ipvsadm -A -t 172.25.254.150:80 -s rr 
# -A:增加虚拟server    -t:指定TCP协议    -s:指定调度算法
# 172.25.254.150:80    访问该地址的80端口时调用策略

[root@apache ~]# ipvsadm -a -t 172.25.254.150:80 -r 192.168.0.10:80 -m
[root@apache ~]# ipvsadm -a -t 172.25.254.150:80 -r 192.168.0.20:80 -m
# -a:增加realserver    -r:realserver地址    -m:nat模式

2、webserver

(1)安装apache

bash 复制代码
[root@webserver1 ~]# dnf install httpd -y
[root@webserver2 ~]# dnf install httpd -y

(2)添加测试内容

bash 复制代码
[root@webserver1 ~]# echo webserver1 - 192.168.0.10 > /var/www/html/index.html
[root@webserver1 ~]# systemctl enable --now httpd    # 启用apache服务

[root@webserver2 ~]# echo webserver2 - 192.168.0.20 > /var/www/html/index.html
[root@webserver2 ~]# systemctl enable --now httpd    # 启用apache服务

3、在LVS中进行检测测试

4、保存调度命令

bash 复制代码
[root@lvs ~]# ipvsadm-save 
[root@lvs ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
相关推荐
Fireworkitte1 小时前
gRPC和http长轮询
网络·网络协议·http
LuLaLuLaLeLLLLLL2 小时前
RPC 框架学习笔记
网络·网络协议·rpc
冰橙子id3 小时前
linux-远程访问管理(sshd,scp,sftp)
linux·网络·ssh
光电的一只菜鸡4 小时前
ubuntu之坑(十五)——设备树
linux·数据库·ubuntu
saynaihe5 小时前
ubuntu 22.04 anaconda comfyui安装
linux·运维·服务器·ubuntu
企鹅与蟒蛇5 小时前
Ubuntu-25.04 Wayland桌面环境安装Anaconda3之后无法启动anaconda-navigator问题解决
linux·运维·python·ubuntu·anaconda
小蜜蜂爱编程6 小时前
ubuntu透网方案
运维·服务器·ubuntu
程序设计实验室6 小时前
小心误关了NAS服务器!修改Linux的电源键功能
linux·nas
liulilittle7 小时前
.NET ExpandoObject 技术原理解析
开发语言·网络·windows·c#·.net·net·动态编程
头发那是一根不剩了7 小时前
nginx:SSL_CTX_use_PrivateKey failed
运维·服务器