使用mysql服务实现负载均衡
mysql 长连接(tcp协议)模拟负载均衡
1.存在member,member的port与mysql服务port一致为3306
2.vip绑定浮动ip
3.开启mysql服务:
#service mysqld start(centos6.5)
#systemctl start mysqld (centos7)
4.关闭云主机防火墙:
#service iptables stop(centos6.5)
#systemctl stop firewalld(centos7)
5.允许mysql服务远程访问,并新建一个数据库
#GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
#create database test
6.远程访问mysql
#mysql -u<远程登陆的用户> -p -h<ip> -P<port>
Mysql实现负载均衡:
两台云主机上安装mysql服务,云主机ip分别为:server1:192.168.5.11、server2:192.168.5.12 vip浮动ip:25.0.0.165
分别创建不同的数据库:
Server1:
>mysql -uroot -p
>create database member1;
Server2:
>mysql -uroot -p
>create database member2;
客户端测试一下数据库服务:
Mysql -u root -p 12345 -h 192.168.5.11 -e “show databases;”
Mysql -u root -p 12345 -h 192.168.5.12 -e “show databases;”
修改mysql配置文件:
vi /etc/my.cnf 修改监听端口
查看haproxy配置文件中是否更新配置
Vim /var/lib/neutron/lbaas/<pool-id>/conf
使用脚本持续访问mysql
create_connections.sh
#!/usr/bin/expect
#配置登陆数据库的端口
set vipport 80
#配置登陆数据库的ip地址
set vipip 25.0.4.194
#配置数据库用户名
set username admin
#配置数据库登陆密码
set password admin
spawn mysql -h $vipip -u $username -P $vipport -p
#spawn ssh -p $port oracle@$oracleip
expect "Enter password:"
send "$password\r"
expect "mysql> "
#send "spool content.txt\r"
send "show databases;\r"
expect "mysql> "
send "select sleep(600);\r"
expect "mysql> "
send "show databases;\r"
#send "spool off\r"
#send "quit\r"
expect eof
loop.sh
#!/bin/bash
i=0
main ()
{
for i in {1..1000}
do
{
i=i+1
expect -f create_connections.sh
}&
done
}
main
使用&实现shell脚本的并行
如果负载均衡不生效,在pool所在节点监听一下member是否正常:
ipnetns exec qlbaas-<vip-port-id> curl http://<member-ip>
ipnetns相关命令:
查看namespace:ip netns list
监听服务:ip netns exec qlbaas- telnet
遇到的问题及解决方法:
1.远程访问返回2013错误,可以依照网上说的方式先试着解决一下,如果仍然无法实现,需要检查负载均衡的协议是否为tcp协议
使用mysql服务实现负载均衡的更多相关文章
- 搭建MySQL高可用负载均衡集群
1.简介 使用MySQL时随着时间的增长,用户量以及数据量的逐渐增加,访问量更是剧增,最终将会使MySQL达到某个瓶颈,那么MySQL的性能将会大大降低.这一结果也不利于软件的推广. 那么如何跨过这个 ...
- 搭建MySQL高可用负载均衡集群(转)
阅读目录 1.简介 2.基本环境 3.配置MySQL主主复制 4.中间件简述 4.1.Haproxy介绍 4.2.keepalived介绍 5.中间件的安装与配置(haproxy.keepalived ...
- [转]搭建MySQL高可用负载均衡集群
转自:http://www.cnblogs.com/phpstudy2015-6/p/6706465.html 阅读目录 1.简介 2.基本环境 3.配置MySQL主主复制 4.中间件简述 4.1.H ...
- 【Nginx】如何使用Nginx实现MySQL数据库的负载均衡?看完我懂了!!
写在前面 Nginx能够实现HTTP.HTTPS协议的负载均衡,也能够实现TCP协议的负载均衡.那么,问题来了,可不可以通过Nginx实现MySQL数据库的负载均衡呢?答案是:可以.接下来,就让我们一 ...
- 关于Ocelot和Consul 实现GateWay(网关) 服务注册 负载均衡等方面
Ocelot 路由 请求聚合 服务发现 认证 鉴权 限流熔断 内置负载均衡器 Consul 自动服务发现 健康检查 通过Ocelot搭建API网关 服务注册 负载均衡 1. ...
- .net core grpc consul 实现服务注册 服务发现 负载均衡(二)
在上一篇 .net core grpc 实现通信(一) 中,我们实现的grpc通信在.net core中的可行性,但要在微服务中真正使用,还缺少 服务注册,服务发现及负载均衡等,本篇我们将在 .net ...
- 搭建服务与负载均衡的客户端-Spring Cloud学习第二天(非原创)
文章大纲 一.Eureka中的核心概念二.Spring RestTemplate详解三.代码实战服务与负载均衡的客户端四.项目源码与参考资料下载五.参考文章 一.Eureka中的核心概念 1. 服务提 ...
- 一起来学Spring Cloud | 第三章:服务消费者 (负载均衡Ribbon)
一.负载均衡的简介: 负载均衡是高可用架构的一个关键组件,主要用来提高性能和可用性,通过负载均衡将流量分发到多个服务器,多服务器能够消除单个服务器的故障,减轻单个服务器的访问压力. 1.服务端负载均衡 ...
- .Net Core Grpc Consul 实现服务注册 服务发现 负载均衡
本文是基于..net core grpc consul 实现服务注册 服务发现 负载均衡(二)的,很多内容是直接复制过来的,..net core grpc consul 实现服务注册 服务发现 负载均 ...
随机推荐
- 从centos7镜像到搭建kubernetes集群(kubeadm方式安装)
在网上看了不少关于Kubernetes的视频,虽然现在还未用上,但是也是时候总结记录一下,父亲常教我的一句话:学到手的东西总有一天会有用!我也相信在将来的某一天会用到现在所学的技术.废话不多扯了... ...
- .net core IIS 发布
发布时注意事项: 1.本机安装.net core SDK 2.启动项目预加载 3.应用池配置为 无托管代码 4.设置应用池-->高级设置-->启动模式为:AlwaysRunning 5.在 ...
- Spring Boot整合EhCache
本文讲解Spring Boot与EhCache的整合. 1 EhCache简介 EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认CacheProvid ...
- 图片的onerror 事件解析
1. 该事件触发条件 文档和图像在加载失败的时候(用户体验会下降.)会触发该事件 2. 解决碎图的办法 利用img的onerror事件和javascript 例: 现有的图片是 successed.p ...
- PAT 1010 Radix (二分)
Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The an ...
- Go 后端主要做什么
漫谈 Go 语言后端开发 :https://blog.csdn.net/u010986776/article/details/87276303 Golang 资深后端工程师要了解的知识:https:/ ...
- vue 中监听页面滚动
监听页面滚动 在methods中定义一个方法 handleScroll() { //获取滚动时的高度 let scrollTop = window.pageYOffset || document.do ...
- RTU license
Right to Use (RTU) licensing is a model in which licenses are not tied to a unique device identifier ...
- 页面布局 Wrap 组件 和 RaisedButton按钮
一.RaisedButton 定义一个按钮 Flutter 中通过 RaisedButton 定义一个按钮.RaisedButton 里面有很多的参数,只讲简单的进行使用. return Raised ...
- 《TCP/IP网络编程》读书笔记
1.Windows 下的 socket 程序和 Linux 思路相同,但细节有所差别(1) Windows 下的 socket 程序依赖 Winsock.dll 或 ws2_32.dll,必须提前加载 ...