1、对现在 dm 集群进行缩容,将 free 状态的 worker 下线。

tiup dm display dm-test
查看 free 状态节点
tiup dm scale-in dm 172.16.1.13:8262 -N

2、扩容 DM 集群

我是在一个机器上启的多实例,所以用的是另一个端口

#配置文件
worker_servers:
- host: 172.16.1.13
ssh_port: 22
port: 8263
deploy_dir: "/dm-deploy/dm-worker-8263"
log_dir: "/dm-deploy/dm-worker-8263/log"
[root@root dm]# tiup dm scale-out dm-test dm-scale.yaml -uroot -p
tiup is checking updates for component dm ...
Starting component `dm`: /root/.tiup/components/dm/v1.11.1/tiup-dm scale-out dm-test dm-scale.yaml -uroot -p
Input SSH password: + Detect CPU Arch Name
- Detecting node 172.16.1.13 Arch info ... Done + Detect CPU OS Name
- Detecting node 172.16.1.13 OS info ... Done
Please confirm your topology:
Cluster type: dm
Cluster name: dm-test
Cluster version: v6.4.0
Role Host Ports OS/Arch Directories
---- ---- ----- ------- -----------
dm-worker 172.16.1.13 8263 linux/x86_64 /dm-deploy/dm-worker-8263,/dm-data/dm-worker-8263
Attention:
1. If the topology is not what you expected, check your yaml file.
2. Please confirm there is no port/directory conflicts in same host.
Do you want to continue? [y/N]: (default=N) y
+ [ Serial ] - SSHKeySet: privateKey=/root/.tiup/storage/dm/clusters/dm-test/ssh/id_rsa, publicKey=/root/.tiup/storage/dm/clusters/dm-test/ssh/id_rsa.pub
+ [Parallel] - UserSSH: user=root, host=172.16.1.13
+ [Parallel] - UserSSH: user=root, host=172.16.1.13
+ [Parallel] - UserSSH: user=root, host=172.16.1.13
+ [Parallel] - UserSSH: user=root, host=172.16.1.13
+ [Parallel] - UserSSH: user=root, host=172.16.1.13
+ Download TiDB components
- Download dm-worker:v6.4.0 (linux/amd64) ... Done
+ Initialize target host environments
+ Deploy TiDB instance
- Deploy instance dm-worker -> 172.16.1.13:8263 ... Done
+ Copy certificate to remote host
+ Generate scale-out config
- Generate scale-out config dm-worker -> 172.16.1.13:8263 ... Done
+ Init monitor config
Enabling component dm-worker
Enabling instance 172.16.1.13:8263
Enable instance 172.16.1.13:8263 success
+ [ Serial ] - Save meta
+ [ Serial ] - Start new instances
Starting component dm-worker
Starting instance 172.16.1.13:8263
Start instance 172.16.1.13:8263 success
+ Refresh components conifgs
- Generate config dm-master -> 172.16.1.13:8261 ... Done
- Generate config dm-worker -> 172.16.1.13:8262 ... Done
- Generate config dm-worker -> 172.16.1.13:8263 ... Done
- Generate config prometheus -> 172.16.1.13:9090 ... Done
- Generate config grafana -> 172.16.1.13:3000 ... Done
- Generate config alertmanager -> 172.16.1.13:9093 ... Done
+ Reload prometheus and grafana
- Reload prometheus -> 172.16.1.13:9090 ... Done
- Reload grafana -> 172.16.1.13:3000 ... Done
Scaled cluster `dm-test` out successfully

再次查看集群状态

[root@root dm]# tiup dm display dm-test
tiup is checking updates for component dm ...
Starting component `dm`: /root/.tiup/components/dm/v1.11.1/tiup-dm display dm-test
Cluster type: dm
Cluster name: dm-test
Cluster version: v6.4.0
Deploy user: root
SSH type: builtin
Grafana URL: http://172.16.1.13:3000
ID Role Host Ports OS/Arch Status Data Dir Deploy Dir
-- ---- ---- ----- ------- ------ -------- ----------
172.16.1.13:9093 alertmanager 172.16.1.13 9093/9094 linux/x86_64 Up /dm-data/alertmanager-9093 /dm-deploy/alertmanager-9093
172.16.1.13:8261 dm-master 172.16.1.13 8261/8291 linux/x86_64 Healthy|L /dm-data/dm-master-8261 /dm-deploy/dm-master-8261
172.16.1.13:8262 dm-worker 172.16.1.13 8262 linux/x86_64 Bound /dm-data/dm-worker-8262 /dm-deploy/dm-worker-8262
172.16.1.13:8263 dm-worker 172.16.1.13 8263 linux/x86_64 Free /dm-data/dm-worker-8263 /dm-deploy/dm-worker-8263
172.16.1.13:3000 grafana 172.16.1.13 3000 linux/x86_64 Up - /dm-deploy/grafana-3000
172.16.1.13:9090 prometheus 172.16.1.13 9090 linux/x86_64 Up /dm-data/prometheus-9090 /dm-deploy/prometheus-9090

