mysql+keepalived

1.安装

# yum install -y openssl-devel popt-devel

# tar zxf keepalived-1.2.8.tar.gz

# cd keepalived-1.2.8

# ./configure --prefix=/usr/local/keepalived

# make && make install

2.将keepalived命令、启动脚本及配置文件复制到相应目录下并启动服务

# which keepalived

/usr/local/sbin/keepalived

# ln -s /usr/local/keepalived/sbin/keepalived /usr/bin/keepalived

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

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

# /etc/init.d/keepalived start

3.创建配置文件及检测脚本

# vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_script check_mysql {

script "/root/check_mysql.sh"

interval 2

weight 2

}

vrrp_instance VI_1 {

state MASTER #mysql2此处改为BACKUP

interface eth1

virtual_router_id 51

priority 100 #mysql此处改为90,或小于100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

track_script {

check_mysql

}

virtual_ipaddress {

192.168.36.200/24 dev eth1

}

}

# check_mysql.sh

MYSQL=/usr/bin/mysql

MYSQL_HOST=localhost

MYSQL_USER=root

MYSQL_PASSWORD=redhat

$MYSQL -h $MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PASSWORD -e "show status;" >/dev/null 2>&1

#$mysqlclient --host=$host --port=$port --user=$user --password=$password -e "show databases;" > /dev/null 2>&1

if [ $? == 0 ]

then

echo " $host mysql login successfully"

exit 0

else

#echo " $host mysql login faild" #若mysql关闭,则keepalived关闭

/etc/init.d/keepalived stop

exit 2

fi

4.数据库授权远程登录

# mysql -p

mysql> grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘redhat‘;

mysql> flush privileges;

# mysql -uroot -predhat -h192.168.36.200 #vip登录

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| cheungssh |

| discuz |

| mysql |

+--------------------+

4 rows in set (0.03 sec)

mysql> quit

Bye

5.检测

此时vip在mysql1的eth1上,且两端的mysql、keepalived均开启

# ip a

eth1:

inet 192.168.36.160/24 brd 192.168.36.255 scope global eth1

inet 192.168.36.200/24 scope global secondary eth1

# /etc/init.d/mysqld status

mysqld (pid 7219) is running...

# /etc/init.d/keepalived status

keepalived (pid 7248) is running...

MYSQL1端:关闭mysql1的mysql服务,keepalived会自动关闭且vip飘在mysql2上

# /etc/init.d/mysqld stop

Stopping mysqld: [ OK ]

# /etc/init.d/mysqld status

mysqld is stopped

# /etc/init.d/keepalived status

keepalived is stopped

MYSQL2端:查看vip

# ip a

eth1:

inet 192.168.36.161/24 brd 192.168.36.255 scope global eth1

inet 192.168.36.200/24 scope global secondary eth1

MYSQL1端:开启mysql、keepalived服务,vip飘回来

# /etc/init.d/mysqld start

Starting mysqld: [ OK ]

# /etc/init.d/keepalived start

Starting keepalived: [ OK ]

# ip a

2: eth1:

inet 192.168.36.160/24 brd 192.168.36.255 scope global eth1

inet 192.168.36.200/24 scope global secondary eth1

时间: 2024-08-04 12:09:27

mysql+keepalived的相关文章

MySQL keepalived 双主.md

MySQL keepalived 双主搭建 环境说明 系统 IP 主机名 mysql keepalived VIP CentOS 6.8 192.168.197.61 C6-node1 5.6.36 1.2.13 192.168.197.88 CentOS 6.8 192.168.197.62 C6-node2 5.6.36 1.2.13 192.168.197.88 安装MySQL双主 C6-node1 MySQL的安装及初始化这里不做详细介绍,下面贴出node1的my.cnf的配置文件: [

模拟mysql&keepalived 主主备份故障切换测试

模拟mysql&keepalived 主主备份故障切换 模拟mysql&keepalived 主主备份故障切换测试

mysql+keepalived 双主热备高可用

理论介绍:我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.使用Keepalived,可以通过虚拟IP,实现双主对外的统一接口以及自动检查.失败切换机制,从而实现MySQL数据库的高可用方案. 环境说明:版本 version

Mysql + keepalived 实现双主热备读写分离【转】

Mysql + keepalived 实现双主热备读写分离 2013年6月16日frankwong发表评论阅读评论 架构图 系统:CentOS6.4_X86_64软件版本:Mysql-5.6.12,Keepalived-1.2.7环境简介:1.Master-A 192.168.1.168 (Mysql+Keepalived)2.Master-B 192.168.1.169 (Mysql+Keepalived)3.写入VIP 192.168.100 (168主,169从)4.读取VIP 192.1

Mysql+Keepalived双主热备高可用操作步骤详细解析

mysql+keepalived双主热备高可用的介绍: 我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.使用Keepalived,可以通过虚拟IP,实现双主对外的统一接口以及自动检查.失败切换机制,从而实现MySQL数据库的

Mysql+Keepalived双主热备高可用操作记录

环境: ubuntu18.04.2 mysql5.7.21 1 #1)安装keepalived并将其配置成系统服务.master1和master2两台机器上同样进行如下操作: 2 apt-get install libssl-dev 3 apt-get install openssl 4 apt-get install libpopt-dev 5 [[email protected] ~]# cd /usr/local/src/ 6 [[email protected] src]# wget h

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

[MySQL+keepalived]用keepalived实现MySQL主主模式的高可用 https://www.jianshu.com/p/8694d07595bc 一.实验说明 MySQL主主模式,是两台MySQL数据库互为主从. 此实验是用keepalived实现MySQL主主模式的高可用,基于已经安装好了主主架构的MySQL,然后配置keepalived,验证高可用性! 二.实验环境 操作系统:CentOS 7.5 serverA:192.168.1.104 serverB: 192.1

MySQL + KeepaLived 高可用

MySQL + KeepaLived 高可用 1. 基础环境 两台服务器,MySQL互为主从 MASTER 的 IP:10.0.0.11 BACKUP 的 IP:10.0.0.12 2.MASTER 实操 yum -y install keepalived cd /etc/keepalivedcp keepalived.conf keepalived.conf.bakvim keepalived.conf vrrp_instance VI_1 {   state MASTER       # 主

Oracle Compute云快速搭建MySQL Keepalived高可用架构

最近有个客户在测试Oracle Compute云,他们的应用需要使用MySQL数据库,由于是企业级应用一定要考虑高可用架构,因此有需求要在Oracle Compute云上搭建MySQL高可用集群.客户根据自身的技术储备想要使用Keepalived组件来配合MySQL实现.今天结合Oracle Compute刚刚宣布terraform支持的架构即代码方式,交付给客户一个快速搭建MySQL+Keepalived高可用架构,来帮助他们快速搭建测试环境甚至将来使用到正式环境. MySQL主主复制模式 M