Lvs+keepalived+mysql主从热备
p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 10.5pt; font-family: "Calibri", "sans-serif" }
h1 { margin-top: 17.0pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 0cm; text-align: justify; line-height: 240%; page-break-after: avoid; font-size: 24.0pt; font-family: "Calibri", "sans-serif"; color: red; font-weight: bold }
h2 { margin-top: 13.0pt; margin-right: 0cm; margin-bottom: 13.0pt; margin-left: 0cm; text-align: justify; line-height: 173%; page-break-after: avoid; font-size: 16.0pt; font-family: "Calibri Light", "sans-serif"; font-weight: bold }
h3 { margin-top: 13.0pt; margin-right: 0cm; margin-bottom: 13.0pt; margin-left: 0cm; text-align: justify; line-height: 173%; page-break-after: avoid; font-size: 16.0pt; font-family: "Calibri", "sans-serif"; font-weight: bold }
p.MsoHeader,li.MsoHeader,div.MsoHeader { margin: 0cm; margin-bottom: .0001pt; text-align: center; border: none; padding: 0cm; font-size: 9.0pt; font-family: "Calibri", "sans-serif" }
p.MsoFooter,li.MsoFooter,div.MsoFooter { margin: 0cm; margin-bottom: .0001pt; font-size: 9.0pt; font-family: "Calibri", "sans-serif" }
a:link,span.MsoHyperlink { color: #0563C1; text-decoration: underline }
a:visited,span.MsoHyperlinkFollowed { color: #954F72; text-decoration: underline }
p { margin-right: 0cm; margin-left: 0cm; font-size: 12.0pt; font-family: 宋体 }
p.MsoNoSpacing,li.MsoNoSpacing,div.MsoNoSpacing { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 10.5pt; font-family: "Calibri", "sans-serif" }
span.1Char
{ font-family: "微软雅黑", "sans-serif"; color: red; font-weight: bold }
span.2Char
{ font-family: "Calibri Light", "sans-serif"; font-weight: bold }
span.3Char
{ font-weight: bold }
span.apple-converted-space { }
span.Char { }
span.Char0 { }
.MsoChpDefault { font-family: "Calibri", "sans-serif" }
div.WordSection1 { }
ol { margin-bottom: 0cm }
ul { margin-bottom: 0cm }
Lvs+keepalived+mysql主从热备
实验拓扑图:

一、安装 LVS+keepalived(Master+Backup都需安装)
需要软件
ipvsadm-1.26.tar.gz
keepalived-1.2.13.tar.gz
裸机需要安装如下插件
popt-static-1.13-7.el6.x86_64.rpm
yum -y install libnl* popt* kernel* openssl* gcc* make*

vi /etc/selinux/config #编辑SE防火墙配置文件
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存,退出
setenforce 0 #立即生效

Service iptables stop 关闭防火墙
二、安装Lvs

关联lvs与keepalived的ipvs所需的内核信息
ln -s /usr/src/kernels/2.6.32-71.el6.x86_64/ /usr/src/linux
解压ipvsadm

使用make 进行编译makeinstall 编译后安装

完成后 使用ipvsadm –v 查看版本
三、安装keepalived

解压keepalived

进入目录 配置keepalived存放路径

指定目录后 输出版本信息 和所支持的选项
留意Configure配置Use IPVS Framework、IPVS sync daemon support 、Use VRRP Framework要返回yes,否则无法关联ipvs功能

最后编译安装

优化keepalived路径做软连接
ln -s /usr/local/keepalived/etc/keepalived /etc/
ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
ln -s /usr/local/keepalived/bin/genhash /bin/
ln -s /usr/local/keepalived/sbin/keepalived /sbin/
配置MySQL双机热备
环境说明
Msql主备结构
1、MySQL 主服务器
系统:CentOS 6.2
IP:192.168.1.251
主机名称:MySQLMaster
MySQL 版本:mysql-5.5.22
2、MySQL 从服务器
系统:CentOS 6.2
IP:192.168.1.252
主机名称:MySQLSlave
MySQL 版本:mysql-5.5.22
一、配置MySQL 主从服务器

修改两台服务器的IP 然后使用rpm包安装好mysql数据库,

使用mysql –u root –p 登录 密码默认为空,

建立数据库smiledb;

授权用户rsync 只能从192.168.1.252 这个IP
访问主服务器192.168.1.251 上面的数据库,并且只具有数据库备份的权限,

刷新系统授权表,
备注:在导出之前可以先进入MySQL 控制台执行下面命令

flush tables with read lock; #数据库只读锁定命令,防止导出数据库的时候有数据写入,

#在MySQL 主服务
器进行操作,导出数据库smiledb 到/home/smile.sql
将备份的smile.sql 上传至从服务器(上传大家都会 我就不演示)

在从服务器先创建smiledb库;

使用 use smildb;进入库

导入备份文件到从数据库,

测试在从服务器上登录到主服务器,
二、配置MySQL (主)--服务器的my.cnf 文件

如图,修改my.cnf文件,(上面描述的非常详细)
将主服务器 /usr/share/mysql/my-my-large.cnf 修改为my.cnf并且移动到/etc/ 目录下

然后重启MySQL

再次进入mysql控制台,使用 show master status; 必须把库锁住 否则会出现变动
查看master数据库当前正在使用的二进制日志及当前执行二进制日志位置;
三、配置MySQL (从)--服务器的my.cnf 文件

如图,修改my.cnf文件,(上面描述的非常详细)
将从服务器 /usr/share/mysql/my-my-large.cnf 修改为my.cnf并且移动到/etc/ 目录下

然后重启MySQL

进入mysql控制台 停止slave同步进程

执行同步语句;
change master to master_host='192.168.1.210', master_user='rsync', master_password='123456',master_port=5656, master_log_file='mysql-bin.000001', master_log_pos=107;

开启slave同步信息;

完成后别忘记解除主服务器库的锁定,

最后使用 SHOW SLAVE STATUS\G 查看同步信息;
注意查看:
Slave_IO_Running: Yes Slave_SQL_Running: Yes
以上这两个参数的值为Yes,即说明配置成功!

进入主服务器 创建test表 查看从服务器是否同步过来;
create table test ( id int not null primary key,name char(20) );

show tables;会看到有一个新建的表test,表示数据库同步成功
配置主从keepalived.conf文件


上面的Keepalived.conf配置文件在处: 全局定义的route_id、vrrp_instance state和vrrp_instance的优先级priority。
将虚拟IP绑定到两台Mysql服务器

指定虚拟IP 192.168.1.250
/sbin/ifconfig lo:0 192.168.1.250 netmask 255.255.255.255 broadcast 192.168.1.250
/sbin/route add -host 192.168.1.250 dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p >/dev/null 2>&1

使用ip route 查看是否绑定到l0上

模拟故障
测试realserver

测试关闭其中一台realserver

通过上面测试可以知道,当realserver故障或者无法提供服务时,负载均衡器通过健康检查自动把失效的机器从转发队列删除掉,

启动被关闭的realserver

当realserver故障恢复后,负载均衡器通过健康检查自动把恢复后的机器添加到转发队列中
http://blog.163.com/wingswing@126/blog/static/22676416201173105514120/
Lvs+keepalived+mysql主从热备的更多相关文章
- 使用Keepalived配置主从热备实现Nginx高可用(HA)
Keepalived 简要介绍 Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived 可以用来防止服务器单点故障的发生,通过配合 Nginx 可以实现 web 前端服务 ...
- Mysql主从热备
mysql主从配置比较不错的文章,大家可以参考下~ https://www.cnblogs.com/kissdodog/p/5422195.html
- windows mysql 主从热备
环境说明: Master:192.168.1.200 Slave:192.168.1.210 MySQL 的 Master 配置: 配置my.ini: [mysqld] # T ...
- LVS + keepalived + nginx + tomcat 实现主从热备 + 负载均衡
前言 首先声明下,由于这两天找资料,看了不少博客 ,但是出于不细心,参考者的博客地址没有记录下来,所有文中要是出现了与大家博客相同的地方,那么请大家在评论区说明并附上博客地址,我好引用进来:这里表示抱 ...
- 主从热备+负载均衡(LVS + keepalived)
前言 淘宝架构师李智慧大牛的书籍<大型网站技术架构>以及旭龙兄的博客 --->[大型网站技术实践]初级篇:借助LVS+Keepalived实现负载均衡. 从上参考而得来本文,本文旨 ...
- 【Nginx】(主从热备)LVS+Keepalived+Nginx实现高性能负载均衡集群
一.LVS 1.1 概述 1.2 Nginx与LVS区别什么 二.Keepalived 2.1 概述 2.2 keepalived和其工作原理 三.LVS+Keepalived+Nginx 搭建双机主 ...
- Mysql+Keepalived双主热备高可用操作记录
我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Mast ...
- nginx+keepalived简单双机主从热备
双机主从热备概述 可以两台机子互为热备,平时各自负责各自的服务.在做上线更新的时候,关闭一台服务器的tomcat后,nginx自动把流量切换到另外一台服务的后备机子上,从而实现无痛更新,保持服务的持续 ...
- 《nginx 四》双机主从热备
lvs+keepalived+nginx实现高性能负载均衡集群 LVS作用 LVS是一个开源的软件,可以实现传输层四层负载均衡.LVS是Linux Virtual Server的缩写,意思是Linux ...
随机推荐
- JAVA的SSH框架登录注册
Struts 的MVC设计模式可以使我们的逻辑变得很清晰,主要负责表示层的显示. Spring 的IOC和AOP可以使我们的项目在最大限度上解藕. hibernate的就是实体对象的持久化了, 数据库 ...
- TCP协议详解
TCP协议详解 一.TCP协议 1.TCP 通过以下方式提供可靠性: · ◆ 应用程序分割为TCP认为最合适发送的数据块.由TCP传递给IP的信息单位叫做报文段. · ◆ 当TCP发出一个报文段后 ...
- PHP连接数据库:封装成类
php连接数据库,操作他增删改查等操作,其中要多次连接数据库,每个页面也需要连接数据库,更改数据会及其麻烦: 为了便于数据库的更改,我们可以把固定的那几句话封装成类,这样虽然代码量也差不多,但是有利于 ...
- 2017-2-21 C#基础 if条件语句,作用域
今天学了if 条件语句和作用域.作用域可以用一句话来概括:儿子可以用爹的所有东西,爹不可以用儿子的任何东西.If条件语句我用几个练习题来解释. 1."请输入年份:" 判断是否是闰年 ...
- 每天一个linux命令(44)--ss命令
ss 是 socket statistics 的缩写.顾名思义,ss 命令可以用来获取socket 统计信息,它可以显示和netstat 类似的内容.但 ss 的优势在于它能够显示更多更详细的有关TC ...
- 使用OpenCL
//函数原型举例 cl_int clGetPlatformInfo(cl_platform_id platform, cl_platform_info param_name, size_t param ...
- 做了个新的UWP类库 Sharp2D
C#开发UWP的时候如果要实现高斯模糊效果的话,最好的选择似乎是微软的Win2D 但是Win2D太过庞大了,仅仅是庞大其实也没啥问题,毕竟net core就很庞大,但Win2d是一个Winmd组件 w ...
- ERP实施顾问是干什么的?
ERP实施序列的人员,统称为ERP实施顾问. ERP实施顾问“是把公司的ERP实施作为己任,并投入大量的人力和财力以实现这一目标的群体”.他们精通ERP理论与ERP软件的使用方法,熟练运用项目实施方法 ...
- Spring MVC + Security 4 初体验(Java配置版)
spring Version = 4.3.6.RELEASE springSecurityVersion = 4.2.1.RELEASE Gradle 3.0 + Eclipse Neno(4.6) ...
- Java进制转换示例
收藏的代码,以备查询之用.进制之间转换都是以十进制作为中间层的. int os = 16; //十进制转成十六进制: Integer.toHexString(os); //十进制转成八进制 Integ ...