如何部署LVS + keepalived 负载均衡高可用集群

news2024/11/27 3:05:23

目录

一、LVS架构

概念

L4和L7负载均衡的区别

keepalive故障自动切换

抢占与非抢占

二、keepalived管理LVS负载均衡器

LVS集中节点的健康检查

三、部署LVS + keeplived 高可用集群

第一步 关闭防火墙和安全机制

         第二步 安装工具

第三步 手动配置模块

第四步 编辑策略配置文件

第五步 查看策略设置

第六步 创建虚拟网卡

第七步 修改虚拟网卡配置

第八步 重启网卡并启动虚拟网卡

第九步 添加路由

第十步 创建备份文件启动服务

第十一步 添加ipvsadm策略并启动

第十二步 配置备用LVS服务器

第十三步 配置Web节点服务器

第十四步 安装HTTP服务

         第十五步 启动服务

第十六步 添加网页执行文件

第十七步 创建虚拟地址

第十八步 重启服务并启动虚拟IP地址

第十九步 添加路由

第二十步 编辑策略配置文件

第二十一步 检查策略配置

第二十二步 部署第二台Web服务器

第二十三步 修改主设备的keepalive配置内容进行备份

 第二十四步 更改配置文件内容

第二十五步 开启服务器并查看虚拟网卡

第二十六步 修改备用机的配置文件

第二十七步 备用LVS启动服务

第二十八步 查看详细信息

第二十九步 测试漂移地址关闭主设备

第三十步 查看主设备日志文件

第三十一步 查看备用设备日志文件是否顶替

第三十二步 用浏览器进行测试


一、LVS架构

概念

① LVS是具有负载均衡功能的服务之一

② LVS作为后端真实服务器,提供负载均衡和跳转功能

③ 单台LVS作为四层负载均衡的服务TCP协议的负载均衡

LVS + keepalived 组成的HA高可用集群,可做为七层的负载均衡

L4和L7负载均衡的区别

L4通过TCP协议建立连接之后的IP:port接收请求和基于IP:port端口进行转发

L7通过TCP协议建立三次握手,通过HTTP协议传输数据,七层负载均衡器,需要根据HTTP协议传输过来的请求,进行对应的跳转,这个跳转是先基于TCP协议的传输(IP:port)+ HTTP的传输

如果是四层,协议只有TCP就是IP:port的转发

如果是七层,TCP和三次握手,长连接 + HTTP规范的传输数据

keepalive故障自动切换

① 两台同时安装好keepalived并且启动服务

当启动的时候master主机获得所有资源并且对用户提供服务(请求)当角色Backup的主机作为master热备,当master出现故障,Backup主机自动接管master主机所有工作

② 当master主机故障修复后,就会自动接管回它原来的所有工作,同时Backup主机则释放原master主机的所有工作,此时两台主机恢复到初始角色以及工作状态

抢占与非抢占

抢占:master恢复后,将VIP从Backup节点中抢占过来,回复自己master工作

非抢占:master恢复后,不抢占Backup目前的状态,Backup升级为master继续工作

二、keepalived管理LVS负载均衡器

keepalive可以通过读取自身的配置文件,实现通过更底层的接口直接管理,LVS配置以及服务的启动、停止功能,这会使LVS应用更加简便

LVS集中节点的健康检查

Keeplived.conf文件配置LVS的节点IP和相关参数来实现对LVS直接管理,如果几个节点服务器同时发生故障无法提供服务,Keeplived服务会自动把那个失效节点服务器从LVS正常转发列中清除出去,并且将请求调度到别的正常节点服务器上,从而保证最终用户的访问不受影响,当故障的节点服务器修复以后,Keepalived服务又会自动把他们加入到转发列中,对外面客户提供服务

三、部署LVS + keeplived 高可用集群

第一步 关闭防火墙和安全机制

命令:systemctl stop firewalld

setenforce 0

第二步 安装工具

命令:yum -y install ipvsadm keepalived

第三步 手动配置模块

命令:modprobe ip_vs

第四步 编辑策略配置文件

命令:vim /etc/sysctl.conf

第五步 查看策略设置

命令:sysctl -p

第六步 创建虚拟网卡

