Centos 部署Keepalive高可用软件
Keepalive安装部署
一.环境介绍
1)Centos6.4
2) keepalived-1.2.12
3) 主备机的ip
Master:172.31.100.5
Slave: 172.31.100.54
Virtault ip:172.31.100.1
二.部署安装
计划具体部署步骤:
步骤1:安装
步骤2:配置
步骤3:运行
步骤4:检查
现在开始:
1)安装
$ yum install -y gcc make openssl openssl-devel
$ wget http://www.keepalived.org/software/keepalived-1.2.12.tar.gz
$ tar zxvf keepalived-1.2..tar.gz
$ cd keepalived-1.2.
$ ./configure --prefix=/usr/local/keepalived
$ make && make install
2)配置
$ cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
$ cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
$ cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
$ cp -rf /usr/local/keepalived/etc/keepalived /etc/
A)Master:
$ vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs {
router_id LVS_DEVEL
} vrrp_script chk_haproxy {
script "/etc/keepalived/chk_haproxy.sh"
interval
weight
} vrrp_instance VI_1 {
interface eth0
state BACKUP
priority
virtual_router_id
garp_master_delay authentication {
auth_type PASS
auth_pass Hc8scrRddsLsc3
} virtual_ipaddress {
172.31.100.1
} track_script {
chk_haproxy
} #notify_master "/etc/keepalived/Mailnotify.py backup"
#notify_backup "/etc/keepalived/Mailnotify.py master"
#notify_fault "/etc/keepalived/Mailnotify.py fault" }
B)Slave:
$ vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL
}
vrrp_script chk_haproxy {
script "/etc/keepalived/chk_haproxy.sh"
interval
weight
}
vrrp_instance VI_1 {
interface eth0
state BACKUP
priority
virtual_router_id
garp_master_delay
authentication {
auth_type PASS
auth_pass Hc8scrRddsLsc3
}
virtual_ipaddress {
172.31.100.1
}
track_script {
chk_haproxy
}
notify_master "/etc/keepalived/Mailnotify.py backup"
notify_backup "/etc/keepalived/Mailnotify.py master"
#notify_fault "/etc/keepalived/Mailnotify.py fault"
}
C)主备两边都需要的检测脚本和邮件报警脚本:
#keepalive调用该脚本检测haproxy是否停止
$ vi /etc/keepalived/chk_haproxy.sh
#!/bin/bash
status=$(ps aux|grep haproxy | grep -v grep | grep -v bash | wc -l)
if [ "${status}" = "" ]; then
/etc/init.d/haproxy start
status2=$(ps aux|grep haproxy | grep -v grep | grep -v bash |wc -l)
if [ "${status2}" = "" ]; then
/etc/init.d/keepalived stop
fi
fi
#邮件报警脚本 来自网络刘天斯大牛 $ vi /etc/keepalived/chk_haproxy.sh #!/usr/bin/env python
#coding: utf-
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.MIMEImage import MIMEImage
from email.header import Header
import sys
import smtplib strFrom = 'xxxxx@126.com' #邮件来自哪里
strTo = 'receive@gmail.com' #收件箱
smtp_server='smtp.126.com' #邮件服务器地址
smtp_user='send@126.com' #发件箱
smtp_pass='passwdxx' #密码 if sys.argv[]!="master" and sys.argv[]!="backup" and sys.argv[]!="fault":
sys.exit()
else:
notify_type=sys.argv[] mail_title='[紧急]负载均衡器邮件通知'
mail_body_plain=notify_type+'被激活,请做好应急处理。'
mail_body_html='<b><font color=red>'+notify_type+'被激活,请做好应急处理。</font></b>' msgRoot = MIMEMultipart('related')
msgRoot['Subject'] =Header(mail_title,'utf-8')
msgRoot['From'] = strFrom
msgRoot['To'] = strTo msgAlternative = MIMEMultipart('alternative')
msgRoot.attach(msgAlternative) msgText = MIMEText(mail_body_plain, 'plain', 'utf-8')
msgAlternative.attach(msgText)
msgText = MIMEText(mail_body_html, 'html','utf-8')
msgAlternative.attach(msgText) smtp = smtplib.SMTP()
smtp.connect(smtp_server)
smtp.login(smtp_user,smtp_pass)
smtp.sendmail(strFrom, strTo, msgRoot.as_string())
smtp.quit()
3)运行
$ /etc/init.d/keepalived start
$ chkconfig keepalived on
4)检查
$ ps aux|grep keeepalived #查看进程
$ ip addr show #用来查看地址是否切换的
三.结尾
以上是该软件的全部部署过程
Centos 部署Keepalive高可用软件的更多相关文章
- 01:keepalive高可用集群
1.1 keepalived高可用软件介绍 1.keepalived--监控检查 注:keepalive软件有两种功能:监控检查.VRRP冗余协议 1. keepalive的作用是检测web服务器的状 ...
- 高可用软件Keepalived
关于高可用软件Keepalived的使用及配置请参见:http://www.voidcn.com/blog/9124573/article/p-5990263.html
- 腾讯云部署keepalived高可用
使用背景: 通过调用python SDK在腾讯云手动部署keepalived高可用 部署环境 系统:centos7.3 Master:192.168.0.100 Slave:192.168.0.14 ...
- (六) Docker 部署 Redis 高可用集群 (sentinel 哨兵模式)
参考并感谢 官方文档 https://hub.docker.com/_/redis GitHub https://github.com/antirez/redis happyJared https:/ ...
- 部署MYSQL高可用集群
mysql-day08 部署MYSQL高可用集群 u 集群架构 ...
- 部署zookeepe高可用集群
部署zookeepe高可用集群 部署规划 Nno1 192.16 ...
- [svc]高并发场景 LVS DR +KeepAlive高可用实现及ka的persistence_timeout参数
LVS-DR+keepalived模式是一种非常经典的常用生产组合 高可用场景及LVS架构 一般都用一(负载)拖多(Server Array)方式 使用LVS架设的服务器集群系统有三个部分组成: (1 ...
- keepalive高可用
Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此,Keepalived除了能够管理LVS软 ...
- Hadoop部署方式-高可用集群部署(High Availability)
版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客的高可用集群是建立在完全分布式基础之上的,详情请参考:https://www.cnblogs.com/yinzhengjie/p/90651 ...
随机推荐
- ADO.NET完整增删改
完整增添 删除 修改 运用中间变量运用.bool has=false 1增加 需要使用cmd.Parameters这个集合 占位符: @key 代表这个位置用这个占位符占住了 SqlConnectio ...
- [CLR via C#]19. 可空值类型
我们知道,一个值类型的变量永远不可能为null.它总是包含值类型本身.遗憾的是,这在某些情况下会成为问题.例如,设计一个数据库时,可将一个列定义成为一个32位的整数,并映射到FCL的Int32数据类型 ...
- Android Fragment 基本介绍
Fragment 源码:http://www.jinhusns.com/Products/Download/?type=xcj Android是在Android 3.0 (API level 11)开 ...
- mvc、mvp、mvvm使用关系总结
MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法 ...
- csharp:asp.net Importing or Exporting Data from Worksheets using aspose cell
using System; using System.Data; using System.Configuration; using System.Collections; using System. ...
- [moka学习笔记]yii2.0 rules的用法(收集,不定期更新)
public function rules(){ return [ ['title','required','message'=>'标题不能为空'], ['title','string','mi ...
- NLog在.NET Core Console Apps中的简单应用
什么是NLog? NLog is a free logging platform for .NET with rich log routing and management capabilities. ...
- SQL Server SQL语句执行顺序
执行顺序: 1.FROM:对FROM子句中前两个表执行笛卡尔积生成虚拟表vt1 2.ON:对vt1表应用ON筛选器只有满足 为真的行才被插入vt2 3.OUTER(join):如果指定了 OUTER ...
- 通过一个小问题来学习SQL关联查询
原话题: 是关于一个left join的,没有技术难度,但不想清楚不一定能回答出正确答案来: TabA表有三个字段Id,Col1,Col2 且里面有一条数据1,1,2 TabB表有两个字段Id,Col ...
- Sigleton 单例模式 的简单应用
需求:一个简单的后台java程序,收集信息,并将信息发送到远端服务器. 实现:实现一个后台线程,实时处理发送过来的信息,并将信息发送到服务器. 技术要点: 1.单例模式 2.队列 并没有实现全部代码, ...