一般来说,这种情况就是 配置没加载过去,需要 reload 下
如果 reload 没有效果,可以查看下 tiup 相关日志看看情况
reload没效果,重试甚至重新部署过一样。
这个tiup看日志,是怎么看的?
看过tiflash节点上的日志,过滤numa没有日志
嗯,我看到你上面的 启动脚本,的确没有 numa(tiflash 日志是肯定没有 numa 相关的,这个是 shell 命令,tiflash 是无感知的吧)
tiup 相关日志,也许会有相关信息吧(我也不确定,但是我想到的只有这里可能会有了吧)
您说的对,确实要从tiup部署端查,tiflash肯定是没有信息的。
我刚看了下tiup命令帮助,也没找到有用的参数啥的
如果tiup可以详细打印在扩容过程中的具体命令、参数这些信息,应该可以确认问题,但没找到怎么打印详细信息的参数。。。
我发现在tiup部署机上生成的脚本文件 里面就没有 numa命令呀, 这是杂回事,如果是我部署的时候配置有问题那show-config应该看不到吧,show-config能看到numa_node配置说明是配置生效了的,为啥部署机上生成的脚本 文件都是不对的呢?
恶心死我了~~~
在这个机器上扩容tikv做一样的绑定试试
用numactl -s tiflsah进程pid看下到底绑定了没
之前在这机器上绑定过pd和ticdc都是可以正常绑定的。
换tiflash就不行了。 这是BUG吗?
我这也是让你尝试一下,如果tikv可以在这台机器绑定,tiflash 不可以,不就是排除机器问题了吗,逐个排除问题而已
恩己排除了机器问题了, 再继续没有排查思路了~~
再看看tiup 工具,是否是最新,这些应该都是tiup生成的,如果是最新的,那就只能问问官方了
tiup display cluster 没有提示更新版本,这是不就是最新版本了
如果说和版本有关,那为啥tikv、pd、ticd这些组件都是没问题的
好吧,要不你提bug
在哪里提bug呀?github上吗 我这也不知道是不是BUG
没本地复现,但是看 tiup 逻辑里是会生成 numactl XXXX 的
TiUP: Support setting CPUAffinity by YaozhengWang · Pull Request #2007 · pingcap/tiup (github.com)
还是需要知道一下 tiup 版本,才能复现,或者提 BUG。
另外:–》 tiup display cluster 没有提示更新版本,这是不就是最新版本了
–》不一定,如果你是纯内网部署,感觉应该不会提示你升级,如果本地没有新 tiup 包的话。
一、单机部署 1 tiflash 节点测试
# add numa config
tiflash_servers:
- host: 10.2.xxx.xxx
ssh_port: 22
tcp_port: 9000
http_port: 8123
flash_service_port: 3930
flash_proxy_port: 20170
flash_proxy_status_port: 20292
metrics_port: 8234
deploy_dir: /home/tidbryl/tidb-deploy/tiflash-9000
data_dir: /home/tidbryl/tidb-data/tiflash-9000
log_dir: /home/tidbryl/tidb-deploy/tiflash-9000/log
numa_node: "1"
arch: amd64
os: linux
# before reload action
[tidbryl@172-16-XXX-XXX scripts]$ cat run_tiflash.sh
#!/bin/bash
set -e
# WARNING: This file was auto-generated. Do not edit!
# All your edit might be overwritten!
cd "/home/tidbryl/tidb-deploy/tiflash-9000" || exit 1
export RUST_BACKTRACE=1
export TZ=${TZ:-/etc/localtime}
export LD_LIBRARY_PATH=/home/tidbryl/tidb-deploy/tiflash-9000/bin/tiflash:$LD_LIBRARY_PATH
echo -n 'sync ... '
stat=$(time sync)
echo ok
echo $stat
exec bin/tiflash/tiflash server \
--config-file conf/tiflash.toml 2>> "/home/tidbryl/tidb-deploy/tiflash-9000/log/tiflash_stderr.log
# after reload action
[tidbryl@172-16-XXX-XXX scripts]$ cat run_tiflash.sh
#!/bin/bash
set -e
# WARNING: This file was auto-generated. Do not edit!
# All your edit might be overwritten!
cd "/home/tidbryl/tidb-deploy/tiflash-9000" || exit 1
export RUST_BACKTRACE=1
export TZ=${TZ:-/etc/localtime}
export LD_LIBRARY_PATH=/home/tidbryl/tidb-deploy/tiflash-9000/bin/tiflash:$LD_LIBRARY_PATH
echo -n 'sync ... '
stat=$(time sync)
echo ok
echo $stat
exec numactl --cpunodebind=1 --membind=1 bin/tiflash/tiflash server \
--config-file conf/tiflash.toml 2>> "/home/tidbryl/tidb-deploy/tiflash-9000/log/tiflash_stderr.log"
[tidb@172-16-XXX-XXX ~]$ tiup --version
1.12.1 tiup
Go Version: go1.19.8
Git Ref: v1.12.1
GitHash: f4dae709fa3e904958f3433b617a6bc4bd9049a3
二、单机部署 2 tiflash 节点测试
[tidbryl@172-16-XXX-XXX scripts]$ pwd
/home/tidbryl/tidb-deploy/tiflash-9001/scripts
[tidbryl@172-16-XXX-XXX scripts]$ cat run_tiflash.sh
......
exec bin/tiflash/tiflash server \
--config-file conf/tiflash.toml 2>> "/home/tidbryl/tidb-deploy/tiflash-9001/log/tiflash_stderr.log"
[tidbryl@172-16-XXX-XXX scripts]$ cat run_tiflash.sh
......
exec numactl --cpunodebind=1 --membind=1 bin/tiflash/tiflash server \
--config-file conf/tiflash.toml 2>> "/home/tidbryl/tidb-deploy/tiflash-9001/log/tiflash_stderr.log"
[tidbryl@172-16-XXX-XXX scripts]$ pwd
/home/tidbryl/tidb-deploy/tiflash-9000/scripts
[tidbryl@172-16-XXX-XXX scripts]$ cat run_tiflash.sh
......
exec numactl --cpunodebind=1 --membind=1 bin/tiflash/tiflash server \
--config-file conf/tiflash.toml 2>> "/home/tidbryl/tidb-deploy/tiflash-9000/log/tiflash_stderr.log"
我用同样的 1.12.1 tiup 去复现,没复现出来,感觉只有这一个环境才有的现象(原因未知)。
要不尝试手动改 run_tiflash.sh 吧,用 numactl 去验证能不能生效,如果能先这样绕过吧。
这种情况也没法提 BUG,提上去之后无法复现,也无法修。
我尝试过手动修改脚本 run_tiflash.sh 添加 numactl命令,是可以正常运行的。
但是用tiup reload后,配置就又没有了~~
老师你能远程下我的环境 帮我调一下吗,我就怕不知道是不是有个小问题我没注意到引起了这问题~~~
你这个lscpu 已经说明了 bios里面把她当成单cpu了 进bios配置一下
没太懂,从哪看出来的当成了单CPU了?
这机器之前跑过tidb的其他组件,是可以绑核成功的呀