haproxy负载mysql
1、两台主机分别配置haproxy,采用first算法
主:192.168.1.1
从:192.168.1.2
以下是主192.168.1.1的配置
主机通过访问192.168.1.2:3307去访问数据库
#配置的haproxy.cfg文件
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
# turn on stats unix socket
stats socket /var/lib/haproxy/stats
#---------------------------------------------------------------------
# common defaults that all the 'listen' and 'backend' sections will
# use if not designated in their block
#---------------------------------------------------------------------
defaults
log global
log 127.0.0.1 local3
mode http
option tcplog
option dontlognull
retries 10
option redispatch
maxconn 2000
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 mysql
bind 0.0.0.0:3307
mode tcp
balance first
server 192.168.1.1 192.168.1.1:3306
server 192.168.1.2 192.168.1.2:3306
#haproxy监听端口(可去掉),访问虚机地址+端口号+/stats可以看到,例如:192.168.108.133:1080/stats
listen stats
bind 0.0.0.0:2080
mode http
option httplog
maxconn 10
stats refresh 30s
stats uri /stats
stats realm XingCloud\ Haproxy
stats auth admin:admin #用这个账号登录,可以自己设置
stats auth Frank:Frank
stats hide-version
stats admin if TRUE
以下是从192.168.1.2的配置
从机服务通过访问192.168.1.2:3307去访问数据库
listen mysql
bind 0.0.0.0:3307
mode tcp
balance first
server 192.168.1.1 192.168.1.1:3306
server 192.168.1.2 192.168.1.2:3306
使用first算法,想让两台mysql服务都运行的情况下,都会通过访问3307端口,首先去访问192.168.1.1:3306数据库进行读写,192.168.1.1宕机时,则访问到192。168.1.2:3306端口进行读写。
问题:
现在两台都在线时是正常的,但是主的192.168.1.1数据库宕掉后,192.168.1.2:3307也没办法访问到,是不是first算法不支持呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论