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
相关推荐
小辰记事本2 小时前
从零读懂RoCEv2数据包构造:从WQE到线缆上的完整旅程
服务器·网络·网络协议·rdma
小鹏linux3 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
北京耐用通信3 小时前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
在角落发呆4 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
齐潇宇4 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警
江公望5 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器
哎呦,帅小伙哦5 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
张小姐的猫6 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
YMWM_6 小时前
UDP协议详解:从原理到Python实践
网络·网络协议·udp
pengyi8710156 小时前
共享 IP 与独享 IP 怎么选?被封后升级方案避坑
网络·网络协议·tcp/ip