4、停止复制任务

[root@root dm]#  tiup dmctl --master-addr 172.16.1.13:8261 stop-task dm_task.yml
tiup is checking updates for component dmctl ...
Starting component `dmctl`: /root/.tiup/components/dmctl/v6.4.0/dmctl/dmctl --master-addr 172.16.1.13:8261 stop-task dm_task.yml
{
"op": "Delete",
"result": true,
"msg": "",
"sources": [
{
"result": true,
"msg": "",
"source": "mysql-01",
"worker": "dm-172.16.1.13-8262"
}
]
}

5、关闭 DM 集群

[root@root dm]# tiup dm stop dm-test

6、销毁 DM 集群

tiup dm destory dm-test

7、其它

即使停了同步任务,但 worker 节点也不是 free 状态,因为之前创建过数据源,绑定到了 worker 节点,需要将 数据源停掉。

[root@root dm]# tiup dmctl --master-addr 172.16.1.13:8261 operate-source stop source-mysql-01.yaml
tiup is checking updates for component dmctl ...
Starting component `dmctl`: /root/.tiup/components/dmctl/v6.4.0/dmctl/dmctl --master-addr 172.16.1.13:8261 operate-source stop source-mysql-01.yaml
{
"result": true,
"msg": "",
"sources": [
{
"result": true,
"msg": "",
"source": "mysql-01",
"worker": "dm-172.16.1.13-8262"
}
]
}

再次查看集群信息, worker 节点都是 free 状态。

[root@root dm]# tiup dm display dm-test
tiup is checking updates for component dm ...
Starting component `dm`: /root/.tiup/components/dm/v1.11.1/tiup-dm display dm-test
Cluster type: dm
Cluster name: dm-test
Cluster version: v6.4.0
Deploy user: root
SSH type: builtin
Grafana URL: http://172.16.1.13:3000
ID Role Host Ports OS/Arch Status Data Dir Deploy Dir
-- ---- ---- ----- ------- ------ -------- ----------
172.16.1.13:9093 alertmanager 172.16.1.13 9093/9094 linux/x86_64 Up /dm-data/alertmanager-9093 /dm-deploy/alertmanager-9093
172.16.1.13:8261 dm-master 172.16.1.13 8261/8291 linux/x86_64 Healthy|L /dm-data/dm-master-8261 /dm-deploy/dm-master-8261
172.16.1.13:8262 dm-worker 172.16.1.13 8262 linux/x86_64 Free /dm-data/dm-worker-8262 /dm-deploy/dm-worker-8262
172.16.1.13:8263 dm-worker 172.16.1.13 8263 linux/x86_64 Free /dm-data/dm-worker-8263 /dm-deploy/dm-worker-8263
172.16.1.13:3000 grafana 172.16.1.13 3000 linux/x86_64 Up - /dm-deploy/grafana-3000
172.16.1.13:9090 prometheus 172.16.1.13 9090 linux/x86_64 Up /dm-data/prometheus-9090 /dm-deploy/prometheus-9090
Total nodes: 6

