香港服务器Galera Cluster搭建:MySQL高可用集群配置指南
文章分类:技术文档 /
创建时间:2025-08-19
在跨境电商、国际直播等需要低延迟访问的业务场景中,香港服务器凭借地理位置优势成为热门选择。但单节点MySQL常因高并发出现响应延迟,甚至影响用户体验。搭建Galera Cluster(一种支持多主同步的MySQL高可用集群方案)能有效解决这一问题,本文以香港服务器为例,详解从准备到测试的全流程。
一、前置准备:硬件与环境适配
Galera Cluster对服务器性能与网络通信要求较高,需提前规划:
- 服务器配置:建议选择至少3台2核4G的香港服务器(中小业务适用),若业务峰值QPS超5000,可升级至4核8G。操作系统推荐CentOS 7(兼容性好)或Ubuntu 18.04(维护方便)。
- 网络互通:需开放4个核心端口:3306(MySQL服务)、4567(集群复制)、4568(增量同步)、4444(全量同步)。以CentOS为例,执行`firewall-cmd --add-port=3306/tcp --permanent`等命令放行端口,避免集群通信阻塞。
- 软件安装:需安装MySQL 5.7+与Galera依赖。CentOS用户执行:
yum install -y galera-4 mysql-wsrep-8.0 rsync
(注:mysql-wsrep为支持Galera协议的MySQL分支,需与Galera版本匹配)
二、核心配置:MySQL参数调优
每台服务器需修改`/etc/my.cnf`(CentOS)或`/etc/mysql/mysql.conf.d/mysqld.cnf`(Ubuntu),重点调整以下参数:
[mysqld]
基础性能优化
bind-address = 0.0.0.0 # 允许所有IP访问(生产环境建议限制白名单)
default_storage_engine = InnoDB # Galera仅支持InnoDB
innodb_autoinc_lock_mode = 2 # 提升自增ID并发写入性能
innodb_flush_log_at_trx_commit = 1 # 生产环境建议设为1(保证数据持久化),测试环境可设0提升性能
Galera集群配置
wsrep_on = ON # 启用集群模式
wsrep_provider = /usr/lib64/galera-4/libgalera_smm.so # Galera库路径(根据系统安装路径调整)
wsrep_cluster_address = "gcomm://192.168.1.10,192.168.1.11,192.168.1.12" # 所有节点IP(逗号分隔)
wsrep_cluster_name = "hk_mysql_cluster" # 集群名称(自定义)
wsrep_node_address = "192.168.1.10" # 当前节点IP(每台服务器单独配置)
wsrep_node_name = "node01" # 当前节点名称(建议与IP对应)
wsrep_sst_method = rsync # 全量同步方式(可选xtrabackup2更高效)
注意:`wsrep_cluster_address`需填写所有节点的内网IP(香港服务器内网通信更稳定),若使用公网IP需确保防火墙开放对应端口。
三、集群启动:从初始化到节点加入
完成配置后按顺序启动集群:
1. 初始化主节点:选择配置最高的节点执行:
systemctl stop mysqld # 先停止服务
galera_new_cluster # 初始化集群(仅执行一次)
2. 验证初始化状态:登录MySQL执行:
SHOW STATUS LIKE 'wsrep_cluster_size';
返回`Value: 1`表示初始化成功。
3. 加入其他节点:剩余节点执行:
systemctl restart mysqld # 直接启动服务(自动加入集群)
再次检查`wsrep_cluster_size`,若显示节点总数(如3),则所有节点加入成功。
四、实战测试:数据同步与高可用验证
集群搭建完成后需验证两点:
- 数据同步:在节点1执行:
CREATE DATABASE hk_test;
USE hk_test;
INSERT INTO user (id, name) VALUES (1, 'test');
5秒内登录节点2/3,执行`SELECT * FROM hk_test.user;`,应显示相同数据(延迟通常小于50ms)。
- 高可用能力:手动停止节点1的MySQL服务,观察业务是否仍可通过节点2/3正常读写。若停止后`SHOW STATUS LIKE 'wsrep_cluster_status';`返回`Primary`,说明集群自动维持主状态,高可用生效。
通过以上步骤,可在香港服务器上搭建稳定的MySQL Galera Cluster集群。实际运维中,建议每季度检查`wsrep_local_recv_queue`(复制队列长度,正常应接近0)等指标,若发现异常(如队列持续>100),需排查网络延迟或节点性能瓶颈。
上一篇: VPS服务器MySQL死锁处理:检测工具与避障指南
下一篇: 外贸ERP云部署方案与环境配置全解析