news 2026/8/11 1:04:52

基于 Keepalived 双主模式与 LVS 实现 Web 与数据库业务分离的高可用架构实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于 Keepalived 双主模式与 LVS 实现 Web 与数据库业务分离的高可用架构实践

双主模式代理不同业务实现高可用

1.实验环境

#web服务已经设定完成#在rs中设定lo添加vip2 172.25.254.200、32#在rs中搭建数据库[root@rs1+2 ~]# dnf install mariadb-server -y[root@rs1+2 ~]# systemctl enable --now mariadb[root@rs1+2 ~]# mysqlWelcome to the MariaDB monitor. Commands end with;or\g. Your MariaDB connectionidis3Server version:10.5.27-MariaDB MariaDB Server Copyright(c)2000,2018, Oracle, MariaDB Corporation Ab and others. Type'help;'or'\h'forhelp. Type'\c'toclearthe current input statement. MariaDB[(none)]>CREATEUSERlee@'%'identified by'lee';Query OK,0rows affected(0.001sec)MariaDB[(none)]>GRANT ALL ON *.* TO lee@'%';Query OK,0rows affected(0.001sec)#测试[root@rs1 ~]# mysql -ulee -plee -h172.25.254.10Welcome to the MariaDB monitor. Commands end with;or\g. Your MariaDB connectionidis4Server version:10.5.27-MariaDB MariaDB Server Copyright(c)2000,2018, Oracle, MariaDB Corporation Ab and others. Type'help;'or'\h'forhelp. Type'\c'toclearthe current input statement. MariaDB[(none)]>quit[root@rs1 ~]# mysql -ulee -plee -h172.25.254.20Welcome to the MariaDB monitor. Commands end with;or\g. Your MariaDB connectionidis4Server version:10.5.27-MariaDB MariaDB Server Copyright(c)2000,2018, Oracle, MariaDB Corporation Ab and others. Type'help;'or'\h'forhelp. Type'\c'toclearthe current input statement. MariaDB[(none)]>quit

2.实现不同vip代理不同业务

#KA1和KA2虚拟服务器配置[root@KA1+2 ~]# vim /etc/keepalived/keepalived.confinclude /etc/keepalived/conf.d/webserver.conf include /etc/keepalived/conf.d/datebase.conf[root@KA1+2 ~]# vim /etc/keepalived/conf.d/webserver.conf#172.25.254.100:80 Web 服务virtual_server172.25.254.10080{delay_loop6# 后端节点健康检查间隔,单位秒,每6秒检查一次RSlb_algo rr# 调度算法:轮询 rr,请求依次分给10、20两台机器lb_kind DR# LVS工作模式:DR直接路由模式protocol TCP# 检测TCP协议real_server172.25.254.1080{weight1# 权重,两台一样,流量均分HTTP_GET{# 对172.25.254.10 使用HTTP方式健康检查url{path /# 访问根目录 /status_code200# 返回码200代表节点正常}connect_timeout1# 连接超时1sretry3# 失败最多重试3次delay_before_retry1# 重试间隔1s}}real_server172.25.254.2080{weight1TCP_CHECK{# 对172.25.254.20 使用TCP端口探测,只探测80端口通不通,不做http访问connect_timeout5retry3delay_before_retry3connect_port80}}}[root@KA1 ~]# vim /etc/keepalived/conf.d/datebase.conf#172.25.254.200:3306 MySQL 数据库服务virtual_server172.25.254.2003306{delay_loop6lb_algo rr lb_kind DR protocol TCP real_server172.25.254.103306{weight1TCP_CHECK{# MySQL只能TCP探测,不能HTTP_GETconnect_timeout5retry3delay_before_retry3connect_port3306}}real_server172.25.254.203306{weight1TCP_CHECK{# MySQL只能TCP探测,不能HTTP_GETconnect_timeout5retry3delay_before_retry3connect_port3306}}}[root@KA1+2 ~]# systemctl restart keepalived.service

3.测试

[root@rs2 ~]# mysql -ulee -plee -h172.25.254.200Welcome to the MariaDB monitor. Commands end with;or\g. Your MariaDB connectionidis89Server version:10.5.27-MariaDB MariaDB Server Copyright(c)2000,2018, Oracle, MariaDB Corporation Ab and others. Type'help;'or'\h'forhelp. Type'\c'toclearthe current input statement. MariaDB[(none)]>[Administrator.DESKTOP-VJ307M3]curl172.25.254.100 RS1 -172.25.254.10[2026-01-2911:58.55]~[Administrator.DESKTOP-VJ307M3]curl172.25.254.100 RS2 -172.25.254.20
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/11 0:56:36

爬虫实战:20分钟下载《诡秘之主》全本

一、前言通常而言, 被称作网路爬虫所爬取的事物, 大致上也就是这四种, 分别是文字, 还有图片, 以及音乐, 再就是视频。这是在明面上, 所能想到的事物, 除开这些内容以外, 还存在一些危险性质的操施作办, 是着实容易因而被请去喝茶的, 对此现暂且不予讨论了。咱们循序渐进&#…

作者头像 李华
网站建设 2026/8/11 0:39:18

如何实现淘宝自动提报活动自动化?单机管理200+店铺零关联的底层架构

如何实现淘宝自动提报活动自动化?单机管理200店铺零关联的底层架构 干店群想赚钱,核心就两个字——效率。淘宝的自动提报活动,是店群运营中最耗人力也最容易出错的环节。 平台大促活动报名是流量红利窗口,但提报流程极其繁琐。每…

作者头像 李华
网站建设 2026/8/11 0:31:37

Mysql中慢 SQL 优化实战:减少不必要的 JOIN 关联

Mysql中慢 SQL 优化实战:减少不必要的 JOIN 关联 一、问题背景 线上接口查询收货单的出库物流信息时出现慢 SQL。该 SQL 通过三表 JOIN(收货单主表 → 物流记录表 → 物流节点明细表)查询物流轨迹数据,其中收货单主表数据量超过…

作者头像 李华
网站建设 2026/8/11 0:26:32

别人用AI没事,你用就被抓?专科论文避坑5条铁律

别人用AI没事,你用就被抓?专科论文避坑5条铁律室友用AI一天写完了专科毕业论文初稿,查重一次过。你也用AI写,交上去被退回——AI率37%,超了红线。 你懵了。用的都是同一个工具,差别在哪? 2026年…

作者头像 李华
网站建设 2026/8/11 0:24:12

Cocos Creator 3.x粒子特效点击触发:从对象池到坐标转换的完整实现

1. 项目概述:从“播放”到“触发”的交互升级在 Cocos Creator 3.x 的项目开发中,粒子特效是营造视觉冲击力、提升游戏沉浸感的核心手段之一。我们通常习惯于在编辑器里摆好特效,设置好自动播放,或者用几行代码控制它的播放与停止…

作者头像 李华
网站建设 2026/8/10 23:59:34

Mac上使用UTM运行ROS Noetic的完整指南

1. 项目概述:为什么选择UTM在Mac上运行ROS Noetic? 在机器人开发领域,ROS(Robot Operating System)是事实上的标准框架,而Noetic作为最后一个支持Ubuntu 20.04的LTS版本,至今仍是许多工业项目的…

作者头像 李华