debian

如何在Debian上部署MariaDB集群

小樊
41
2025-07-24 09:07:23
栏目: 云计算

在Debian上部署MariaDB集群可以通过多种方式实现,其中一种常见的方法是使用MariaDB Galera Cluster。Galera Cluster是一个多主复制解决方案,可以确保数据在所有节点之间同步,并且支持自动故障转移。

以下是在Debian上部署MariaDB Galera Cluster的基本步骤:

1. 准备工作

1.1 更新系统

首先,确保你的Debian系统是最新的:

sudo apt update
sudo apt upgrade -y

1.2 添加MariaDB APT仓库

添加MariaDB的APT仓库以便安装最新版本的MariaDB:

wget -O /etc/apt/trusted.gpg.d/mariadb.gpg https://www.mariadb.org/mariadb_release_signing.key
sudo apt-key add /etc/apt/trusted.gpg.d/mariadb.gpg
echo "deb [arch=amd64,arm64,armhf] https://yum.mariadb.org/10.5/debian $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mariadb.list

2. 安装MariaDB

2.1 安装MariaDB服务器

在所有节点上安装MariaDB服务器:

sudo apt install mariadb-server -y

2.2 启动并启用MariaDB服务

启动MariaDB服务并设置开机自启:

sudo systemctl start mariadb
sudo systemctl enable mariadb

2.3 安全配置

运行MariaDB的安全配置脚本:

sudo mysql_secure_installation

按照提示进行配置,包括设置root密码、删除匿名用户、禁止远程root登录等。

3. 配置Galera Cluster

3.1 安装Galera Cluster插件

在所有节点上安装Galera Cluster插件:

sudo apt install mariadb-galera-cluster -y

3.2 配置Galera Cluster

编辑MariaDB配置文件 /etc/mysql/conf.d/galera.cnf,添加以下内容:

[mysqld]
bind-address = 0.0.0.0
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://<node1_ip>,<node2_ip>,<node3_ip>
wsrep_node_address=<node_ip>
wsrep_node_name=<node_name>
wsrep_sst_method=xtrabackup-v2

<node1_ip>, <node2_ip>, <node3_ip> 替换为所有节点的IP地址,<node_ip> 替换为当前节点的IP地址,<node_name> 替换为当前节点的名称。

3.3 启动Galera Cluster

在第一个节点上启动Galera Cluster:

sudo systemctl start mariadb

在其他节点上启动MariaDB服务:

sudo systemctl start mariadb

4. 验证集群状态

在任意一个节点上登录MariaDB并检查集群状态:

mysql -u root -p

在MySQL shell中执行以下命令:

SHOW STATUS LIKE 'wsrep_cluster_size';

如果返回值大于1,说明集群已经成功启动并且所有节点都已经加入。

5. 配置防火墙

确保防火墙允许MariaDB的默认端口3306通信:

sudo ufw allow 3306/tcp

6. 监控和维护

定期监控集群的状态,并进行必要的维护操作,例如备份和升级。

通过以上步骤,你可以在Debian上成功部署一个MariaDB Galera Cluster。根据实际需求,你可能还需要进行更多的配置和优化。

0
看了该问题的人还看了