LVS-DR模式+keepalived+nginx+tomcat实现动静分离、负载均衡、高可用实验

实验条件:

test2——20.0.0.20——主服务器——ipvsadm、keepalived服务

test3——20.0.0.30——备服务器——ipvsadm、keepalived服务

nginx5——20.0.0.51——后端真实服务器1(tomcat的代理服务器)——nginx服务

nginx6——20.0.0.61——后端真实服务器2(tomcat的代理服务器)——nginx服务

tomcat——20.0.0.12——后端真实服务器3——tomcat服务

tomcat——20.0.0.22——后端真实服务器4——tomcat服务

VIP地址:20.0.0.200

test1客户端

实验步骤:

  1. 配置test2主服务器

(1)下载ipvsadm、keepalived服务

重启服务

保存配置文件:ipvsadm-save > /etc/sysconfig/ipvsadm

(2)备份keepalived服务的配置文件

(3)修改keepalived服务的配置文件

(4)查看vip地址和集群

(5)关闭主服务器的转发功能和重定向

net.ipv4.ip_forward = 0

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.ens33.send_redirects = 0

2、配置test3主服务器

(1)下载ipvsadm、keepalived服务

重启服务

保存配置文件:ipvsadm-save > /etc/sysconfig/ipvsadm

(2)备份keepalived服务的配置文件

(3)远程复制并修改主服务器keepalived服务的配置文件

(4)查看vip地址和集群

(5)关闭备服务器的转发功能和重定向

3、配置nginx5(test的后端真实服务器,tomcat的代理服务器)

(1)安装nginx服务

(2)设置回环接口

(3)绑定回环接口

(4)内核参数优化(只让RIP返回响应结果)

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

(5)设置静态页面

(6)设置反向代理(作为tomcat的代理服务器访问tomcat)

4、配置nginx5(test的后端真实服务器,tomcat的代理服务器)

(1)安装nginx服务

(2)设置回环接口

(3)绑定回环接口

(4)内核参数优化(只让RIP返回响应结果)

(5)设置静态页面

(6)设置反向代理(作为tomcat的代理服务器访问tomcat)

5、配置后端真实服务器的动态页面

(1)tomcat1

用./shutdown.sh和./startup.sh脚本文件启动服务,不是用restart

(2)tomcat2

6、测试

(1)静态页面

(2)动态页面

(3)模拟主服务器故障

测试

(4)模拟主服务器恢复

测试

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

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

相关文章

Echarts渲染不报错但是没有内容

🔥博客主页: 破浪前进 🔖系列专栏: Vue、React、PHP ❤️感谢大家点赞👍收藏⭐评论✍️ 问题:在开发项目的时候使用了Echarts但是好端端的忽然就不渲染了 感觉很无语啊,毕竟好好的就不渲染了&am…

msigdbr hallmarks gsea broad研究所

使用msigdbr r包 #BiocManager::install("msigdb") #https://www.gsea-msigdb.org/gsea/msigdb #https://cran.r-project.org/web/packages/msigdbr/vignettes/msigdbr-intro.html #https://bioconductor.org/packages/release/data/experiment/vignettes/msigdb/ins…

故障诊断入门书籍资料免费领取

前言 本期分享免费提供9本故障诊断领域相关的书籍资料,可自行下载 一、主要内容 二、书籍获取

基于STC系列单片机实现定时器扫描数码管显示定时器/计数器产生频率的功能

#define uchar unsigned char//自定义无符号字符型为uchar #define uint unsigned int//自定义无符号整数型为uint #define NixieTubeSegmentCode P0//自定义数码管段码为单片机P0组引脚 #define NixieTubeBitCode P2//自定义数码管位码为单片机P2组引脚 sbit LED P1^0;//位定义…

【Hello Algorithm】滑动窗口内最大值最小值

滑动窗口介绍 滑动窗口是一种我们想象中的数据结构 它是用来解决算法问题的 我们可以想象出一个数组 然后再在这个数组的起始位置想象出两个指针 L 和 R 我们对于这两个指针做出以下规定 L 和 R指针只能往右移动L指针不能走到R指针的右边我们只能看到L指针和R指针中间的数字 …

不同碳化硅晶体面带来的可能性

对于非立方晶体,它们天生具有各向异性,即不同方向具有不同的性质。以碳化硅晶体面为例: 4H-SIC和6H-SIC的空间群是P63mc,点群是6mm。两者都属于六方晶系,具有各向异性。3C-SIC的空间群是F-43m,点群是-43m。…

革新技术,释放创意 :Luminar NeoforMac/win超强AI图像编辑器

