1.在三台机器的/opt目录下上传安装文件
2.在三台机器上创建软件安装目录和数据存放目录
mkdir -p /dmdata/ddm_cluster # 软件安装目录
mkdir -p /dmdata/data_ddm_cluster # 数据存放目录
3.解压安装包到指定目录
cd /opt
tar -xzvf ddm_linux_amd64_20260611_49c0ae3a_cluster.tar.gz -C /dmdata/ddm_cluster
4.确认三台机器的时间同步
date #查看机器时间
若三台机器时间不同步,执行以下操作
(1)在三台机器上下载ntp
yum -y install ntp ntpdate
(2)在一台机器(142)上编辑ntp.conf文件并启动ntp
vi /etc/ntp.conf
# 注释掉所有以 server 开头的行,添加以下两行:
server 127.127.1.0
fudge 127.127.1.0 stratum 10
systemctl start ntpd
systemctl enable ntpd
(3)在其他机器同步时间
ntpdate 192.168.10.142
5.1一键安装
(1)编辑 hosts 文件
vi /dmdata/ddm_cluster/conf/hosts
# ============ DDM_Meta 部署节点信息 ============
[DDM_Meta]
Meta: "ip=192.168.10.142", "port=2379", "peer_port=2380", "user=root", "password=root", "sshPort=22"
Meta: "ip=192.168.10.123", "port=2379", "peer_port=2380", "user=root", "password=root", "sshPort=22"
Meta: "ip=192.168.10.156", "port=2379", "peer_port=2380", "user=root", "password=root", "sshPort=22"
# ============ DDM_Store 部署节点信息 ============
[DDM_Store]
Store: "ip=192.168.10.142", "port=10180", "user=root", "password=roo", "sshPort=22"
Store: "ip=192.168.10.123", "port=10180", "user=root", "password=root", "sshPort=22"
Store: "ip=192.168.10.156", "port=10180", "user=root", "password=root", "sshPort=22"
# ============ DDM_Engine 部署节点信息 ============
[DDM_Engine]
Engine: "ip=192.168.10.123", "port=27017", "user=root", "password=root", "sshPort=22"
# ============ 数据文件存放路径 ============
data_dir="/dmdata/data_ddm_cluster"
注意:[DDM_Meta]、[DDM_Store]、[DDM_Engine]的大小写敏感
(2)在一台机器执行一键部署命令
cd /dmdata/ddm_cluster/bin
./ddm_cluster_install.sh
注意:没有except会无法注入密码,不能一键安装。
5.2手动安装
(1)三台机器配置/dmdata/ddm_cluster/conf/ddm_store_config.toml
memory-usage-limit-percent = 75 #添加这一配置
(2)初始化Meta节点并启动服务(在三台机器上执行以下命令,-mi替换成实际ip)
cd /dmdata/ddm_cluster/bin/scripts
./ddm_meta_service_installer.sh \
-mi 192.168.10.142 \
-mp 2379 \
-pmp 2380 \
-data /dmdata/data_ddm_cluster \
-ic true
systemctl start DDMMetaService2379
(3)初始化Store节点并启动服务(在三台机器上执行以下命令,-si替换成实际ip)
cd /dmdata/ddm_cluster/bin/scripts
./ddm_store_service_installer.sh \
-si 192.168.10.142 \
-sp 10180 \
-pd 192.168.10.142:2379,192.168.10.123:2379,192.168.10.156:2379 \
-data /dmdata/data_ddm_cluster
systemctl start DDMStoreService10180
(4)初始化Engine节点并启动服务
cd /dmdata/ddm_cluster/bin/scripts
./ddm_engine_service_installer.sh \
-ei 192.168.10.156 \
-ep 27018 \
-path 192.168.10.142:2379,192.168.10.123:2379,192.168.10.156:2379 \
-data /dmdata/data_ddm_cluster
systemctl start DDMEngineService27018
注意:如果在一台机器上单机版使用了27017端口,会注册DDMEngineService27017服务,那么集群还是用27017端口去注册DDMEngineService27017服务的话会出错。
yum -y install nfs-utils rpcbind
(2)创建共享目录(三台机器都执行)
mkdir -p /home/ddm_bak && chmod -R 777 /home/ddm_bak
以下操作只在142执行
(3)启动服务
systemctl enable nfs.service
systemctl enable rpcbind.service
service rpcbind start
service nfs start
(4)配置共享(编辑 /etc/exports)
vi /etc/exports
# 写入
/home/ddm_bak 192.168.10.142(rw)
/home/ddm_bak *(insecure,rw,async,no_root_squash)
#执行
exportfs -a
在其他机器执行以下操作
(5)挂载 NFS 共享目录
mount 192.168.10.142:/home/ddm_bak /home/ddm_bak
2.集群全量备份还原
(1)备份
在任意一台机器上执行,pd参数可以是集群内任意Meta节点
cd /dmdata/ddm_cluster/bin
./ddm_br backup full \
--pd 192.168.10.142:2379 \
--storage "local:///home/ddm_bak"
(2)还原
cd /dmdata/ddm_cluster/bin
./ddm_br restore full \
--pd 192.168.10.142:2379 \
--storage "local:///home/ddm_bak"
3.集群增量备份还原
(1)所有 Store 节点开启 oplog
手动安装集群开启oplog:
vi /dmdata/ddm_cluster/bin/services/DDMStoreService10180
#改动1:
GREP_FULL_STR="$EXEC_PROG_FULL_PATH --addr $STORE_IP:$STORE_PORT --pd-endpoints $PD --config $DDMStore_CONFIG_DIR --enable-oplog true"
#改动2:
eval exec "\"$EXEC_PROG_FULL_PATH\" --addr $STORE_IP:$STORE_PORT --pd-endpoints $PD --config $DDMStore_CONFIG_DIR --enable-oplog true" > "$SERVICE_LOG_FILE" 2>&1 &
#改动3:
eval exec "\"$EXEC_PROG_FULL_PATH\" --addr $STORE_IP:$STORE_PORT --pd-endpoints $PD --config $DDMStore_CONFIG_DIR --enable-oplog true" > "$SERVICE_LOG_FILE" 2>&1 &
#重启服务
systemctl restart DDMStoreService10180
一键安装集群开启oplog:
vi /dmdata/ddm_cluster/conf/ddm_engine_config.toml
# 写入
[oplog]
oplog-enable = true
save-file = false
# 执行
systemctl restart DDMEngineService27018
(2)开启增量备份任务
./ddm_br log start \
--task-name=pitr \
--pd "192.168.10.142:2379" \
--storage "local:///home/ddm_bak/incr_log"
(3)全量备份
./ddm_br backup full \
--pd 192.168.10.142:2379 \
--storage "local:///home/ddm_bak/full_backup"
注意:每一次执行备份都要创建新的目录存放备份集
(4)增量还原
./ddm_br restore point \
--pd "192.168.10.142:2379" \
--full-backup-storage "local:///home/ddm_bak/full_backup" \
--storage "local:///home/ddm_bak/incr" \ --restored-ts "2026-08-04 22:50:00+08:00"
注意:1、做增量备份还原一定要先开启增量备份任务,否则会出现找不到增量日志的问题;
2、开启增量备份任务后要进行全量备份,否则会出现全量备份和增量日志之间有时间断档的问题。
文章
阅读量
获赞
