Haproxy:
官网地址:
介绍
Haproxy是一个支持TCP,HTTP的负载均衡服务器,
可以实现读写分离,session黏性等。目前主要结合脚本用于DB的主备切换使用
注意:通过
yum list haproxy
可查看当前可用版本,都比较低
选择LTS版本下载tar,haproxy当前仅支持linux版本。
安装:
tar -zxf haproxy-2.8.5.tar.gz
uname -r #查看linux机器信息 如果X86_64 则ARCH=X86_64,linux3.10就是linux310
cd haproxy-2.8.5
make TARGET=linux310 PREFIX=/usr/local/haproxy ARCH=X86_64
make install PREFIX=/usr/local/haproxy
cd /usr/local/haproxy
设置配置文件 haproxy.cfg
vim haproxy.cfg
global
daemon
log 127.0.0.1 local0
maxconn 4096
pidfile /usr/local/haproxy/haproxy.pid
uid 99
defaults
mode http
log global
retries 2
option redispatch
option abortonclose
timeout client 30000ms
timeout server 30000ms
timeout connect 20000ms
listen mysql-lb1
bind *:3307
mode tcp
option mysql-check
balance roundrobin
server mysql_1 172.10.18.75:3306 weight 1 check inter 10s
timeout connect 20000ms
timeout client 30000ms
timeout server 30000ms
listen stats
bind *:1088
mode http
option httpclose
balance roundrobin
stats uri /
stats realm Haproxy\ Statistics
stats auth myadmin:myadmin
针对mysql-check,如果配置user 但是mysql又需要密码这地方过不了,则无法访问,因此取消user限制
redis的简单代理连接
listen redis-1b1
bind =:6370
mode tcp
option tcp-check
balance roundrobin
server sit_redis_aaa 172.10.5x.11:6379 weight: 1 check inter 10s
timeout connect 2000ms
timeout client 3000ms
timeout server 3000ms
对于redis的主备高可用,也可以使用haproxy
以下是一个配置,但没有真正试验过,等后期有机会试验了,再修正配置文档
启动
./sbin/haproxy -f ./haproxy.cfg
通过访问
http://127.0.0.1:1088
则可看到控制台,如果mysql_lb1是绿的,则可以通过访问:3307
端口访问到真正的mysql。
日志
自己百度~