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协议

最新文章

  1. ACID属性区别
  2. C++_系列自学课程_第_7_课_数组_《C++ Primer 第四版》
  3. 创建WSDL项目
  4. 开发Blog整理
  5. Java-集合练习5
  6. Unsupported major.minor version 51.0 在配置/运行Maven工程时,JDK与Maven所引用的jdk版本不一致
  7. Core Data系列文章(一)Core Data基础
  8. c++中new分配动态数组
  9. 计算两个YUV420P像素数据的PSNR---高等算法
  10. jsonp跨域再谈
  11. [CTSC2010]珠宝商 SAM+后缀树+点分治
  12. &lt;a&gt;链接添加样式问题
  13. Proc文件系统接口调试
  14. select标签的相关操作,选中,获取option的值,二级联动
  15. tomcat中配置https
  16. python-celery定时提交任务
  17. 使用 Maven 来管理项目 &amp; 从 0 开始搭建 Maven 项目
  18. sunstudio 12.3 on solaris 10
  19. MD5加密 时间差 流水号等方法
  20. VS 最近打开清理bat

热门文章

  1. c# pcm
  2. Python学习之Craps赌博游戏篇
  3. 攻防世界 你知道php备份文件吗?
  4. 获取自增长的id值
  5. Jmeter_请求原件之参数化CSV
  6. onblur事件和onfocus事件失效
  7. python练习:编写一个函数isIn,接受两个字符串作为参数,如果一个字符串是另一个字符串的一部分,返回True,否则返回False。
  8. Fluent_Python_Part2数据结构,02-array-seq,序列类型
  9. Wireshark 查看指定进程的网络包
  10. 【模板】凸包向内推进求不严格的半平面交——poj3384