Luminar Neo,一个全新的AI图像编辑器,正以其强大的功能和独特的创意引领着图像编辑的潮流。借助于最新的AI技术,Luminar Neo为用户提供了无限可能的图像编辑体验,让每一个想法都能被精彩地实现。 Luminar Neo的AI引擎强大而高效&…

MySQL之事务、存储引擎、索引

文章目录 前言一、事务1.概念2.操作(1)开启事务(2)提交事务(3)回滚事务 3.四大特性ACID(1)原子性(Atomicity)(2)一致性(Co…

【C++】STL容器适配器入门:【堆】【栈】【队列】(16)

前言 大家好吖,欢迎来到 YY 滴C系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! 目录 一.容器适配器的概念二.为什么stack和q…

php使用lunar实现农历、阳历、节日等功能

lunar是一个支持阳历、阴历、佛历和道历的日历工具库,它开源免费,有多种开发语言的版本,不依赖第三方,支持阳历、阴历、佛历、道历、儒略日的相互转换,还支持星座、干支、生肖等。仅供参考,切勿迷信。 官…

4.5 final修饰符

在Java中,final修饰符可以修饰类、属性和方法,final有“最终”、“不可更改”的含义,所以在使用final关键字时需要注意以下几点: 使用final修饰类,则该类就为最终类,最终类不能被继承。 使用final修饰方法…

C++ list 模拟实现

目录 1. 基本结构的实现 2. list() 3. void push_back(const T& val) 4. 非 const 迭代器 4.1 基本结构 4.2 构造函数 4.3 T& operator*() 4.4 __list_iterator& operator() 4.5 bool operator!(const __list_iterator& it) 4.6 T* operator->…

XHSELL连接虚拟机的常见问题(持续更新)

问题一:找不到匹配的host key算法。 检查XSHELL的版本,如果是旧版本,就有可能不支持新的算法,解决方法就是安装最新版本的XSHELL。 注:本人使用xshell5连接ubuntu22.04.3,出现了上述问题,将xsh…

数据结构和算法(15):排序

快速排序 分治 快速排序与归并排序的分治之间的不同: 归并排序的计算量主要消耗于有序子向量的归并操作,而子向量的划分却几乎不费时间; 快速排序恰好相反,它可以在O(1)时间内,由子问题的解直接得到原问题的解&#…

万字解析设计模式之工厂方法模式与简单工厂模式

一、概述 1.1简介 在java中,万物皆对象,这些对象都需要创建,如果创建的时候直接new该对象,就会对该对象耦合严重,假如我们要更换对象,所有new对象的地方都需要修改一遍,这显然违背了软件设计的…

至高直降3000元,微星笔记本双11爆款推荐、好评有礼拿到手软

今年双11来的更早一些,微星笔记本先行的第一波雷影17促销活动,就已经领略到玩家们满满的热情。开门红高潮一触即发,微星笔记本双11活动周期至高直降3000元,众多爆款好货已经开启预约预售:有硬核玩家偏爱的性能双雄&…

接口返回响应,统一封装(ResponseBodyAdvice + Result)(SpringBoot)

需求 接口的返回响应&#xff0c;封装成统一的数据格式&#xff0c;再返回给前端。 依赖 对于SpringBoot项目&#xff0c;接口层基于 SpringWeb&#xff0c;也就是 SpringMVC。 <dependency><groupId>org.springframework.boot</groupId><artifactId&g…

Web APIs——事件流

一、事件流 1.1 事件流与两个阶段说明 事件流指的是事件完整执行过程中的流动路径 说明&#xff1a;假设页面里有个div&#xff0c;当触发事件时&#xff0c;会经历两个阶段&#xff0c;分别是捕获阶段、冒泡阶段 简单来说&#xff1a;捕获阶段是 从父到子 冒泡阶段是从子到父…

震惊! 全方位解释在测试眼里,什么是需求?为什么要有需求?深入理解需求——图文并茂,生活举例,简单好理解

1、什么是需求&#xff1f; 需求定义(官方) 满足用户期望或正式规定文档&#xff08;合同、标准、规范&#xff09;所具有的条件和权能&#xff0c;包含用户需求和软件需求 用户需求&#xff1a;可以简单理解为甲方提出的需求&#xff0c;如果没有甲方&#xff0c;那么就是终端…

查询计算机GUID码

如何查询计算机GUID码&#xff08;全局唯一标识符&#xff09; 1.快键键WINR进入注册表 2.找到\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography路径 3.双击MachineGuid项即可显示计算机GUID码