LVS-NAT模式部署

news2024/10/7 12:19:21

目录

一、环境准备

1、准备三台centos服务器

2、实验拓扑

3、NAT模式介绍

 二、LVS-NAT模式部署

1、给lvs服务器安装LVS

2、新建LVS集群

3、添加Real Server服务器节点

4、开启路由转发

5、给后端web服务器配置网关

6、效果测试


一、环境准备

1、准备三台centos服务器

服务器名称主机名IP备注
LVS调度服务器lvs

ens33:192.168.2.10(内网)

ens38:192.168.1.10(外网)

关闭selinux和firewalld
Web1网站服务器web1ens33:192.168.2.20(内网)关闭selinux和firewalld
Web2网站服务器web2ens33:192.168.2.30(内网)关闭selinux和firewalld

注:如果是vmware虚机模拟,建议将两个网段都使用主机模式,如果一个NAT、一个主机模式,会出现LVS转发得时候TCP三次握手失败,在LVS端查看ipvsadm -Lnc,出现tcp状态为SYN_RECV,导致访问VIP页面无法访问。

2、实验拓扑

 如上图,其中:前台Director Server(LVS服务器)上配置VIP和DIP。VIP是虚拟IP,为公网IP。DIP是负载均衡器IP,私有IP,同时也是后台服务器指向的网关。Real Server上配置开启web服务,网关指向DIP。

3、NAT模式介绍

(下图IP并非本次实验实际IP,仅供模式介绍参考)

 NAT模式实际是将LVS当成路由器(linux系统本身也是软路由),将外网IP请求转换成内网IP,并按照指定算法(比如轮询),将请求转发给Real Server。其中web服务器收到请求的source源地址和destination目的地址不是一个网段,所以要配网关,web服务器的网关就是LVS服务器的地址,LVS有两个网段地址,web网关地址应选择与自己同网段的那个IP。

 二、LVS-NAT模式部署

1、给lvs服务器安装LVS

#lvs实际已经集成到linux内核中,这里ipvsadm只是lvs管理工具
yum install ipvsadm -y

【ipvsadm命令】:

创建虚拟服务器

  • -A     添加虚拟服务器
  • -t      设置集群地址(VIP) tcp/udp,-t代表tcp,-u代表udp,后面跟集群IP,VIP
  • -s      指定调度算法,其中:

                         rr表示轮询;

                         wrr表示加权轮询;

                         lc最小连接;

                         wlc加权最小连接;

                         sh源地址哈希

2、新建LVS集群

ipvsadm -A -t 192.168.1.10:80 -s rr

ipvsadm -Ln  #查看集群规则

3、添加Real Server服务器节点

ipvsadm添加、删除服务器节点参数:

-a      添加真实服务器

-d      删除真实服务器

-r       指定真实服务器(Real Server)的地址

-m     使用NAT模式;另外 -g 对应DR模式、-i 对应TUN模式

-w     为节点服务器设置权重,默认为1,只有设置加权轮询或者加权最小连接才生效

#将两个web服务器加入LVS集群,-m表示为NAT模式
ipvsadm -a -t 192.168.1.10:80 -r 192.168.2.20:80 -m
ipvsadm -a -t 192.168.1.10:80 -r 192.168.2.30:80 -m

#补充:如果想删除节点,将-a换成-d即可
#ipvsadm -d -t 192.168.1.10:80 -r 192.168.2.30:80 -m
#查看规则
ipvsadm -Ln

 如上图,当用户访问192.168.1.10:80的时候,LVS就会将请求平均轮询到192.168.2.20:80和192.168.2.30:80服务器上,Masq代表NAT模式。

4、开启路由转发

因为LVS的工作原理是路由转发,所以LVS调度服务器需要开启路由转发

vim /etc/sysctl.conf   #添加内容如下

sysctl -p  #生效配置
cat /proc/sys/net/ipv4/ip_forward   #验证是否已打开

5、给后端web服务器配置网关

         原理:前台LVS调度服务器上配置VIP和DIP。VIP是虚拟IP,为公网IP。DIP是负载均衡器IP,私有IP,同时也是后台服务器指向的网关。real server上配置开启httpd服务,网关指向DIP。

        在虚拟机环境中,前台负载均衡服务器上的两个网卡可以用桥接和仅主机模式实现。DIP和后台real server的Ip要求在统一网段。

        同时确保防火墙关闭或对实验主机放行。建议关闭selinux。记得开启real server的80端口。

