lvs-dr实现mysql负载均衡集群

环境说明:

服务器的操作系统均为centos7,vip和rip在同一网段,使用lvs-dr模型来实现mysql集群服务

所有服务器均已配置好处VIP外的静态IP

两台mysql服务器的主机名分别是node1和node2,且已安装并启动好mysql

1. DR上配置VIP和转发规则

#配置VIP
[root@DR ~]# ip addr add 192.168.32.250/32 dev eth0 #配置ipvs转发规则
[root@DR ~]# yum -y install ipvsadm #rr算法并不适合实际场景,这里仅作为测试
[root@DR ~]# ipvsadm -A -t 192.168.32.250:3306 -s rr
[root@DR ~]# ipvsadm -a -t 192.168.32.250:3306 -r 192.168.32.130:3306 -g
[root@DR ~]# ipvsadm -a -t 192.168.32.250:3306 -r 192.168.32.135:3306 -g
[root@DR ~]# ipvsadm -Sn
-A -t 192.168.32.250:3306 -s rr
-a -t 192.168.32.250:3306 -r 192.168.32.130:3306 -g -w 1
-a -t 192.168.32.250:3306 -r 192.168.32.135:3306 -g -w 1
#保存配置
[root@DR ~]# ipvsadm -Sn > /etc/sysconfig/ipvsadm #如果误删,可以用保存的配置恢复
[root@DR ~]# ipvsadm -C
[root@DR ~]# ipvsadm -R < /etc/sysconfig/ipvsadm
[root@DR ~]# ipvsadm -Sn
-A -t 192.168.32.250:3306 -s rr
-a -t 192.168.32.250:3306 -r 192.168.32.130:3306 -g -w 1
-a -t 192.168.32.250:3306 -r 192.168.32.135:3306 -g -w 1

2. RS上配置arp内核参数和VIP

所有RS上都要做

[root@node1 ~]# vim /etc/sysctl.conf
#添加以下两行
net.ipv4.conf.all.arp_ignore = 1
# 将对应网卡设置为只回应目标IP为自身接口地址的ARP请求
net.ipv4.conf.all.arp_announce = 2
# 将ARP请求的源IP设置为eth0上的IP,也就是RIP [root@node1 ~]# sysctl -p
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2 [root@node1 ~]# ip addr add 192.168.32.250/32 dev lo
[root@node1 ~]# route add -host 192.168.32.250/32 dev lo

3. 配置数据库

两台数据库服务器上授权,并创建不同名字的数据库用于区分

#node1上登录MySQL
MariaDB [(none)]> grant all on *.* to 'root'@'192.168.%.%' identified by '123456';
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> create database node1;
Query OK, 1 row affected (0.00 sec) #node2上登录MySQL
MariaDB [(none)]> grant all on *.* to 'root'@'192.168.%.%' identified by '123456';
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> create database node2;
Query OK, 1 row affected (0.00 sec)

4. 客户端访问测试

[root@localhost ~]# mysql -uroot -p123456 -h192.168.32.250 -e 'show databases;'
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| node1 |
| performance_schema |
| test |
+--------------------+
[root@localhost ~]# mysql -uroot -p123456 -h192.168.32.250 -e 'show databases;'
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| node2 |
| performance_schema |
| test |
+--------------------+
[root@localhost ~]# mysql -uroot -p123456 -h192.168.32.250 -e 'show databases;'
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| node1 |
| performance_schema |
| test |
+--------------------+
[root@localhost ~]# mysql -uroot -p123456 -h192.168.32.250 -e 'show databases;'
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| node2 |
| performance_schema |
| test |
+--------------------+ [root@localhost ~]# for i in `seq 10`;do mysql -uroot -p123456 -h192.168.32.250 -e 'show databases;'| grep node ; done
node2
node1
node2
node1
node2
node1
node2
node1
node2
node1

