LVS-DR实现mysql负载均衡集群
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负载均衡集群的更多相关文章
- Keepalived+LVS(dr)高可用负载均衡集群的实现
一 环境介绍 1.操作系统CentOS Linux release 7.2.1511 (Core) 2.服务keepalived+lvs双主高可用负载均衡集群及LAMP应用keepalived-1.2 ...
- 测试LVS+Keepalived高可用负载均衡集群
测试LVS+Keepalived高可用负载均衡集群 1. 启动LVS高可用集群服务 此时查看Keepalived服务的系统日志信息如下: [root@localhost ~]# tail -f /va ...
- Heartbeat+LVS构建高可用负载均衡集群
1.heartbeat简介: Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里 ...
- 配置LVS + Keepalived高可用负载均衡集群之图文教程
负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性. 重点:每个节点时间都同步哈! C++代码 [r ...
- LVS : Linux Virtual Server 负载均衡,集群,高并发,robust
1 LVS : Linux Virtual Server http://www.linuxvirtualserver.org/ http://www.linuxvirtualserver.org/zh ...
- LVS+Keepalived高可用负载均衡集群架构实验-01
一.为什么要使用负载均衡技术? 1.系统高可用性 2. 系统可扩展性 3. 负载均衡能力 LVS+keepalived能很好的实现以上的要求,LVS提供负载均衡,keepalived提供健康检查, ...
- lvs+keepalived+nginx高性能负载均衡集群
项目发布时候,别人还能访问呢? 双机主从热备 LVS作用 LVS是一个开源的软件,可以实现传输层四层负载均衡.LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器.目前有 ...
- 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 ...
- LVS (Linux Virtual Server) - 负载均衡集群 - keepalived
今天稍微了解了LVS 的原理和使用,在网络上找到不少好文章,稍微加以处理并在这里备份: 原理介绍:Linux Virtual Server 关于:http://www.linuxvirtualserv ...
随机推荐
- C++ 字符串中子串个数
子串可重叠情况: int fun1(const std::string& str, const std::string& sub){ int num = 0; for (size_t ...
- U盘+grub2安装centos8实战
1. U盘准备 这里的U盘也可以换成硬盘 grub2安装一直失败,怀疑U盘坏了,下面命令修复了一下 [root@host2 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE ...
- DVWA学习记录 PartⅡ
Command Injection 1. 题目 Command Injection,即命令注入,是指通过提交恶意构造的参数破坏命令语句结构,从而达到执行恶意命令的目的. 2. Low a. 代码分析 ...
- redis(十六):Redis 安装,部署(LINUX环境下)
第一步:下载安装包 访问https://redis.io/download 到官网进行下载.这里下载最新的4.0版本. 第二步:安装 1.通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压 ...
- Django框架09 /ajax、crsf、settings导入
Django框架09 /ajax.crsf.settings导入 目录 Django框架09 /ajax.crsf.settings导入 1. ajax概述 2. ajax应用 3. ajax上传文件 ...
- 重学c#系列——c#运行原理(二)
前言 c# 是怎么运行的呢?是否和java一样运行在像jvm的虚拟机上呢?其实差不多,但是更广泛. c# 运行环境不仅c#可以运行,符合.net framework 开发规范的都可以运行. c# 程序 ...
- mysql中DDL库和表的管理
#DDL /* 数据定义语言 库和表的管理 一.库的管理 创建.修改.删除 二.表的管理 创建.修改.删除 创建:create 修改:alter 删除:drop */ #一.库的管理 #1.库的创建 ...
- jquery文件表单上传
1. 引入jquery文件 <script src="js/jquery-2.1.1.min.js"></script> 2. 创建form表单,如下: ...
- Ethical Hacking - NETWORK PENETRATION TESTING(5)
Deauthentication Attacks Theory This attack is used to disconnect any device from any network within ...
- Web应用程序安全与风险
一.Web应用程序安全与风险 更多渗透测试相关内容请关注此地址:https://blog.csdn.net/weixin_45380284 1.web发展历程 静态内容阶段(HTML) CGI程序阶段 ...