三节点混合部署,不同的CPU内存配置各组件参数资源如何设置?

看了教程有三节点混合部署最佳实践的配置,但是里面是16C32GB的,我的环境是64C256GB,请问各个组件的资源如何设置接近最优呢?我看官网是如下配置的:
tikv:
readpool.unified.max-thread-count: 6
server.grpc-concurrency: 2
storage.scheduler-worker-pool-size: 2
gc.max-write-bytes-per-sec: 300K
rocksdb.max-background-jobs: 3
rocksdb.max-sub-compactions: 1
rocksdb.rate-bytes-per-sec: “200M”

tidb:
performance.committer-concurrency: 4
performance.max-procs: 8

其实配置是这样pd不需要资源 4cpu就行 内存8g之内 可以用虚拟机
tidb 你给个4核心8g
地下的tikv占用这3台物理机。
默认参数不用改 只需要tidb 3个 pd 3个 tikv3个 平均分配到你那3台物理机上

1 个赞

保持默认配置就行啊,我看官网上的教程以为有啥讲究呢

3节点混布还是要看numa node数量,numactl -H 看下

看下磁盘数量,评估下你的压力,pd/tidb/tikv都可以通过设置numa_node 来指定在那个node上运行,仅使用node上的内存,可以先试试 pd/tidb在node 0 每主机1个,多个tidb要用haproxy类的做负载均衡。每主机配置2个tikv 使用node 1,tikv的block cache内存先设置32GB。tikv要至少设置1个层级的label,保障相同主机的tikv 使用相同label .

和 MySQL集群搭建设置类似, 各项参数建议设置为中间值,需要资源使用最大化的话建议通过评估压力的方式来测试调整

3 个赞

你保持默认参数就行。如果是双路机器需要绑定核心用muna

多组件混部,需要查一下你物理机numa的信息,numactl --show。然后设置numa绑核,避免资源争用。