如何用HAProxy代理mysql?

Load balancing

1 前言

一个问题,一篇文章,一出故事。
笔者今天需要实现HAProxy代理sftp,因此整理此文。

2 最佳实践

2.1 实践环境

2.1.1 HAProxy集群环境

如何使用HAProxy配置PostFix集群?

2.1.2 MySQL环境

如何部署Oracle Linux 9.x MySQL 8.x?


基于HAProxy的验证需求,你需要在MySQL上创建如下账号,

mysql -uroot -p
create user 'haproxy'@'%' identified by '';
flush privileges;

2.2 配置代理

2.2.1 修改配置文件

vim /etc/haproxy/conf.d/mysqldb.cmdschool.org_3306.cfg

加入如下配置,

frontend ft_mysqldb
    bind 0.0.0.0:3306
    mode tcp
    timeout client 1m
    log global
    default_backend bk_mysqldb
backend bk_mysqldb
    mode tcp
    log global
    timeout server 1m
    timeout connect 5s

    # create user 'haproxy'@'%' identified by ''; FLUSH PRIVILEGES;
    option mysql-check user haproxy
    server mysqldb01 10.168.0.68:3306 check port 3306
    server mysqldb02 10.168.0.69:3306 check port 3306 backup

2.2.2 检查配置

haproxy -c -f /etc/haproxy/conf.d

2.2.3 应用配置

systemctl reload haproxy.service
systemctl status haproxy.service
没有评论

发表回复

Load balancing
如何实现HAProxy集群多节点私有配置?

1 前言 一个问题,一篇文章,一出故事。 笔者之前创建的HAProxy集群(基于3层路由,即任播技术 …

Load balancing
如何设置haproxy节点异常邮件通知?

1 前言 一个问题,一篇文章,一出故事。 笔者haproxy上代理的节点越来越多,因此被haprox …

Load balancing
如何配置HAProxy的状态统计页面?

1 前言 一个问题,一篇文章,一出故事。 笔者今天想通过http的web页面查看haproxy的服务 …