安装haproxy负载mysql

haproxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。

首先要把selinux关掉 不知道为什么这个以后在研究  然后为了方便防火墙也关了 
一、haproxy下载 
去官网:http://www.haproxy.org/下载 
或者在选择好版本后,使用wget下载,比如这里使用的是1.7.5

wget http://www.haproxy.org/download/1.7/src/haproxy-1.7.5.tar.gz
  • 1

二、安装haproxy 
查看内核版本

uname -r
  • 1

这里写图片描述

根据内核版本选择编译参数: 
这里写图片描述

关于编译参数更详细的参见:https://github.com/haproxy/haproxy

解压haproxy,并安装

tar xf haproxy-1.7.5.tar.gz
cd haproxy-1.7.5
make TARGET=linux2628 PREFIX=/usr/local/haproxy
make install PREFIX=/usr/local/haproxy

安装成功后,查看版本

/usr/local/haproxy/sbin/haproxy -v

这里写图片描述

复制haproxy文件到/usr/sbin下 
因为下面的haproxy.init启动脚本默认会去/usr/sbin下找,当然你也可以修改,不过比较麻烦。

cp /usr/local/haproxy/sbin/haproxy /usr/sbin/

复制haproxy脚本,到/etc/init.d下

cp ./examples/haproxy.init /etc/init.d/haproxy
chmod 755 /etc/init.d/haproxy

创建系统账号

useradd -r haproxy

创建配置文件

mkdir /etc/haproxy
vi /etc/haproxy/haproxy.cfg

在配置文件haproxy.cfg中添加如下设置:

global
        maxconn 4096
        daemon
        chroot      /usr/local/haproxy
       # pidfile     /var/run/haproxy.pid
        #debug
        #quiet
        user haproxy
        group haproxy
 
defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        log 127.0.0.1 local0
        retries 3
        option redispatch
        maxconn 2000
        #contimeout      5000
        #clitimeout      50000
        #srvtimeout      50000
        timeout http-request    10s
        timeout queue           1m
        timeout connect         10s
        timeout client          1m
        timeout server          1m
        timeout http-keep-alive 10s
        timeout check           10s
 
listen  admin_stats
	bind 0.0.0.0:8888
        mode        http
        stats uri   /dbs
        stats realm     Global\ statistics
        stats auth  admin:admin
 
listen  proxy-mysql
     	 bind  0.0.0.0:23306
        mode tcp
        balance roundrobin
        option tcplog
       # option mysql-check user haproxy #在mysql中创建无任何权限用户haproxy,且无密码
        server MySQL1 192.168.127.101:3306 check weight 1 maxconn 2000
        server MySQL2 192.168.127.102:3306 check weight 1 maxconn 2000
        option tcpka

打开rsyslog配置:

vi /etc/rsyslog.conf

去掉下面两行前面的#号

$ModLoad imudp
$UDPServerRun 514

并添加下面一行

local3.* /var/log/haproxy.log

重启rsyslog

systemctl restart rsyslog
# centos 6 中木有systemctl命令,可以使用下面的命令
# service rsyslog restart

启动haproxy

service haproxy start
  •  

启动成功后,界面如下: 
这里写图片描述

 

 

 安装haproxy负载mysql_第1张图片

你可能感兴趣的:(linux)