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 ...
随机推荐
- 开发(ASP.NET程序)把写代码写至最有面向对象味道
前几天,搬房子时又拿起<重构----改善既有代码的设计>这本书来随便翻来看下,重构Refactoring在开发时,是时常也经常会使用得到. 她确实教我们怎样把写程序写简洁,清楚 好明白,好 ...
- ASP.NET文本框密码赋默认值的方法
对于普通的文本输入框,可以使用下边的方法赋默认值: <asp:TextBox ID="TextBox1" runat="server">12345& ...
- 【状态模式】 State Pattern
我们先设计一个场景,饮料自动售卖机,来设计一下它的出售流程. 流程图中,我们可把这个过程看成几个状态: 投币状态,选择饮料状态,售出状态,出售完毕状态. ,有了这个四个状态,我们设计一下界面(很粗略) ...
- Access-Control-Allow-Origin: Dealing with CORS Errors in Angular
https://daveceddia.com/access-control-allow-origin-cors-errors-in-angular/ Getting this error in you ...
- JPA学习(1)基础认知
JPA 是什么 Java Persistence API:用于对象持久化的API. Java EE 5.0 平台标准的 ORM 规范,使得应用程序以统一的方式访问持久层: JPA和Hibernate的 ...
- Angularjs,WebAPI 搭建一个简易权限管理系统 —— 系统业务与实现(三)
目录 前言 Angularjs名词与概念 Angularjs 基本功能演示 系统业务与实现 WebAPI项目主体结构 Angularjs 前端主体结构 系统业务与实现(二) 上一章我们讲解的 Angu ...
- linux下log4j乱码解决
使用log4j的时候,在WIN系统的时候正常显示中文,但是发布到linux系统的时候中文就显示成乱码了 由于log4j配置文件中没有设置编码格式(encoding),所以log4j就使用系统默认编码. ...
- Java学习笔记之_JDBC
JDBC简介 1.SUN公司为了简化,统一数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC 2.数据库驱动 3.JDBC全称为:JAVA DataBase Commectivity(j ...
- REUSE_ALV_GRID_DISPLAY显示ALV,设置可编辑时,与内表数据同步问题
使用function module: REUSE_ALV_GRID_DISPLAY显示ALV,并设置alv某些列可编辑,可是编辑后发现对应的内表数据并没有随之改变.记得需要设置一个参数的值,怎么想也记 ...
- SharePoint 2013 列表多表联合查询
在SharePoint的企业应用中,遇到复杂的逻辑的时候,我们会需要多表查询:SharePoint和Sql数据表一样,也支持多表联合查询,但是不像Sql语句那样简单,需要使用SPQuery的Joins ...