TIDB-DM数据迁移第三部(集群管理)的更多相关文章

  1. 数据迁移_老集群RAC迁移数据恢复到新集群RAC

    数据迁移_老集群RAC迁移数据恢复到新集群RAC 作者:Eric 微信:loveoracle11g 1.把老集群RAC备份的数据远程拷贝到新集群RAC [root@old-rac-node1 ~]# ...

  2. Bash实践:抽样检测数据迁移至Redis集群后的数据一致性

    熟悉了一段时间的Bash编程,因此借此任务操作一把bash编程,主要涉及到Redis单节点与Redis集群的操作 1. 任务背景 近日有个任务需要将历史的Redis(主从节点)中的数据迁移至Redis ...

  3. Redis单机数据迁移至Sentinel集群

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  4. hadoop hdfs 数据迁移到其他集群

    # hadoop fs -cat /srclist Warning: $HADOOP_HOME is deprecated. hdfs://sht-sgmhadoopcm-01:9011/jdk-6u ...

  5. 从零自学Hadoop(17):Hive数据导入导出,集群数据迁移下

    阅读目录 序 将查询的结果写入文件系统 集群数据迁移一 集群数据迁移二 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephis ...

  6. Redis单节点数据同步到Redis集群

    一:Redis集群环境准备 1:需要先安装好Redis集群环境并配置好集群 192.168.0.113 7001-7003 192.168.0.162 7004-7006 2:检查redis集群 [r ...

  7. 使用Velero Restic快速完成云原生应用迁移至ACK集群

    本文记录使用Velero Restic快速完成云原生应用迁移至ACK集群的实践过程. 0. 实践步骤概览 (1)创建GKE集群(或自建Kubernetes集群)(2)在GKE集群上部署示例应用Jenk ...

  8. 大数据平台搭建-zookeeper集群的搭建

    本系列文章主要阐述大数据计算平台相关框架的搭建,包括如下内容: 基础环境安装 zookeeper集群的搭建 kafka集群的搭建 hadoop/hbase集群的搭建 spark集群的搭建 flink集 ...

  9. 数据库机器迁移对AlwaysON 集群影响测试

    1主3从(共享文件见证)     模拟事故 AlwaysON集群 结论 主域控服务器重启 共享文件夹见证失败,SQL集群无影响 无影响 修改共享文件夹见证路径 第一次测试修改后:整个集群突然重启,查询 ...

  10. 大数据【一】集群配置及ssh免密认证

    八月迷情,这个月会对大数据进行一个快速的了解学习. 一.所需工具简介 首先我是在大数据实验一体机上进行集群管理学习,管理五台实验机,分别为master,slave1,slave2,slave3,cli ...

随机推荐

  1. 安卓逆向 ARM基础篇

    1.ARM  与 Andorid 的关系 android 的操作系统是 LINUX 内核 LINux又是ARM 2.ARM汇编规范 3.ARM指令格式 ARM常用指令开始 1.ARM 的跳转指令 PC ...

  2. windows下dapr的代码调试--非docker部署

    上一篇大概的整理了一下在vm虚拟机下通过docker部署dapr应用,作服务之间调用的例子. 今天整理一下windows下dapr的非docker部署调试,毕竟大部分开发不需要花费太多时间做部署. 源 ...

  3. 【NOIP2012提高组】开车旅行

    题目 到处都有 闲话 碰巧考场上出了 \(Noip\) 原题 然后这题自然而然想到 预处理一个点开始分别由 \(A,B\) 驾驶会走到的下一个点 然后用预处理的数组求答案 当然你会发现 \(X=X0\ ...

  4. HTML5----响应式(自适应)网页设计(自动适应屏幕大小)

    HTML5----响应式(自适应)网页设计(自动适应屏幕大小) 现在,很多项目都需要做响应式或者自适应的来适应我们不同屏幕尺寸的手机,电脑等设备,那么就需要我们在页面上下功夫,但移动端的布局不同于pc ...

  5. Flutter:StatefulWidget 怎么传参

    定义好一个有状态(或无状态)的组件之后,需要为其传递一些参数,希望组件能够更加灵活使用.那么,在 Flutter 中如何为其传递参数呢? 以下是 StatefulWidget 传递值的步骤,一共三步: ...

  6. Cesium源码阅读环境搭建

    1. 引言 Cesium是一款三维地球和地图可视化开源JavaScript库,使用WebGL来进行硬件加速图形,使用时不需要任何插件支持,基于Apache2.0许可的开源程序,可以免费用于商业和非商业 ...

  7. LeetCode-587 安装栅栏及三种凸包算法的学习

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/erect-the-fence 题目描述 在一个二维的花园中,有一些用 (x, y) 坐标表示的树 ...

  8. 【2】java之object类

    一.Object 类的基本定义 ​ Object 类是所有类的父类,最大的一个好处就是:利用 Object 类可以接收所有类的对象(向上自动转型).如果不确定参数类型,使用 Object 类型是最好的 ...

  9. ModuleNotFoundError:No module named 'past' 问题及解决方法

    训练YOLOX时报错 ModuleNotFoundError:No module named 'past' 解决方法 使用pip安装对应的package:future pip install futu ...

  10. 【C学习笔记】day4-1 在屏幕上输出以下图案

    1.在屏幕上输出以下图案: * *** ***** ******* ********* *********** ************* *********** ********* ******* ...