环境: centos6.5_x64

准备:

两台mysql机器

主1 master:  192.168.32.130

主2 backup:  192.168.32.131

VIP: 192.168.32.100

步骤:

1.配置mysql的双主架构

2.安装keepalived

keepalived-1.2.23.tar.gz

yum -y install openssl openssl-devel

wget http://www.keepalived.org/software/keepalived-1.2.23.tar.gz

tar zxvf keepalived-1.2.23.tar.gz

cd keepalived-1.2.23

./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.18-164.el5-i686

make && make install

3.把keepalived设置为系统服务

cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/

cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

mkdir /etc/keepalived/

cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

4.修改keepalived配置

vi /etc/keepalived/keepalived.conf  //详见.conf详细配置

vi /usr/local/keepalived/mysql.sh

#!/bin/bash

pkill keepalived

chmod +x /usr/local/keepalived/mysql.sh

/etc/init.d/keepalived start

5.测试

5.1 分别在两台mysql机器上授权, 允许用户远程登录

mysql> grant all on *.* to'kkk'@'192.168.32.%' identified by '123456';

mysql> flush privileges;

5.2 在任何一台机器上, 通过虚拟IP来连接mysql服务器

mysql -ukkk -p123456 -h192.168.32.100

5.3 停止master,看是否能正常切换到backup,然后来查看VIP在哪台服务器上

service mysqld stop

ip addr

5.4 master服务器故障恢复后,是否主动抢占资源,成为活动服务器 (取决于这个参数nopreempt)

keepalived.conf详细配置

! Configuration File for keepalived

global_defs {

   notification_email {

     acassen@firewall.loc

     failover@firewall.loc

     sysadmin@firewall.loc

   }

   notification_email_from Alexandre.Cassen@firewall.loc

   smtp_server 192.168.200.1

   smtp_connect_timeout 

   router_id LVS_DEVEL

   vrrp_skip_check_adv_addr

   vrrp_strict

   vrrp_garp_interval 

   vrrp_gna_interval 

}

vrrp_instance VI_1 {

    state BACKUP

    interface eth0

    virtual_router_id 

    priority   #优先级 (backup设置为90)

    advert_int 

    nopreempt  #不主动抢占资源,只在master这台优先级高的设置 (backup不设置) 

    authentication {

        auth_type PASS

        auth_pass 

    }

    virtual_ipaddress {

        192.168.32.100

    }

}

virtual_server  {

     delay_loop 

     #lb_algo wrr

     #lb_kind DR

     persistence_timeout 

     protocol TCP

     real_server  {  #真实mysql服务器的ip地址

         weight 

         notify_down /usr/local/keepalived/mysql.sh  #貌似没有执行脚本, why?

         TCP_CHECK {

             connect_timeout 

             nb_get_retry 

             delay_before_retry 

             connect_port 

         }

     }

;

mysql系列之8.mysql高可用 (keepalived)的更多相关文章

  1. [转帖]【MySQL+keepalived】用keepalived实现MySQL主主模式的高可用

    [MySQL+keepalived]用keepalived实现MySQL主主模式的高可用 https://www.jianshu.com/p/8694d07595bc 一.实验说明 MySQL主主模式 ...

  2. 利用keepalive+mysql replication 实现数据库的高可用

    利用keepalive+mysql replication 实现数据库的高可用 http://www.xuchanggang.cn/archives/866.html

  3. Mysql双主双从高可用集群的搭建且与MyCat进行整合

    1.概述 老话说的好:瞻前顾后.患得患失只会让我们失败,下定决心,干就完了. 言归正传,之前我们聊了Mysql的一主一从读写分离集群的搭建,虽然一主一从或一主多从集群解决了并发读的问题,但由于主节点只 ...

  4. linux 高可用----keepalived+lvs

    什么是高可用? HA(high availability)即高可用性:就是在高可用集群中发生单点故障时,能够自动转移资源并切换服务,以保证服务一直在线的机制. LVS LVS:(linux virtu ...

  5. 解决nginx负载均衡高可用keepalived只针对物理机的问题

    在高可用keepalived软件,在默认的情况下仅仅在对方机器宕机或keepalived停掉的时候才会接管业务. 但是在实际工作过程中,例如在nginx负载均衡工作实例中,nginx服务已停止,而ke ...

  6. 高可用Keepalived+LVS搭建流程

    本流程搭建1个master,1个backup节点的Keepalived,使用lvs轮询2个节点的服务. 一.使用版本 CentOS 7.7 Keepalived 1.3.5 ipvsadm 1.27( ...

  7. 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式 1.修改my.cnf配置文件 默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容: server-id=1 log-bi ...

  8. 【Keepalived+MySQL】MySQL双主互备+高可用

    一.基本信息说明 [DB1] IP: 192.168.102.144 hostname: LVS-Real1 [DB2] IP: 192.168.102.145 hostname: LVS-Real2 ...

  9. 企业级-Mysql双主互备高可用负载均衡架构(基于GTID主从复制模式)(原创)

    前言:          原理与思想        这里选用GTID主从复制模式Mysql主从复制模式,是为了更加确保主从复制的正确性.健康性与易配性.这里做的是两服务器A,B各有Mysql实例331 ...

随机推荐

  1. Python--Day2/Day3/Day4(运算符、数据类型及内建函数)

    一.昨日内容回顾 Python种类:CPython(Python).JPython.IronPython.PyPy 编码: Unicode.UTF-8.GBK while循环 if...elif... ...

  2. MFC中 日期字符串的转换

    一.将字符串2011-08-1800:00:00转换为字符串2011-8-18,通过以下的函数 CString DataDeleteZero(CString DATA) { CStringstrmon ...

  3. 雪习新知识:Java 内部类

    本文出自 http://blog.csdn.net/zhaizu/article/details/49176543,转载请注明出处. 嵌套类,内部类,静态内部类,静态嵌套类.匿名类,成员类,局部类,傻 ...

  4. {}在javascript与(python,java)中的含义区别

    {}在javascript中是对象,其访问属性的方法为 a.name,a['name'],参见http://www.itxueyuan.org/view/6332.html {}在python,jav ...

  5. Android Canvas之Path操作

    接上篇,Android自己定义View工具:Paint&Canvas(二) 上一篇中介绍的Canvas绘制图形仅仅能画一些常规图形(圆.椭圆.矩形等),假设想绘制更复杂的图形.Path神器来了 ...

  6. C# 字节数组拼接的速度实验(Array.copy(),Buffer.BlockCopy(),Contact())

    无聊做了如题的一个算法的优劣性能比较,由于很多人都只关心结果,那么我先贴出结果如下: 由于我的测试数据量比较小,只能得出Array.Copy()和Buffer.BlockCopy()方法性能要好于Co ...

  7. web 表单方式上传文件方法(不用flash插件)

    原理:使用表单的input type="file"标签,通过ajax提交表单请求,后台获取请求中的文件信息,进行文件保存操作 由于我测试用的做了一个上传文件和上传图片方法,所以我有 ...

  8. An easy to use android color picker library

    https://github.com/xdtianyu/ColorPicker

  9. python之prettytable

    sdata={'语文':89,'数学':96,'音乐':39,'英语':78,'化学':88} #字典向Series转化 >>> studata=Series(sdata) > ...

  10. MagicalRecord使用教程【转载】

    原文地址:http://www.ithao123.cn/content-96403.html 下面是在xcode5.1下ARC环境中的使用教程 1. 将 MagicalRecord 文件夹拖入到工程文 ...