命令:cp ifcfg-ens33 ifcfg-ens33:0

第七步 修改虚拟网卡配置

第八步 重启网卡并启动虚拟网卡

命令:systemctl restart network

ifup ens33:0

ifconfig ens33:0

第九步 添加路由

命令:route add -host 192.168.8.188 dev ens33:0

第十步 创建备份文件启动服务

命令:ipvsadm-save

systemctl start ipvsadm

第十一步 添加ipvsadm策略并启动

命令:ipvsadm -C

ipvsadm -A -t 192.168.8.188:80 -s rr

ipvsadm -a -t 192.168.8.188:80 -r 192.168.8.130:80 -g

ipvsadm -a -t 192.168.8.188:80 -r 192.168.8.200:80 -g

第十二步 配置备用LVS服务器

第十三步 配置Web节点服务器

命令:systemctl stop firewalld

setenforce 0

第十四步 安装HTTP服务

命令:yum -y install httpd

第十五步 启动服务

命令:systemctl start httpd

lsof -i:80

第十六步 添加网页执行文件

命令:echo "this is liu" > /var/www/html/index.html

第十七步 创建虚拟地址

命令:cp ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

第十八步 重启服务并启动虚拟IP地址

命令:systemctl restart network

ifup lo:0

第十九步 添加路由

命令:route add -host 192.168.8.188 dev lo:0

第二十步 编辑策略配置文件

命令:vim /etc/sysctl.conf

第二十一步 检查策略配置

命令:sysctl -p

第二十二步 部署第二台Web服务器

第二十三步 修改主设备的keepalive配置内容进行备份

命令:cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak

 第二十四步 更改配置文件内容

第二十五步 开启服务器并查看虚拟网卡

命令:systemctl start keepalived

第二十六步 修改备用机的配置文件

vim /etc/keepalived/keepalived.conf

第二十七步 备用LVS启动服务

命令:systemctl start keepalived

第二十八步 查看详细信息

命令:ip addr

第二十九步 测试漂移地址关闭主设备

命令:ifdown ens33:0

如果没有用就直接关闭服务

命令:systemctl stop keepalived

第三十步 查看主设备日志文件

命令:tail -f /var/log/message

第三十一步 查看备用设备日志文件是否顶替

命令:tail -f /vat/log/message

第三十二步 用浏览器进行测试

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

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

相关文章

解决OpenJDK 64-Bit Server VM warning

解决OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 问题解决关闭Xshare关闭提示(如果你使用的是IDEA的话) 问题 在写spring boot项目调试的时候,发…

超級SEO助手,如何批量发布文章?

超級SEO助手,如何批量发布文章? 目前超级SEO助手产品已经正式上线,但是还是有很多同学不会自动化发布文章,所以今天我就详细讲解下整个流程。 在发布文章之前首先确认你已经接入了对应的接口渠道,比如Wordpress、DeDeCMS、Z-Blog、…

FlinkCDC第三部分-同步mysql到mysql,ctrl就完事~

本文介绍了不同源单表-单表同步,不同源多表-单表同步。 Flink版本:1.16 环境:Linux CentOS 7.0、jdk1.8 基础文件:flink-1.16.2-bin-scala_2.12.tgz、flink-connector-jdbc-3.0.0-1.16.jar、flink-sql-connector-mysql-cdc-2.3…

手机也能做3D建模人物,你知道吗?

3D建模人物是当今设计界越来越流行的一个领域。3D建模人物可以指的是使用3D技术来建立和表现各种类型的人物模型。无论是在游戏设计、电影特效还是虚拟现实等领域,3D建模人物都扮演着重要的角色。 与传统的手工绘图相比,现代设计师可以使用各种3D建模软…

全网最细,Fiddler抓包实战教程-辅助接口测试(三)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 AutoResponder 请…

计算机丢失msvcr110.dll解决办法,那种更加简单

"msvcr110.dll" 是一个动态链接库文件,用于支持 Microsoft Visual C 运行时库(Runtime Library)版本 11.0。它包含了在 Visual C 程序中使用的函数和变量。当一个程序编译完成后,它仍然需要一些运行时库来在操作系统上运…

LLM模型中英文评测基准

