keepalived安装

#下载keepalived
./configure --prefix=/usr/local
Make && make install Atlas主安装keepalived Atlas备安装keepalived

  

Atlas1 keepalived配置文件修改

Atlas1  Keepalived.conf文件如下:

! Configuration File for keepalived

global_defs {

}

#自定义vrrp脚本
vrrp_script chk_port {
script /etc/keepalived/atlas.sh
#60秒检查一次
interval 60
} vrrp_instance VI_1 {
#指定节点状态
state BACKUP
#制定绑定的网卡
interface eth0
#vrrp 组ID,同一组内必须相同
virtual_router_id 51
#优先权,值大优先级大
priority 100
#组播信息发送间隔
advert_int 1
#禁止抢占
nopreempt
#验证信息,两节点设置相同
authentication {
auth_type PASS
auth_pass 99989
}
track_script {
chk_port
}
#虚拟IP,两节点设置相同
virtual_ipaddress {
#虚拟IP 申请
192.168.0.221/24 dev eth0
}
##扩展
#notify_master /etc/keepalived/m.sh
#notify_backup /etc/keepalived/b.sh
}

  

 Atlas1 脚本 /etc/keepalived/atlas.sh

10秒检查一次,如果3次Atlas都是关闭,停止keepalived服务,vip切换
#!/bin/bash
v_port=3100
v_j=0
for ((i=0; i<3; i++)); do
#检测端口是否存在,用端口 或者 用进程
v_num=`netstat -npl | grep $v_port | grep mysql-proxy | wc -l`
v_mysql_proxy_num=`ps -C mysql-proxy --no-header |wc -l`
#端口不在,进程不在,关闭keepalived,切换VIP
if [ "$v_num" == "" -a "$v_mysql_proxy_num" == "" ]
then
v_j=`expr $v_j + 1`
fi
sleep 10
done if [ "$v_j" == "" ]
then
killall keepalived
fi

  

Atlas2 keepalived配置文件修改

! Configuration File for keepalived

global_defs {

}

#自定义vrrp脚本
vrrp_script chk_port {
script /etc/keepalived/atlas.sh
interval 60
} vrrp_instance VI_1 {
#指定节点状态
state BACKUP
#制定绑定的网卡
interface eth0
#vrrp 组ID,同一组内必须相同
virtual_router_id 51
#优先权,值大优先级大
priority 100
#组播信息发送间隔
advert_int 1
#禁止抢占
nopreempt
#验证信息,两节点设置相同
authentication {
auth_type PASS
auth_pass 99989
}
track_script {
chk_port
}
#虚拟IP,两节点设置相同
virtual_ipaddress {
192.168.0.221/24 dev eth0
}
##扩展
#notify_master /etc/keepalived/m.sh
#notify_backup /etc/keepalived/b.sh
}

Atlas2 脚本 /etc/keepalived/atlas.sh

10秒检查一次,如果3次Atlas都是关闭,停止keepalived服务,vip切换
#!/bin/bash
v_port=3100
v_j=0
for ((i=0; i<3; i++)); do
#检测端口是否存在,用端口 或者 用进程
v_num=`netstat -npl | grep $v_port | grep mysql-proxy | wc -l`
v_mysql_proxy_num=`ps -C mysql-proxy --no-header |wc -l`
#端口不在,进程不在,关闭keepalived,切换VIP
if [ "$v_num" == "" -a "$v_mysql_proxy_num" == "" ]
then
v_j=`expr $v_j + 1`
fi
sleep 10
done if [ "$v_j" == "" ]
then
killall keepalived
fi

说明

Atlas1,Atlas2 keepalived配置相同,BACKUP-BACKUP
三次扫描3100端口,如果不存在,关闭keepalived。VIP切换,注意目前Atlas主,从之间端口不一致。
主从端口最好一致,端口不一致,jdbc failover控制,不知道会不会出问题. 发生vip切换,需要查找原因,keepalived关闭后,需要手动启动,启动后不会占vip。

关于haproxy

连接池暂不考虑haproxy,如果性能出问题,最先在数据库,而不是中间件

