Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tiup: add kvcdc server topylogy example (#18927) #19010

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions tiup/tiup-cluster-topology-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ summary: 介绍通过 TiUP 部署或扩容 TiDB 集群时提供的拓扑文件
- [tiproxy_servers](#tiproxy_servers):TiProxy 实例的配置,用来指定 TiProxy 组件部署到哪些机器上
- [pump_servers](/tiup/tiup-cluster-topology-reference.md#pump_servers):Pump 实例的配置,用来指定 Pump 组件部署到哪些机器上
- [drainer_servers](/tiup/tiup-cluster-topology-reference.md#drainer_servers):Drainer 实例的配置,用来指定 Drainer 组件部署到哪些机器上
- [kvcdc_servers](/tiup/tiup-cluster-topology-reference.md#kvcdc_servers):[TiKV-CDC](https://tikv.org/docs/latest/concepts/explore-tikv-features/cdc/cdc-cn/) 实例的配置,用来指定 TiKV-CDC 组件部署到哪些机器上
- [cdc_servers](/tiup/tiup-cluster-topology-reference.md#cdc_servers):CDC 实例的配置,用来指定 CDC 组件部署到哪些机器上
- [tispark_masters](/tiup/tiup-cluster-topology-reference.md#tispark_masters):TiSpark Master 实例的配置,用来指定 TiSpark Master 组件部署到哪台机器上,仅允许部署一个 TiSpark Master 节点
- [tispark_workers](/tiup/tiup-cluster-topology-reference.md#tispark_workers):TiSpark Worker 实例的配置,用来指定 TiSpark Worker 组件部署到哪些机器上
Expand Down Expand Up @@ -448,6 +449,45 @@ drainer_servers:
tbl-name: audit
```

### `kvcdc_servers`

`kvcdc_servers` 约定了将 [TiKV-CDC](https://tikv.org/docs/latest/concepts/explore-tikv-features/cdc/cdc-cn/) 服务部署到哪些机器上,同时可以指定每台机器上的服务配置。`kvcdc_servers` 是一个数组,每个数组元素包含以下字段:

- `host`:指定 TiKV-CDC 部署到哪台机器,字段值填 IP 地址,不可省略。
- `ssh_port`:指定连接目标机器进行操作时使用的 SSH 端口,若不指定,则使用 `global` 区块中的 `ssh_port`。
- `port`:TiKV-CDC 服务的监听端口,默认 8600。
- `deploy_dir`:指定部署目录,若不指定,或指定为相对目录,则按照 `global` 中配置的 `deploy_dir` 生成。
- `data-dir`:可选项,指定 TiKV-CDC 存储临时文件的目录,主要用于排序。建议确保该目录所在磁盘的可用空间大于等于 500 GiB。
- `log_dir`:指定日志目录,若不指定,或指定为相对目录,则按照 `global` 中配置的 `log_dir` 生成。
- `gc-ttl`:可选项,TiKV-CDC 在 PD 设置服务级别 GC safepoint 的 TTL (Time to Live) 时长。同时也是 TiKV-CDC 同步任务暂停的最大时长。单位为秒,默认值为 `86400`,即 24 小时。注意:TiKV-CDC 同步任务的暂停会影响集群 GC safepoint 的推进。`gc-ttl` 越大,同步任务可以暂停的时间越长,但同时会保留更多的过期数据,并占用更多的存储空间。反之亦然。
- `tz`:TiKV-CDC 服务使用的时区。TiKV-CDC 在内部转换 timestamp 等时间数据类型和向下游同步数据时使用该时区,默认为进程运行本地时区。
- `numa_node`:为该实例分配 NUMA 策略,如果指定了该参数,需要确保目标机装了 [numactl](https://linux.die.net/man/8/numactl),在指定该参数的情况下会通过 [numactl](https://linux.die.net/man/8/numactl) 分配 cpubind 和 membind 策略。该字段参数为 string 类型,字段值填 NUMA 节点的 ID,例如 "0,1"
- `config`:可选项,指定 TiKV-CDC 使用的配置文件路径。
- `os`:`host` 字段所指定的机器的操作系统,若不指定该字段,则默认为 `global` 中的 `os`。
- `arch`:`host` 字段所指定的机器的架构,若不指定该字段,则默认为 `global` 中的 `arch`。
- `resource_control`:针对该服务的资源控制,如果配置了该字段,会将该字段和 `global` 中的 `resource_control` 内容合并(若字段重叠,以本字段内容为准),然后生成 systemd 配置文件并下发到 `host` 指定机器。`resource_control` 的配置规则同 `global` 中的 `resource_control`。

qiancai marked this conversation as resolved.
Show resolved Hide resolved
以上所有字段中,部分字段部署完成之后不能再修改。如下所示:

- `host`
- `listen_host`
- `name`
- `client_port`
- `peer_port`
- `deploy_dir`
- `data_dir`
- `log_dir`
- `arch`
- `os`

`kvcdc_servers` 配置示例:

```yaml
kvcdc_servers:
- host: 10.0.1.21
- host: 10.0.1.22
```

### `cdc_servers`

`cdc_servers` 约定了将 TiCDC 服务部署到哪些机器上,同时可以指定每台机器上的服务配置,`cdc_servers` 是一个数组,每个数组元素包含以下字段:
Expand Down
Loading