当前位置: 首页 > news >正文

keepalived的介绍与配置

     Keepalived是一个轻量级别的高可用解决方案,同时也是一个免费开源的、用C编写的类似于layer3, 4 & 7(也有说法认为是layer3, 4 & 5)交换机制的软件,主要提供负载均衡和高可用服务。它自动完成检测服务器的状态、故障隔离和失败切换等任务,无需人工干涉。

主要功能

高可用服务:通过VRRP(虚拟路由冗余协议)实现多台机器之间的故障转移服务,确保服务的连续性和可用性。

负载均衡:虽然Keepalived本身不直接提供负载均衡功能,但它可以配合IPVS(IP Virtual Server)等负载均衡软件,实现高效的负载均衡策略。

健康检查:对后端服务器进行健康检查,确保只有健康的服务器才会接收用户请求。

工作原理

Keepalived工作在TCP/IP参考模型的网络层、传输层和应用层,通过不同的机制检测服务器的状态:

Layer3(网络层):使用ICMP协议(类似于Ping)定期向服务器发送数据包,检测服务器的IP地址是否有效。

Layer4(传输层):通过TCP端口的连接和扫描技术,检测服务端口(如HTTP的80端口)是否正常。

Layer5/7(应用层):对指定的URL执行HTTP GET请求,并使用MD5算法对结果进行校验,或者通过用户自定义的脚本进行健康检查。

应用场景

Keepalived广泛应用于需要高可用性和负载均衡的场景中,如:

Web服务:确保Web服务的高可用性,即使某台服务器宕机,也能迅速将请求转移到其他服务器。

数据库服务:为数据库提供高可用保障,防止单点故障导致的数据丢失或服务中断。

内部业务系统:如OA系统、ERP系统等,确保这些关键业务系统能够7x24小时不间断运行。

配置与使用

Keepalived的配置相对简单,主要通过配置文件来设置VRRP实例、优先级、认证方式等参数。启动Keepalived服务后,它会根据配置自动完成服务器的状态检测、故障隔离和失败切换等任务。

优势

轻量级:占用资源少,适合在资源有限的环境中部署。

配置简单:配置文件易于理解和修改,降低了运维难度。

自动化:自动完成服务器的状态检测、故障隔离和失败切换等任务,无需人工干预。

灵活性:支持多种健康检查机制,可以根据实际需求选择合适的检查方式。

综上所述,Keepalived是一款功能强大、配置简单、易于管理的高可用解决方案,广泛应用于各种需要高可用性和负载均衡的场景中。

keepalived的配置如下

keepalived的实验所需的网络环境配置

在realserver1和realserver2上安装httpd

在ka1上访问一下

keepalived的虚拟路由配置

在ka1和ka2上安装keeplived

在ka1和ka2上安装keeplived

进入配置文件进行配置

把ka1上的配置文件同步给ka2,在ka2上要进行修改一下

查看VIP

keepalived日志分离

配置完成后重启服务

同样配置完成后重启服务

查看日志

keepalived虚拟路由的通讯设定

在ka1和ka2上的keepalived配置文件中添加

然后重启服务,在其他设备上就能ping通

keepalived的独立子配置文件

先进入keepalived的配置文件中

然后创建一个文件

重启服务后查看

keepalived-非抢占模式和延迟抢占

进入配置文件进行修改

在ka1和ka2上都配置,重启服务后VIP到了172.25.254.20主机上

在20主机上暂停服务后重新启动,会发现vip又到了10主机上,这就是非抢占模式

延迟抢占的设置

在ka1和ka2都要设置

过了5s后自动回来


keepalived-单播模式设定

在ka1和ka2进入keepalived的配置文件进行设置

keepalived-邮件通知

在ka1和ka2上安装

在ka1和ka2上写脚本

给脚步提权

进入ka1和ka2主配置文件进行配置

保存退出后重启服务

keepalived+lvs

进入keepalived配置文件

在realserver1和realserver2上写脚本

添加环回ip

给realserver1复制过去

在ka1和ka2上安装

查看一下

keepalived和haproxy

在ka1和ka2上安装haproxy

进入haproxy文件进行配置

然后开启服务

查看一下

把服务器的响应改为0

访问一下

在keepalived配置文件在中把virtual_server注释掉,不然就和haproxy冲突了

现在访问一下vip就可以访问了

检测haproxy的命令

进入haproxy配置文件进行配置

http://www.lryc.cn/news/425745.html

相关文章:

  • 二叉树概念与使用
  • MongoDB 在 Java 中的使用教程
  • 微前端架构下的配置管理:策略、实现与最佳实践
  • React Native中好用的UI组件库
  • WebSocket 快速入门
  • MySQL中的存储文件和IO机制详细解析
  • 复习之 java 锁
  • 数据结构与算法 - 图
  • 白骑士的HTML教学基础篇 1.1 HTML简介
  • c语言基础知识学习
  • Qt/QML学习-Dial
  • 达梦数据库系列—48.DMHS实现Mysql到DM8的同步
  • PostgreSQL的启动过程
  • ActiveMQ、RabbitMQ、Kafka、RocketMQ的区别简介
  • 7.1 多态案例
  • 革新测试管理:集远程、协同、自动化于一身的统一测试管理平台
  • HAProxy的详解
  • 网络安全实训第一天(dami靶场搭建,XSS、CSRF、模板、任意文件删除添加、框架、密码爆破漏洞)
  • 4.1 SQL的起源与发展
  • android中实现禁掉有线网络
  • docker-compose安装MongoDB 7.0.12
  • Ubuntu下NFS和SSH服务
  • 游戏管理系统
  • 坐牢第二十七天(聊天室)
  • C++自学笔记33(数据类型总结与变量)
  • 游戏引擎phaser.js3的使用之玩家和静态物理组碰撞
  • springboot整合mybatis以及mybatis-plus 开发
  • 大语言模型微调框架Unsloth:简化模型微调流程,提升模型性能
  • IPD-华为研发之道分析与理解
  • 时空序列顶会文章