Atlas 配置高可用的更多相关文章

  1. 集群相关、用keepalived配置高可用集群

    1.集群相关 2.keepalived相关 3.用keepalived配置高可用集群 安装:yum install keepalived -y   高可用,主要是针对于服务器硬件或服务器上的应用服务而 ...

  2. Nginx 配置高可用

    阅读本文需要安装Nginx 一 什么是高可用 nginx作为负载均衡服务器 所有请求都到了nginx 可见nginx处于非常重要的位置 如果nginx服务器宕机 后端web服务器将无法提供服务 影响严 ...

  3. Azure 配置高可用的准备系列工作-建立不同区域的存储账户和建立网络!

     我们谈到我们的业务,常常谈到一个词.三层架构,就是我们的UI层.数据訪问层和数据存储层的分离,通常情况下我们的业务高可用必须满足这三层的所有高可用的情况下才干达到最高级别的高可用. 那么谈到Az ...

  4. Linux集群介绍、keepalived介绍及配置高可用集群

    7月3日任务 18.1 集群介绍18.2 keepalived介绍18.3/18.4/18.5 用keepalived配置高可用集群扩展heartbeat和keepalived比较http://blo ...

  5. Nginx 配置高可用的集群

    1.什么是 nginx 高可用 (1)需要两台 nginx 服务器 (2)需要 keepalived (3)需要虚拟 ip 2.配置高可用的准备工作 (1)需要两台服务器 192.168.17.129 ...

  6. Linux centosVMware 集群介绍、keepalived介绍、用keepalived配置高可用集群

    一.集群介绍 根据功能划分为两大类:高可用和负载均衡 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 实现高可用的开源软件有:heartbeat. ...

  7. Nginx 配置实例-配置高可用

    Nginx 配置实例-配置高可用 1. 实现效果 2. 两台机器 nginx 的安装 2.1 192.168.25.120 中 nginx 的安装 2.1.1 安装 pcre 依赖 2.1.2 安装其 ...

  8. 配置高可用的Hadoop平台

    1.概述 在Hadoop2.x之后的版本,提出了解决单点问题的方案--HA(High Available 高可用).这篇博客阐述如何搭建高可用的HDFS和YARN,执行步骤如下: 创建hadoop用户 ...

  9. Keepalived+Nginx+Tomcat配置高可用负载均衡系统示例

    前言 此示例为keepalived+nginx+tomcat的基础配置示例,某些特定配置此例中不会出现,在示例中会用到三个虚拟机:两个纯命令行用于模拟服务端配置,一个带桌面环境的用于模拟客户端访问,这 ...

随机推荐

  1. Codeforces Round #363 (Div. 2) A

     Description There will be a launch of a new, powerful and unusual collider very soon, which located ...

  2. powerdesigner添加唯一约束

    假设我们有一个user表,字段为ID和NAME,现在ID作为逻辑主键,自增,想将NAME添加唯一约束,话不多说直接上图: # 添加一个key, 名字随便取,我取为key_u # 双击添加的key的第一 ...

  3. Eclipse中mybatis的xml文件没有提示,出现the file cannot be validated as the XML definition.....

    1.下载dtd文件 2.在eclipse中配置本地dtd文件: Window->Preferences->XML->XML Catalog->User Specified En ...

  4. HDU 6153 A Secret 套路,求解前缀在本串中出现的次数

    http://acm.hdu.edu.cn/showproblem.php?pid=6153 首先相当于翻转两个串,然后求s2前缀在s1中出现的次数. 这是一个套路啦 首先把两个串结合起来,中间加一个 ...

  5. Java虚拟机,类文件结构深度解析

    Java类文件结构 Java虚拟机不和包括Java在内的任何语言绑定,只与 "Class文件" 这种特定的二进制文件所关联, Class文件中包含了Java虚拟机指令集合符号表以及 ...

  6. 分享到qq空间等代码

    <!-- Baidu Button BEGIN --><div id="bdshare" class="bdshare_t bds_tools get- ...

  7. webapp一些样式记录

    图片外面的div设置宽高自适应width: 100vw; max-width: 640px; display: block; height: 43.75vw; max-height: 280px; f ...

  8. LaTeX 符号大全

    常用数学符号的 LaTeX 表示方法 2016-10-31 16:22 | 黄荣生   常用数学符号的 LaTeX 表示方法 1.指数和下标可以用^和_后加相应字符来实现.比如: 2.平方根(squa ...

  9. Android 环信 调用相机崩掉 mikdir()

    protected void selectPicFromCamera() { if (!EaseCommonUtils.isSdcardExist()) { Toast.makeText(getAct ...

  10. NOIP2018提高组Day2 解题报告

    前言 关于\(NOIP2018\),详见此博客:NOIP2018学军中学游记(11.09~11.11). \(Day2\)的题目和\(Day1\)比起来,真的是难了很多啊. \(T1\):旅行(点此看 ...