LVS-DR实现mysql负载均衡集群的更多相关文章

  1. Keepalived+LVS(dr)高可用负载均衡集群的实现

    一 环境介绍 1.操作系统CentOS Linux release 7.2.1511 (Core) 2.服务keepalived+lvs双主高可用负载均衡集群及LAMP应用keepalived-1.2 ...

  2. 测试LVS+Keepalived高可用负载均衡集群

    测试LVS+Keepalived高可用负载均衡集群 1. 启动LVS高可用集群服务 此时查看Keepalived服务的系统日志信息如下: [root@localhost ~]# tail -f /va ...

  3. Heartbeat+LVS构建高可用负载均衡集群

    1.heartbeat简介: Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里 ...

  4. 配置LVS + Keepalived高可用负载均衡集群之图文教程

    负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性.  重点:每个节点时间都同步哈! C++代码 [r ...

  5. LVS : Linux Virtual Server 负载均衡,集群,高并发,robust

    1 LVS : Linux Virtual Server http://www.linuxvirtualserver.org/ http://www.linuxvirtualserver.org/zh ...

  6. LVS+Keepalived高可用负载均衡集群架构实验-01

    一.为什么要使用负载均衡技术? 1.系统高可用性 2.  系统可扩展性 3.  负载均衡能力 LVS+keepalived能很好的实现以上的要求,LVS提供负载均衡,keepalived提供健康检查, ...

  7. lvs+keepalived+nginx高性能负载均衡集群

    项目发布时候,别人还能访问呢? 双机主从热备 LVS作用 LVS是一个开源的软件,可以实现传输层四层负载均衡.LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器.目前有 ...

  8. Ubuntu构建LVS+Keepalived高可用负载均衡集群【生产环境部署】

    1.环境说明: 系统版本:Ubuntu 14.04 LVS1物理IP:14.17.64.2   初始接管VIP:14.17.64.13 LVS2物理IP:14.17.64.3   初始接管VIP:14 ...

  9. LVS (Linux Virtual Server) - 负载均衡集群 - keepalived

    今天稍微了解了LVS 的原理和使用,在网络上找到不少好文章,稍微加以处理并在这里备份: 原理介绍:Linux Virtual Server 关于:http://www.linuxvirtualserv ...

随机推荐

  1. Layui数据表格动态加载操作按钮

    效果: 方法一:绑定模版选择器 <div class="layui-card"> <div class="layui-card-body layui-r ...

  2. day59 pip安装django出错解决方案

    在虚拟环境下,输入 pipinstall django ==2.2,安装django,可能会出现超时问题 ​ 这里的报错是网络问题,解决方案有如下三种 (1)多试几次,网络好就装上了 (2)Cmd输入 ...

  3. 双向绑定和 vuex 是否冲突

    在严格模式下确实有问题,解决方案: https://vuex.vuejs.org/zh/guide/forms.html

  4. JavaScript图形实例:Canvas API

    1.Canvas概述 Canvas API(画布)用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图(bitmap). 要使用HTML5在浏览器窗口中绘制 ...

  5. 批量删除当前文件夹下面的.svn文件夹

    for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn 使用方法: 新建text文档,复制上面的文本 ...

  6. requests接口自动化5-表单参数形式的post请求:data

    post请求相对于get请求多一个body部分,body部分常见的数据类型有以下四种(注意是常见的,并不是只有4种) application/x-www-form-urlencoded(表单形式) a ...

  7. Python之爬虫(二十) Scrapy爬取所有知乎用户信息(上)

    爬取的思路 首先我们应该找到一个账号,这个账号被关注的人和关注的人都相对比较多的,就是下图中金字塔顶端的人,然后通过爬取这个账号的信息后,再爬取他关注的人和被关注的人的账号信息,然后爬取被关注人的账号 ...

  8. 接口测试框架实战(三)| JSON 请求与响应断言

    关注公众号,获取测试开发实战干货合辑.本文节选自霍格沃兹<测试开发实战进阶>课程教学内容. 数据驱动就是通过数据的改变驱动自动化测试的执行,最终引起测试结果的改变.简单来说,就是参数化在自 ...

  9. OSCP Learning Notes - Capstone(4)

    SickOS 1.2 Walkthrough Preparation: Down load the SickOS virtual machines from the following website ...

  10. Python Ethical Hacking - BACKDOORS(8)

    Cross-platform hacking All programs we wrote are pure python programs They do not rely on OS-specifi ...