本章教程主要记录如何用HAProxy 实现MySQL负载均衡配置。
一、安装haproxy
在 Ubuntu/Debian 上:
bash
sudo apt-get update
sudo apt-get install haproxy
在 CentOS/RHEL 上:
bash
sudo yum install haproxy
二、配置haproxy
编辑 HAProxy 配置文件(通常位于 /etc/haproxy/haproxy.cfg)。
bash
#---------------------------------------------------------------------
# Example configuration for a possible web application. See the
# full configuration options online.
#
# https://www.haproxy.org/download/1.8/doc/configuration.txt
#
#---------------------------------------------------------------------
#---------------------------------------------------------------------
# Global settings
#---------------------------------------------------------------------
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
# utilize system-wide crypto-policies
ssl-default-bind-ciphers PROFILE=SYSTEM
ssl-default-server-ciphers PROFILE=SYSTEM
#---------------------------------------------------------------------
# common defaults that all the 'listen' and 'backend' sections will
# use if not designated in their block
#---------------------------------------------------------------------
defaults
mode tcp
log global
option tcplog
option dontlognull
option redispatch
retries 3
timeout connect 10s
timeout client 1m
timeout server 1m
maxconn 3000
#---------------------------------------------------------------------
# MySQL frontend and backend configuration
#---------------------------------------------------------------------
frontend mysql_frontend
bind *:3308
default_backend mysql_backend
backend mysql_backend
balance roundrobin
server mysql1 172.19.0.2:3306 check
server mysql2 172.19.0.3:3306 check
三、启动/重启/停止haproxy
1、启动haproxy
bash
sudo systemctl start haproxy
2、重启haproxy
bash
sudo systemctl restart haproxy
3、停止haproxy
bash
sudo systemctl restart haproxy