如何使用haproxy负载均衡mysql


本文摘自PHP中文网,作者坏嘻嘻,侵删。

本篇文章给大家带来的内容是关于如何使用haproxy负载均衡mysql ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

系统是一主多从的模式,读写分离是在应用程序的层面实现的,insert、delete、update、alter走主库,select给从库。然后给从库做了load balancing,用keepalived组合haproxy。

20180908230146645.png

话不多说,直接开干。

系统环境 :centos7

话说回来,不知何时起haproxy的社区官网被墙了...唉唉唉,可以通过这个地址下载最新稳定版本的haproxy 。

1

# wget https://www.haproxy.org/download/1.8/src/haproxy-1.8.9.tar.gz

建议朋友们在安装之前读一读自述文件

1

# cat /usr/src/haproxy-1.8.9/README

安装haproxy,这里前缀关键字PREFIX指定安装目录,用的是大写字母。一般常规源码安装,是在configure指令后加选项"--prefix",要加以区分

1

2

3

4

# tar -zxf haproxy-1.8.9.tar.gz -C /usr/src/

# cd /usr/src/haproxy-1.8.9/

# make TARGET=linux2628 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 PREFIX=/usr/local/haproxy

# make install  PREFIX=/usr/local/haproxy

创建haproxy程序用户以及配置文件目录

1

2

# useradd -M -s /sbin/nologin haproxy

# mkdir /etc/haproxy

haproxy配置文件在这个版本的包里没有提供样例,需要手动建立的

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

# touch /etc/haproxy/haproxy.cfg

# more /etc/haproxy/haproxy.cfg

#global    log  /dev/log   local0 info    log  /dev/log

  local1 notice    pidfile  

    /var/run/haproxy.pid    maxconn     400000 

      user        haproxy    group   

         haproxy    nbproc      1    daemon

#defaults    mode   http    log   global

   option http-server-close    option           

         redispatch    retries         

      0    timeout http-request 

        10s    timeout queue    

              1m    timeout connect    

                  10s    timeout client     

                      1m    timeout server    

                           1m    timeout http-keep-alive  300s 

             timeout check           10s    maxconn   

                   100000

listen mysql_select  bind *:3306  mode tcp  balance roundrobin

 #balance source  #option mysql-check user haproxy  timeout server  15s 

 timeout connect 15s  server mysql162 192.168.5.162:3306 check port 3306 inter 5000 fall 5

  server mysql163 192.168.5.163:3306 check port 3306 inter 5000 fall 5 

  server mysql164 192.168.5.164:3306 check port 3306 inter 5000 fall 5

listen stats        mode http        bind 0.0.0.0:7979        stats enable            stats hide-version        stats uri /haproxy?hello        stats realm Haproxy\ Statistics        stats auth qkc:pwd@123        stats admin if TRUE


haproxy的日志默认是输出到系统的syslog中,查看起来不是非常方便,为了更好地管理haproxy

阅读剩余部分

相关阅读 >>

Linux系统难吗

Linux crond不执行的原因

Linux修改用户密码的方法是什么

如何处理能 ping 通但端口不通时端口可用性探测

Linux显示乱码怎么办?

Linux下什么是进程

如何给Linux配置ip地址

Linux备份文件命令有哪些?

Linux中.sh文件是什么?

操作系统--Linux的详细介绍

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...