news 2026/5/29 6:23:45

keepalived高可用实验

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
keepalived高可用实验

文章目录

      • 实验环境
      • 实验目的
      • 实验步骤
        • 1.将lb01的配置同步到lb02
        • 2.在lb01和lb02上安装keepalived
        • 3.编写keepalived的配置文件
        • 4.启动服务
        • 5、验证:主备是否成功
        • 6、如何判断谁提供服务

实验环境

主机名内网虚拟IP角色
lb0110.0.0.510.0.0.200
lb0210.0.0.610.0.0.200

实验目的

提高lb的高可用,使用keepalived实现主备,这里我们对lnmp架构站点进行高可用

搭建lnmp架构的网站请看我之前的文档

实验步骤

1.将lb01的配置同步到lb02
1、安装Nginx[root@lb02~]# scp -r root@10.0.0.5:/etc/yum.repos.d/ /etc/yum.repos.d/root@10.0.0.5's password: CentOS-Base.repo 100% 1890 765.9KB/s 00:00 epel.repo 100% 664 950.3KB/s 00:00 nginx.repo 100% 192 324.1KB/s 00:00 nginx.conf 100% 99 134.7KB/s 00:00 [root@lb02 ~]# yum -y install nginx 创建程序用户 [root@lb02 ~]# groupadd www -g 666 [root@lb02 ~]# useradd www -u 666 -g 666 -s /sbin/nologin -M [root@lb02 ~]# scp -r root@10.0.0.5:/etc/nginx/ /etc/ root@10.0.0.5'spassword:proxy.conf100%194406.5KB/s00:00default.conf100%10722.1MB/s00:00java.conf100%254473.1KB/s00:00fastcgi_params100%10071.1MB/s00:00mime.types100%52316.9MB/s00:00nginx.conf100%6481.3MB/s00:00scgi_params100%636764.9KB/s00:00uwsgi_params100%664454.3KB/s00:00proxy_params100%275673.1KB/s00:00修改配置文件[root@lb02~]# sed -i '/^user/c user www;' /etc/nginx/nginx.conf[root@lb02~]# systemctl start nginx[root@lb02~]# systemctl enable nginxCreated symlink from/etc/systemd/system/multi-user.target.wants/nginx.service to/usr/lib/systemd/system/nginx.service.
2.在lb01和lb02上安装keepalived
[root@lb01~]# yum install -y keepalived[root@lb02~]# yum install -y keepalived
3.编写keepalived的配置文件
#lb01的配置:[root@lb01~]# cat /etc/keepalived/keepalived.conf!Configuration Fileforkeepalived global_defs{router_id lb01# 添加,唯一标识即可}vrrp_instanceVI_1{stateMASTER# 保留,Master节点标识interfaceens33# 注意:需确认你的服务器实际网卡名称(如ens33、eth0),必须和系统一致!virtual_router_id50# 保留,同一VRRP组内(Master/Backup)必须相同(0-255)priority100# 保留,Master优先级高于Backup即可advert_int1# 保留,心跳发送间隔(1秒,同一组必须相同)authentication{auth_typePASS# 保留,认证方式auth_pass1111# 保留,同一组必须相同(密码长度1-8位)}virtual_ipaddress{# 【关键修改】去掉`dev eth1`:该写法在部分Keepalived版本中会导致VIP绑定失败# 原写法:172.16.1.3/24 dev eth110.0.0.200/24# Keepalived会自动绑定到interface指定的网卡# 这里的IP可以自己定义,需要和主机IP在同一个网段里面}}#lb02的配置:[root@lb02~]# cat /etc/keepalived/keepalived.conf!Configuration Fileforkeepalived global_defs{router_id lb02# 【必改1】router_id唯一,添加为lb02}vrrp_instanceVI_1{stateBACKUP# 【必改2】state改为BACKUPinterfaceens33# 【必须和Master一致】网卡名称相同virtual_router_id50# 【必须和Master一致】priority99# 【必改3】priority改为低于Master(如100)advert_int1# 【必须和Master一致】authentication{auth_typePASS# 【必须和Master一致】auth_pass1111# 【必须和Master一致】}virtual_ipaddress{10.0.0.200/24# 【必须和Master一致】VIP相同}}
4.启动服务
[root@lb01~]# systemctl start keepalived[root@lb01~]# systemctl enable keepalivedCreated symlink from/etc/systemd/system/multi-user.target.wants/keepalived.service to/usr/lib/systemd/system/keepalived.service.[root@lb02~]# systemctl start keepalived[root@lb02~]# systemctl enable keepalivedCreated symlink from/etc/systemd/system/multi-user.target.wants/keepalived.service to/usr/lib/systemd/system/keepalived.service.
5、验证:主备是否成功