(1)给Web1服务器配置网关

nmcli connection modify ens33 ipv4.method manual ipv4.gateway 192.168.1.10

nmcli connection down ens33 && nmcli connection up ens33   #重启网卡

(2)给Web2服务器配置网关

nmcli connection modify ens33 ipv4.method manual ipv4.gateway 192.168.1.10

nmcli connection down ens33 && nmcli connection up ens33   #重启网卡

6、效果测试

(1)准备Web服务

在web1和web2服务器分别搭建一个监听端口为80的web服务器,可以使用Nginx、tomcat等可以,并在html页面做好标识,以便测试效果:

Nginx安装、配置与概述_桂安俊@kylinOS的博客-CSDN博客

(2)客户端测试

访问LVS调度服务器的外网IP:

如上可以看到轮询负载均衡效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/19929.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ctfhub-web-warmup

打开题目链接 是一张图 查看源代码 提示source.php 访问这个文件 得到源码 <?phphighlight_file(__FILE__);class emmm{public static function checkFile(&$page){$whitelist ["source">"source.php","hint">"hint.php…

Java毕业设计项目_企业级实战全栈项目中信CRM

【教程、代码】文章底部 1.学习目标视频教程目录【教程、代码】文章底部2.CRM 系统概念与项目开发流程2.1. CRM基本概念 圈内存在这么一句话&#xff1a;“世上本来没有CRM&#xff0c;大家的生意越来越难做了&#xff0c;才有了CRM。”在同质化竞争时代&#xff0c;顾客资产尤…

[附源码]java毕业设计社区医院管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

RabbitMQ初步到精通-第六章-RabbitMQ之死信队列

目录 第六章-RabbitMQ之死信队列 1. 死信概念 2. 死信架构 3. 死信来源 3.1 消息 TTL 过期 3.2 队列达到最大长度&#xff08;队列满了&#xff0c;无法再添加数据到 mq 中&#xff09; 3.3 消息被拒绝&#xff08;basic.reject 或 basic.nack&#xff09;并且 requeuefa…

基于stm32单片机的智能恒温箱游泳池

资料编号&#xff1a;104 下面是相关功能视频演示&#xff1a; 104-基于stm32单片机的智能恒温箱游泳池控制系统Proteus仿真&#xff08;源码仿真全套资料&#xff09;功能介绍&#xff1a; 采用stm32单片机&#xff0c;程序可以设置最高值和最低值&#xff0c;当温度超过最高…

[笔记]vue从入门到入坟《五》vue-cli构建vue webpack项目

参考&#xff1a; 用vue-cli搭建vue项目 vue-cli 项目结构目录简介 文章目录前言一、Vue-cli介绍二、开始2.0 下载安装npm 以及gitnpm安装git安装2.1 全局安装 vue-cli2.2 创建项目目录介绍三、常见问题总结前言 一、Vue-cli介绍 官网 简单地说就是构建vue项目的工具包&#…

SpringBoot SpringBoot 开发实用篇 5 整合第三方技术 5.1 缓存的作用

SpringBoot 【黑马程序员SpringBoot2全套视频教程&#xff0c;springboot零基础到项目实战&#xff08;spring boot2完整版&#xff09;】 SpringBoot 开发实用篇 文章目录SpringBootSpringBoot 开发实用篇5 整合第三方技术5.1 缓存的作用5.1.1 缓存介绍5.1.2 小结5 整合第三…

【计算机组成原理Note】5.3 CPU数据通路(CPU内部总线+专用数据通路)

5.3.1 数据通路-CPU内部单总线方式 这是第一节的图&#xff0c;将其部件换到一边&#xff1a; 5.3.1.1 CPU内部单总线方式 内部总线是指同一部件&#xff0c;如CPU内部连接各寄存器及运算部件之间的总线; 系统总线是指同一台计算机系统的各部件&#xff0c;如CPU、内存、通道…

C++类型转换+特殊类的设计+单例模式+IO流+空间配置器

索引类型转换(1).C语言的类型转换(2).C四种类型转换a.static_castb.reinterpret_castc.const_castd.dynamic_castvolatile关键字(了解即可)RTTL特殊类的设计(1).设计一个类不能支持拷贝(2).设计一个类&#xff0c;只能在堆上创建对象(3).设计一个类&#xff0c;只能在栈上创建对…

[C++数据结构](33)图,图的遍历,最小生成树,最短路径算法详解

文章目录图的基本概念图的存储结构邻接矩阵邻接表实现图的遍历广度优先遍历深度优先遍历最小生成树Kruskal 算法Prim 算法最短路径Dijkstra 算法Bellman-Ford 算法Bellman-Ford 算法的队列优化Floyd 算法图的基本概念 图(Graph)是由顶点集合及顶点间的关系组成的一种数据结构&…

uni-app入门:常用事件绑定与数据同步

1.常见事件与事件绑定 1.1点击事件bindtap 1.2 文本输入事件bindinput 1.3 切换事件bindtouchend 2.数据同步 2.1事件回调 2.2逻辑层中page对象中的中数据如何进行改变 2.3页面触发事件如何传参到page中数据 …

Android 基础知识1-开发环境搭建

1.1 Android开发准备工作 配置Android开发环境之前&#xff0c;首先需要了解Android对操作系统的要求。它可以使用Windows XP 已经以上版本、Mac OS 、Linux等操作系统&#xff0c;我是以Windows系统为例学习以及开发的。 1.2 开发包以及其工具的安装和配置 Android以Java作为…

内蒙古工程学院无线网络设计与规划

摘 要 I ABSTRACT II 第1章 绪论 1 1.1选题背景及意义 1 1.1.1选题背景 1 1.1.2选题意义 1 1.1.3国内外研究现状 2 1.2需求分析 3 1.2.1建设背景 3 1.2.2总体建设目标 4 1.2.4具体实施目标 5 1.3校园无线网在教育中的发展 6 第2章 无线网络的应用 7 2.1 无线网络的概述 7 2.1.1…

【毕业设计】60-基于ZigBee无线智能消防\烟雾报警逃生系统设计(原理图工程、源代码、低重复率参考文档、实物图)

【毕业设计】60-基于ZigBee无线智能消防\烟雾报警逃生系统设计&#xff08;原理图工程、源代码、低重复率参考文档、实物图&#xff09; 文章目录【毕业设计】60-基于ZigBee无线智能消防\烟雾报警逃生系统设计&#xff08;原理图工程、源代码、低重复率参考文档、实物图&#x…

Mybatis的一级缓存

目录前置生效场景一场景二失效场景一场景二场景三场景四场景五前置 什么是一级缓存: mybatis 默认开启一级缓存, SQLSession会话缓存, 每个SQLSession都会有各自的缓存 以下会演示一级缓存生效/失效的场景 项目地址: https://gitee.com/xmaxm/test-code/blob/master/chaim-cac…

初识golang微服务框架kratos

前言 今天给大家介绍一下Kratos&#xff0c;Kratos 一套轻量级 Go 微服务框架&#xff0c;包含大量微服务相关框架及工具,使用Kratos的原因主要是感觉原来使用的go-kit工具并不是很方便&#xff0c;期望用上kratos后开发会更快捷一些。 Kratos名字根据官方的説法是来源于:《战…

灵界的科学丨六、星际通信新科技──寻找外星人

摘自李嗣涔教授《灵界的科学》 外星先进文明科技领先地球的关键&#xff0c; 是外星人掌握了意识的物理&#xff0c; 能够制造仿照天眼的仪器&#xff0c; 自由进出虚数空间遨游宇宙&#xff0c;同时创造出瞬间科技。 人类未来学习的典范&#xff0c;就在天上无数的外星先进…

数据结构--线性表之顺序表

1.线性表定义 线性表&#xff08;List&#xff09;&#xff1a;零个或多个数据元素的有限序列。 线性表的数据集合为{a1,a2,…,an}&#xff0c;假设每个元素的类型均为DataType。其中&#xff0c;除第一个元素a1外&#xff0c;每一个元素有且只有一个直接前驱元素&#xff0c…

第三十三篇 transition-group 列表过渡

上一篇内容讲到的是transiotion&#xff0c;其中还记得有一个报错吗&#xff1f;如下&#xff1a; 先来回顾一下&#xff0c;<transition> 只能用于单个元素&#xff0c;如果在<transition>单中并列两个<p>标签&#xff0c;那么这样一来就会报以上这个错误&a…

六、表空间管理

六、表空间管理 1、查看表空间 使用DM Manager工具&#xff1a; 代码&#xff1a; -- 1、查看表空间名 select tablespace_name FROM SYS.DBA_TABLESPACES;-- 2、查看表空间名、表空间对应的数据文件地址、状态 select tablespace_name,file_name,status FROM dba_data_files;…