Keepalived高可用软件概述
- 健康检查:
- VRRP技术:
! Configuration File for keepalived
global_defs {
notification_email {
support@jfedu.net
}
notification_email_from wgkgood@163.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
} vrrp_script chk_nginx {
script "/data/sh/check_nginx.sh"
interval 2
weight 2
}
# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 151
priority 100
advert_int 5
nopreempt
authentication {
auth_type PASS
auth_pass 1111 }
virtual_ipaddress {
192.168.0.198
}
track_script {
chk_nginx
}
}
! Configuration File for keepalived # !改行表示注释;
global_defs {
notification_email { # 指定keepalived在发生切换时需要发送email到的对象,一行一个;
support@jfedu.net
}
notification_email_from wgkgood@163.com # 指定发件人;
smtp_server 127.0.0.1 # 指定smtp服务器地址;
smtp_connect_timeout 30 # 指定smtp连接超时时间;
router_id LVS_DEVEL # 运行keepalived机器的标识;
}
#监控nginx进程:
vrrp script chk_nginx {
script "/data/script/nginx.sh" # 监控服务脚本路径,脚本需要有x执行权限;
interval 2 # 检测时间隔(执行脚本间隔);
weight 2
}
#VRRP实例定义块:
vrrp sync group VG_1{ # 监控多个网段的实例;
group{
VI_1 # 实例名;
VI_2
}
notify master /data/sh/nginx.sh # 指定当时切换到master时,执行脚本;
notify backup /data/sh/nginx.sh # 指定当时切换到backup时,执行脚本;
notify /data/sh/nginx.sh # 发生任何切换,均执行的脚本;
smtp alert; # 使用global defs中提供的邮件地址和smtp服务器发送邮件通知;
}
vrrp instance VI_1{
state BACKUP # 设置主机状态;
MASTER/BACKUP
nopreempt # 设置为不抢占;
interface ens33 # 对外提供服务的网络接口;
lvs sync daemon interface ens33 # 负载均衡器之间监控接口;
track interface { # 设置额外的监控,网卡出现问题都会切换;
ens33
eth0
}
macast src ip # 发送多播包的地址,如果不设置默认使用绑定网卡的primary ip;
garp master delay # 在切换到master状态后,延迟进行gratuitous ARP请求;
virtual router id 50 # VRID标记,路由ID可通过#tcpdump vrrp查看;
priority 90 # 优先级,高优先级竞选为master;
advert int 5 # 检查间隔,默认5秒;
preempt delay # 抢占延时,默认5秒;
debug # debug日志级别;
authentication { # 设置认证;
auth type PASS # 认证方式;
auth pass 1111 # 认证密码;
}
track script{ # 以脚本为监控;
chk nginx;
chk_nginx
}
virtual ipaddress { #设置vip
192.168.1.188
}
}
注意: 使用了脚本监控nginx或者MySQL,不需要如下虚拟服务器设置块。
#全局定义块:
virtual server 192.168.1.188 3306 {
delay loop 6 # 健康检查时间间隔;
lb_algo rr # 调度算法rr|wrr|lc|wlc|lblc|sh|dh;
lb kind DR # 负载均衡转发规则 ;
NAT|DR|TUN
persistence timeout 5 # 会话保持时间;
porsistence TCP # 使用的协议;
real server 192.168.1.199 3306 {
weight 1 # 默认为1,0为失效;
notify up <string> | <quoted-string> # 在检测到server up后执行脚本;
notify down <string> | <quoted-string> # 在检测到server down后执行脚本;
TCP_CHECK {
connect_timeout 3 # 连接超时时间;
nb_get_retry 1 # 重连次数;
delay_before_retry 1 # 重连间隔时间;
connect_port 3306 # 健康检查的端口;
}
HTTP_GET {
url {
path /index.html # 检测url,可写多个
digest 24326582a86bee478bac72d5af25089e # 检测效验码;
genhash -s IP -p 80 -u http://IP/index.html # digest效验码获取方法:
status_code 200 # 检测返回http状态码
}
}
}
查看日志:
tail -fn 30 /var/log/messages
Keepalived高可用软件概述的更多相关文章
- Keepalived高可用软件的安装与配置
监听和替换多台服务器之间的来回切换 一.安装tar zxvf keepalived-1.1.15.tar.gzcd keepalived-1.1.15./configure --prefix=/usr ...
- Linux实战教学笔记31:Keepalived高可用集群应用实践
1.1 Keepalived高可用软件 1.1.1 Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入 ...
- 企业级Nginx负载均衡与keepalived高可用实战(二)keepalived篇
1.Keepalived高可用软件 1.1.Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实 ...
- Keepalived高可用服务器案例
部署Keepalived高可用软件,实现如下: - 使用Keepalived实现web服务器的高可用 - Web服务器IP地址分别为192.168.4.100和192.168.4.200 - Web服 ...
- Cluster基础(三):配置HAProxy负载平衡集群、Keepalived高可用服务器、Keepalived+LVS服务器
一.配置HAProxy负载平衡集群 目标: 准备三台Linux服务器,两台做Web服务器,一台安装HAProxy,实现如下功能: 客户端访问HAProxy,HAProxy分发请求到后端Real Ser ...
- Nginx+Keepalived高可用集群应用实践
Nginx+Keepalived高可用集群应用实践 1.Keepalived高可用软件 1.1 Keepalived服务的三个重要功能 1.1.1管理LVS负载均衡软件 早期的LVS软件,需要通过命令 ...
- LVS+Keepalived 高可用群集部署
LVS+Keepalived 高可用群集部署 1.LVS+Keepalived 高可用群集概述 2.LVS+Keepalived高可用群集部署 1.LVS+Keepalived 高可用群集概述: LV ...
- 高可用软件Keepalived
关于高可用软件Keepalived的使用及配置请参见:http://www.voidcn.com/blog/9124573/article/p-5990263.html
- Linux下实现高可用软件-Keepalived基础知识梳理
Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此,Keepali ...
- 一次 Keepalived 高可用的事故,让我重学了一遍它!
原文首发: 你好,我是悟空. 前言 上次我们遇到了一个 MySQL 故障的事故,这次我又遇到了另外一个奇葩的问题: Keepalived 高可用组件的虚拟 IP 持续漂移,导致 MySQL 主从不断切 ...
随机推荐
- 用 Python 自动创建 Markdown 表格 - 每天5分钟玩转 GPT 编程系列(4)
目录 1. 他们居然问我要 Prompts 2. 让 GPT-4 来写代码 2.1 我对 DevChat 说 2.2 DevChat 回答 2.3 我又对 DevChat 说 2.4 DevChat ...
- 青少年CTF平台-Web-Flag在哪里
平台名称:青少年CTF训练平台 题目名称:Flag在哪里? 解题过程: 启动环境,需要等待大概20秒左右的时间. 访问,页面显示Flag反正不在这. 右键网页,发现无法使用右键. 那么我们直接F12 ...
- 看,这些 plugins 常用又简单
前面文章中 体验了webpack的打包 .解析css资源 .处理图片字体等文件 接下来看看 plugins 有什么作用吧~ 项目路径如下,和上一篇 处理图片字体等文件 项目保持一致 demo ├─ s ...
- centos转移mysql的数据存储目录
前言 centos7使用yum安装mysql的时候,没修改存储位置,/var也没单独挂载,导致长时间运行后根目录空间不足.现需要将数据转移到大分区的/home,操作步骤如下. 步骤 创建新目录 mkd ...
- 学好Elasticsearch系列-聚合查询
本文已收录至Github,推荐阅读 Java随想录 微信公众号:Java随想录 先看后赞,养成习惯. 点赞收藏,人生辉煌. 目录 概念 doc values 和 fielddata multi-fie ...
- Vue+SpringBoot项目分离部署踩坑记录
昨天花了一晚上终于成功部署了个人网站,在这个过程中踩了很多坑,现在回顾总结记录一下,以免今后继续犯错误 前端:Vue 后端:SpringBoot 数据库:Mysql 一.前端 1.前端项目采用Ngin ...
- 文心一言 VS 讯飞星火 VS chatgpt (80)-- 算法导论7.4 5题
五.如果用go语言,当输入数据已经"几乎有序"时,插入排序速度很快.在实际应用中,我们可以利用这一特点来提高快速排序的速度.当对一个长度小于 k 的子数组调用快速排序时,让它不做任 ...
- 【page cache】回写机制
目录 writeback 回写 相关结构体 底层设备信息 初始化 部分字段说明 设备回写管理 初始化 部分字段说明 回写任务 部分字段说明 回写线程 初始化 立即唤醒 wb_wakeup wb_que ...
- 万字长文硬核AQS源码分析
阅读本文前,需要储备的知识点如下,点击链接直接跳转. java线程详解 Java不能操作内存?Unsafe了解一下 一文读懂LockSupport AQS简介 AQS即AbstractQueuedSy ...
- C++ ASIO 实现异步套接字管理
Boost ASIO(Asynchronous I/O)是一个用于异步I/O操作的C++库,该框架提供了一种方便的方式来处理网络通信.多线程编程和异步操作.特别适用于网络应用程序的开发,从基本的网络通 ...