1、检查lb01

# lb01存在vip地址[root@lb01 conf.d]# ip addr |grep 10.0.0.200inet10.0.0.200/24 scope global secondary ens33# 停止lb01上的keepalived, 检测vip已不存在[root@lb01 conf.d]# systemctl stop keepalived[root@lb01 conf.d]# ip addr |grep 10.0.0.200[root@lb01 conf.d]#

2、检查lb02

在 lb02 上进行如下操作 因为lb01已经暂停,检查lb02是否有接管[root@lb02 conf.d]# ip addr |grep 10.0.0.200inet10.0.0.200/24 scope global secondary ens33 现在把lb01的服务启动,观察lb02是否有虚拟IP[root@lb01 conf.d]# systemctl start keepalived[root@lb02 conf.d]# ip addr |grep 10.0.0.200[root@lb02 conf.d]#
6、如何判断谁提供服务
# 看哪一台有虚拟IP地址[root@lb01~]# ip address show ens363:ens36:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc pfifo_fast stateUPgroupdefaultqlen1000link/ether00:0c:29:c4:62:f0 brdff:ff:ff:ff:ff:ff inet172.16.1.5/24brd172.16.1.255scopeglobalnoprefixroute ens36 valid_lft forever preferred_lft forever inet172.16.1.3/32scopeglobalens36
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 18:29:27

对比传统开发:AI生成Java+OpenCV代码效率提升300%

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 请生成一个性能对比测试项目&#xff0c;包含两个版本的JavaOpenCV图像处理代码&#xff1a;1.完全手动编写的传统版本&#xff1b;2.由AI生成的优化版本。比较两者在实现相同功能&…

作者头像 李华
网站建设 2026/5/28 14:45:53

家庭媒体管理解决方案:Nextcloud AIO与Jellyseerr的智能整合方案

你是否正在经历这样的困扰&#xff1a;家人推荐的电影总是忘记下载&#xff0c;热门剧集更新后手动搜索耗时费力&#xff0c;不同设备的观看记录无法同步&#xff1f;这正是家庭媒体管理的三大痛点&#xff0c;而今天我要向你展示的解决方案&#xff0c;将彻底改变这一现状。 【…

作者头像 李华
网站建设 2026/5/28 0:58:07

基于朴素贝叶斯电商评价数据情感分析与预测选题审批表

河北东方学院本科毕业论文(设计)选题审批表学院&#xff08;宋体5号居中&#xff09;班级与教务系统专业一致姓名&#xff08;宋体5号居中&#xff09;学号&#xff08;宋体5号居中&#xff09;指导教师姓名&#xff08;宋体5号居中&#xff09;指导教师职称&#xff08;填写具…

作者头像 李华
网站建设 2026/5/28 12:29:08

百万级智能体社交仿真:OASIS平台实战指南

在当今数字社交时代&#xff0c;理解大规模用户行为模式对平台运营、内容推荐和社会研究都至关重要。OASIS作为一个开源智能体仿真平台&#xff0c;能够模拟多达百万用户在Twitter、Reddit等社交平台上的互动行为&#xff0c;为研究者和开发者提供了前所未有的实验环境。 【免费…

作者头像 李华
网站建设 2026/5/28 12:24:50

接触力学与摩擦学原理深度解析:从理论到工程应用的完整指南

在机械工程与材料科学领域&#xff0c;接触力学与摩擦学构成了现代工业技术的基础支柱。无论您是从事轴承设计、汽车制动系统开发&#xff0c;还是表面处理技术研究&#xff0c;掌握这两个交叉学科的核心原理都至关重要。本资源为您提供《接触力学与摩擦学的原理及其应用》完整…

作者头像 李华
网站建设 2026/5/28 12:24:51

AI如何用YMODEM协议优化嵌入式开发

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个基于YMODEM协议的嵌入式文件传输系统。系统需要支持通过串口进行文件传输&#xff0c;包括文件的分块发送、校验和重传机制。使用AI自动生成STM32的固件代码&#xff0c;包…

作者头像 李华