Keepalived使用小结
编译安装
1、安装环境
CentOS release 6.4 Based on Linux 2.6.32,安装1.2.9,没问题
在Red Hat Enterprise Linux Server release 5.3 (Tikanga) Based on 2.6.18 安装1.2.9,有问题,1.2.8没问题
2、获取源码
http://www.keepalived.org/software/keepalived-1.2.9.tar.gz
http://www.keepalived.org/software/keepalived-1.2.8.tar.gz
3、编译
tar -xvf keepalived-1.2.x.tar.gz
mkdir /opt/keepalived
cd keepalived-1.2.x
./configure --prefix=/opt/keepalived
make
make install
4、配置
假设有两台机器A,B
A的keepalived.conf配置:
global_defs {
router_id LVS_DEVEL_TEST
}
vrrp_script Monitor_Haroxy {
# script "/home/plat/ott_release/script/haproxy_keepalived.sh"
script "killall -0 haproxy"
interval
weight -
}
vrrp_instance VI_HA {
state BACKUP
interface em1 #网卡接口
virtual_router_id
priority
advert_int
nopreempt
authentication {
auth_type PASS
auth_pass
}
#notify_master /home/plat/ ott_release/script/redis_master.sh
#notify_backup/home/plat/ott_release/script/redis_backup.sh
track_script {
Monitor_Haproxy
}
virtual_ipaddress {
10.0.63.237
}
}
B的keepalived.conf配置:
global_defs {
router_id LVS_DEVEL_TEST
}
vrrp_script Monitor_Haroxy {
script "/home/plat/ott_release/script/haproxy_keepalived.sh"
#script "killall -0 haproxy"
interval
weight -
}
vrrp_instance VI_HA {
state BACKUP
interface br-ex
virtual_router_id
priority
advert_int
nopreempt
authentication {
auth_type PASS
auth_pass
}
notify_master /home/plat/ ott_release/script/redis_master.sh
notify_backup/home/plat/ott_release/script/redis_backup.sh
track_script {
Monitor_Haproxy
}
virtual_ipaddress {
10.0.63.237
}
}
以下配置,A、B是相同的
/home/plat/ott_release/script/haproxy_keepalived.sh示例如下:
-
#!/bin/bash
count = `ps aux | grep -v grep | grep haproxy | wc -l`
if [ $count > 0 ]; then
exit 0
else
exit 1
fi
注:
keepalived会定时执行脚本并对脚本执行的结果进行分析,动态调整vrrp_instance的优先级。
如果脚本执行结果为0,并且weight配置的值大于0,则优先级相应的增加
如果脚本执行结果非0,并且weight配置的值小于0,则优先级相应的减少
其他情况,维持原本配置的优先级,即配置文件中priority对应的值。
说明几点:
1)优先级不会不断的提高或者降低
2)可以编写多个检测脚本并为每个检测脚本设置不同的weight
3)不管提高优先级还是降低优先级,最终优先级的范围是在[1,254],不会出现优先级小于等于0或者优先级大于等于255的情况
说明一种情况,以上配置的两台机器,启动后A
weight高,所以变成Master,如果Master检测到进程出问题,将自身weight减少20即60,小于备机,所以备机切换为Master;当原Master即A恢复,由于其weight为80,会抢占B成为Master。
启动时,在安装目录下运行:./sbin/keepalived
-f conf/keepalived.conf -c run/checker.pid -r run/vrrp.pid -p
run/pid.pid
运行两个keepalived进程时,例如:./sbin/keepalived
-f conf/keepalived1.conf -c run/checker1.pid -r run/vrrp1.pid -p
run/pid1.pid
Keepalived使用小结的更多相关文章
- Keepalived基础知识-运维小结
keepalived介绍keepalived观察其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,它集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防 ...
- keepalived.conf 配置文件小结
vrrp_script vs_mysql_82 { script "/etc/keepalived/checkMySQL.py -h 192.168.11.82 -P 3306&qu ...
- keepalived小结
keepalived 启动流程: 启动三个进程(主进程.healthcheck 进程.vrrp进程)之后,先进入backup状态,运行一次vrrp_script成功后发现没有主,这时候会进入maste ...
- 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡
一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...
- docker nginx1.7.6+keepalived实现双机热备
0.前提条件 环境两台ubuntu版本14.04 64位系统(并获取root权限) 假设两台服务器ip为:172.16.34.214(master),172.16.34.215(backup),kee ...
- Keepalived高可用集群搭建(转载linuxIDC)
1.Keepalived简介 Keepalived是一个基于VRRP协议来实现的WEB服务高可用方案,可以利用其来避免单点故障.使用多台节点安装keepalived.其 他的节点用来提供真实的服务,同 ...
- 借助LVS+Keepalived实现负载均衡(转)
原文:http://www.cnblogs.com/edisonchou/p/4281978.html 一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务 ...
- 架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层
1.概述 前两遍文章中,我们一直在说后文要介绍Nginx + Keepalived的搭建方式.这篇文章开始,我们就来兑现前文的承诺,后续的两篇文章我们将介绍Nginx + Keepalived和 LV ...
- LVS + keepalived + tomcat负载均衡及高可用实现(初级)
1.首先检测Linux服务器是否支持ipvs 执行如下命令:modprobe -l|grep ipvs 输出: kernel/net/netfilter/ipvs/ip_vs.ko kernel/ne ...
随机推荐
- sql语句判断 case when用法
sql语句判断方法之一 selectcase when t.bk1='on' then 1else 0 end as 基础 ,case when t.bk2='on' then 1else 0 en ...
- 图解MySQL 内连接、外连接、左连接、右连接、全连接
用两个表(a_table.b_table),关联字段a_table.a_id和b_table.b_id来演示一下MySQL的内连接.外连接( 左(外)连接.右(外)连接.全(外)连接). MySQL版 ...
- Flask 上下文管理-- (session,request,current_app的传递)--类似本地线程实现,以及多app应用
Flask session,request,current_app的传递 请求上下文的作用 -- 封装请求相关得数据(request,session) 请求上下文 request session re ...
- 高性能高并发服务器架构设计探究——以flamigo服务器代码为例
这篇文章我们将介绍服务器的开发,并从多个方面探究如何开发一款高性能高并发的服务器程序. 所谓高性能就是服务器能流畅地处理各个客户端的连接并尽量低延迟地应答客户端的请求:所谓高并发,指的是服务器可以同时 ...
- I.MX6 Android 5.1 纯Linux、U-Boot编译
/***************************************************************************** * I.MX6 Android 5.1 纯 ...
- Hadoop集群中节点角色定义
Hadoop分别从两个角度将主机划分为两种角色. 最基本的划分原则为Master和Slave,即主人和奴隶: 第一,从HDFS的角度,将主机划分为NameNode和DataNode(在分布式文件系统中 ...
- 转载关于Qsys的 指令总线 和 数据总线
1.关于Qsys的 指令总线 和 数据总线 连接的问题(data_master和instruction_master) 关于数据和指令端口的连接的疑问,这是初用Qsys的童鞋们很困惑的问题,之前使 ...
- 笔记:LIR2032 电池充电记录
笔记:LIR2032 电池充电记录 LIR2032 电池是锂电池,形状和 CR2032 一样,只不过可以充电,材料是锂离子. 一个单颗的 LIR2032 电池容量只有 40mAH,容量很小. 那么就需 ...
- maven命令行创建web项目报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
早上一上班就想新建一个web项目玩玩,没想到一敲命令创建就失败了,真是出师不利.各种折腾无果,当然我也可以用eclipse直接创建的,就是不甘心被这破问题给耍了.刚刚才发现问题原因,这个结果我也是醉了 ...
- saas服务提供商
这段时间接触了不少行业的东西,这里谈几点肤浅的看法.从市场行情上讲,SaaS风口还在,不过热度明显向大数据.物联网.人工智能.区块链等转移. 做得比较好的有这些SaaS提供商,每个领域的都有那么几家的 ...