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

网络协议 — Keepalived 高可用方案

目录

文章目录

  • 目录
  • Keepalived 是实现了 VRRP 协议的软件
  • Keepalived 的软件架构
    • VRRP Stack
    • Checkers
  • Keepalived 的配置
    • Global configuration
      • vrrp_script
    • VRRP Configuration
      • vrrp synchroization group
      • vrrp instance
      • virtual ip addresses
      • virtual routes
    • LVS Configuration
      • virtual_server
  • 参考文档

Keepalived 是实现了 VRRP 协议的软件

Keepalived 最初是为 LVS(Linux Virtual Server)L4 负载均衡方案而设计的 RS(真实服务器)集群健康状态检测软件,通过 TCP 和 IP 协议来实时(毫秒级)检测负载均衡后端集群中的每个 RS 节点的健康状态,并根据状态实现实时的 RS 节点移除和添加。以此来保证 RS 集群始终是 Keep Alive 的。

后来为了能够同时支撑 LVS 本身的高可用性而引入了 VRRP 协议栈实现,并将应用场景扩展至为广泛的 IP 网关设备(e.g. HAProxy etc…)和中间件(e.g. Redis、RabbitMQ etc…)提供 HA 解决方案。

  • 官方网站:https://www.keepalived.org/
  • 操作手册:https://www.keepalived.org/doc/
  • 软件仓库:https://github.com/acassen/keepalived
  • 配置文档:https://www.keepalived.org/doc/configuration_synopsis.html

Keepalived 的软件架构

在这里插入图片描述

从上图可见,Keepalived 的软件架构分为 Kernel Space 和 User Space 这 2 个层面,细

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Lab1 论文 MapReduce
  • vue中使用$set方法给对象添加属性
  • 使用 NumPy 及其相关库(如 pandas、scikit-learn 等)时,由于 NumPy 的版本不兼容或者某些依赖库与 NumPy 的版本不匹配
  • 局域网如何进行内网连接和外网连接
  • 语音识别概述
  • 基于Jetpack Compose实现的Android Preference
  • 代码随想录(day6)哈希表-求两个数组的交集
  • 土壤分析仪:解密土壤之奥秘的科技先锋
  • 探索 Java 8 新特性:函数式接口
  • ES6 Generator函数的语法 (七)
  • Android 自定义Edittext 和TextView 提示文字和填入内容不同的粗细组件
  • 【Linux】shell基础知识点(updating)
  • 欧科云链研究院:坎昆升级后,Layer2变得更好了吗?
  • 解决了一个java Bug:Exception in thread “main“ java.lang.NullPointerException
  • [Hello-algo] 复杂度分析
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • __proto__ 和 prototype的关系
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • Centos6.8 使用rpm安装mysql5.7
  • ComponentOne 2017 V2版本正式发布
  • C语言笔记(第一章:C语言编程)
  • idea + plantuml 画流程图
  • ng6--错误信息小结(持续更新)
  • Redux系列x:源码分析
  • SQL 难点解决:记录的引用
  • Vue.js-Day01
  • 给初学者:JavaScript 中数组操作注意点
  • 关于springcloud Gateway中的限流
  • 你不可错过的前端面试题(一)
  • 配置 PM2 实现代码自动发布
  • 前端临床手札——文件上传
  • 使用 @font-face
  • 小程序01:wepy框架整合iview webapp UI
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • 智能网联汽车信息安全
  • 7行Python代码的人脸识别
  • raise 与 raise ... from 的区别
  • #每天一道面试题# 什么是MySQL的回表查询
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (编译到47%失败)to be deleted
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (接口封装)
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)linux 命令大全
  • (状压dp)uva 10817 Headmaster's Headache
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • .net framework 4.8 开发windows系统服务
  • .Net 基于MiniExcel的导入功能接口示例
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .Net插件开发开源框架
  • .Net语言中的StringBuilder:入门到精通