【 TiDB 使用环境】实验环境
【 TiDB 版本】v6.1.0,操作系统为 openEuler 22.03 LTS
【遇到的问题】numactl 已安装。TiDB与PD组件混合部署。TiDB numa绑核失败,PD 绑核成功。
【复现路径】
- 拓扑配置文件如下:
global:
user: "tidb"
ssh_port: 22
deploy_dir: "/tidb-deploy"
data_dir: "/tidb-data"
arch: "amd64"
server_configs:
tidb:
new_collations_enabled_on_first_bootstrap: true
numa_node: "0"
pd:
numa_node: "1"
monitored:
node_exporter_port: 9100
blackbox_exporter_port: 9115
pd_servers:
- host: 192.168.3.221
- host: 192.168.3.222
- host: 192.168.3.223
tidb_servers:
- host: 192.168.3.221
- host: 192.168.3.222
- host: 192.168.3.223
tikv_servers:
- host: 192.168.3.224
- host: 192.168.3.225
- host: 192.168.3.226
monitoring_servers:
- host: 192.168.3.220
grafana_servers:
- host: 192.168.3.220
alertmanager_servers:
- host: 192.168.3.220
- numa信息
[root@localhost ~]# numactl --hardware
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3
node 0 size: 2013 MB
node 0 free: 1722 MB
node 1 cpus: 4 5 6 7
node 1 size: 1403 MB
node 1 free: 1010 MB
node distances:
node 0 1
0: 10 20
1: 20 10
【问题现象及影响】
h5n1
(H5n1)
2
像是 config下不能配置numa_node,你把这个参数放到每个tidb的配置里
先下班,到家再试试。pd的numa成功了,执行systemctl可以启动。
调整了 numa_node 位置之后,没问题了。但是,奇怪的是pd的绑核设置写到server_configs中可以正常部署。
配置如下:
global:
user: "tidb"
ssh_port: 22
deploy_dir: "/tidb-deploy"
data_dir: "/tidb-data"
arch: "amd64"
server_configs:
tidb:
new_collations_enabled_on_first_bootstrap: true
pd:
numa_node: "1"
monitored:
node_exporter_port: 9100
blackbox_exporter_port: 9115
pd_servers:
- host: 192.168.3.221
- host: 192.168.3.222
- host: 192.168.3.223
tidb_servers:
- host: 192.168.3.221
numa_node: "0"
- host: 192.168.3.222
numa_node: "0"
- host: 192.168.3.223
numa_node: "0"
tikv_servers:
- host: 192.168.3.224
- host: 192.168.3.225
- host: 192.168.3.226
monitoring_servers:
- host: 192.168.3.220
grafana_servers:
- host: 192.168.3.220
alertmanager_servers:
- host: 192.168.3.220
你去pd的启动脚本里面看下有没有numactl 这个命令,看是不是真的绑定了
只是写到了 pd 的 配置文件中 ,没有作用 ( 甚至有反作用
因为 tiup 对 conifg 只会判断是否为 key: value 结构
server_configs:
tidb:
new_collations_enabled_on_first_bootstrap: true
pd:
numa_node: "1"
会将 numa_node=1 写到 pd 的toml配置文件中。虽不起作用,但是也不报错。经验证 server_configs 中的配置会写入组件的 {deploy-dir}/conf/toml
配置文件中。而 组件中的配置会写入 组件的 run.sh 脚本中。
system
(system)
关闭
11
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。