文章目录 中文评测基准C-EvalGaokaoAGIEvalPromptCBLUE 英文评测基准MMLUOpen LLM Leaderboard 中文评测基准 Awesome-Chinese-LLM:https://github.com/HqWu-HITCS/Awesome-Chinese-LLM 该项目收集和梳理中文LLM相关的开源模型、应用、数据集及教程等资料&#xff…

软件测试常用设计模式

设计模式的重要原则就是:高内聚、低耦合;通常程序结构中各模块的内聚程度越高,模块间的耦合程度就越低。 数据驱动测试:Data Driven Testing,简称DDT; 数据驱动指的是从数据文件(如数据库、Ex…

RabbitMQ-基础学习

在虚拟机上安装Erlang的GCC环境,装erlong,然后安装rabbitmq 参考:安装说明链接 安装web端面板 创建交换机 先学习一下工作模式(详细介绍可见官网) 上代码 1.Hello Word模式 写在测试类中: Providucer T…

3 springboot更改tomcat的端口和启动时的banner

3.1 更改tomcat端口 点击resources下的application.properties。 然后,添加以下信息,即可把端口号更改为8081。 # 更改项目的端口号 server.port80813.2 更改启动时的banner 首先,进入网站:https://www.bootschool.net/ascii-art…

git切换账户问题

之前一直用另一个github账户提交代码 今天新创建了一个github账户 用这个账户git项目修改后,push时有问题 1 先执行下面命令,切换了用户 git config --local user.name “xxx” git config --local user.email “xxx” 执行 git config user.name 查看…

电脑端anconda的安装和配置

1.下载官网Anaconda | The World’s Most Popular Data Science Platform 1.1如果上述不行就去清华园源下载镜像Index of / 2.点击下载软件安装,按照图的安装步骤就可以了 安装完毕后点击next就可以了 3.测试是否安装配置成功 WINR键调出运行窗口,输入…

AI免费写作

随着科技的不断发展,人工智能(AI)正逐渐渗透进各个领域,包括以前我们认为只有人类才能胜任的创作型任务——写作。本文将通过深入浅出的方式,为大家剖析AI写作的具体运作机制,并结合案例,带大家一起探索AI写作的无穷可…

方向盘脱手检测原理及主流方案

随着高阶辅助驾驶逐渐普及,逐渐从驾驶员驾驶过渡到人机共驾最终到自动驾驶。而目前阶段受限于技术以及发规等,主要还是人机共驾,由于车辆是辅助人来进行驾驶,因此驾驶员还需要起到主要的监测作用,此时对驾驶员的监控变…

凝心聚力,奋楫启程—易我文化系列课《战略方向定位》讲座圆满举行

易我文化系列课自开课以来,受到了易我员工的一致好评和热烈欢迎。2023年6月20日,易我文化系列课再次发力,《战略方向定位》讲座如期举行,并且取得了圆满的成功。 本次讲座特别邀请易我总经理——万建华先生为大家授课&#xff0c…

Github Pages 快速搭建个人网站教程

官方教程&#xff1a;https://pages.github.com/ 1 创建仓库 命名为 你的名字.github.io 克隆项目 git clone https://github.com/username/username.github.io加入index.html页面 在克隆的项目中&#xff0c;加入一个index.html html文件简单写几个dom <!DOCTYPE html…

最牛,python接口自动化测试-fixtures固件使用详细(实战)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 全局设置请求头部…

2023年7月实时获取地图边界数据方法,省市区县街道多级联动【附实时geoJson数据下载】

首先&#xff0c;来看下效果图 在线体验地址&#xff1a;https://geojson.hxkj.vip&#xff0c;并提供实时geoJson数据文件下载 可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据&#xff0…

@Data失效 Lombok使用与失效

Data失效 1注入pom </dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.18</version><scope>provided</scope></dependency>2下载插件&#xf…

极速冲浪:影视网站推荐

在快节奏的现代生活中&#xff0c;影视娱乐成为了人们放松和娱乐的重要方式。随着高速互联网的普及&#xff0c;极速冲浪在各种影视网站上成为了我们追逐电影、剧集和综艺节目的常态。这些影视网站不仅提供了海量的内容资源&#xff0c;还通过便捷的在线观看和下载功能&#xf…