一个好的问题描述有利于社区小伙伴更快帮你定位到问题,高效解决你的问题
【TiDB 使用环境】生产环境
【TiDB 版本】8.5.0
【部署方式】机器部署
【操作系统/CPU 架构/芯片详情】UOS 1070e/Hygon C86-4G (OPN:5480)
【机器部署详情】2*32核/128G/15T
【集群数据量】
【集群节点数】3
【问题复现路径】组件集群报错/root/.tiup/bin/tiup cluster check /home/service/tidb/topology.yaml --user root
【遇到的问题:问题现象及影响】
【资源配置】
【复制黏贴 ERROR 报错的日志】
执行check和直接执行安装都是失败
【其他附件:截图/日志/监控】
tiup报错ssh功能有问题,没有办法去执行成功ssh
kang
5
看截图报错是 executor.ssh.execute_failed,这是典型的 SSH 连接或执行权限问题。建议按以下顺序排查:
- 确认免密登录:执行
ssh root@目标IP 手动测试,确保 tiup 所在机器能免密登录所有节点。
executor.ssh.execute_failed 多半是 SSH 免密、端口、SELinux/防火墙或目标机命令权限问题。先对本机到各节点手动 ssh 与 sudo;核对 topology 用户/密钥路径,再重跑 check。
Loving
(Loving)
11
从日志看并非 TiDB 组件故障,主要是控制机到 192.168.151.11 的 root SSH 免密认证失败(公钥签名校验失败/无可用认证方式),应先检查 authorized_keys、文件权限及 SSH 算法兼容性,同时重新安装或升级 TiUP 以排除其 panic 异常。
wbslxw
(Ti D Ber Cl S0j Eng)
12
UOS 系统 OpenSSH 新版本默认禁用 ssh‑rsa 签名算法,TiUP 内置 golang ssh 库仅支持 rsa‑sha1,双方没有匹配的签名算法,SSH 握手直接失败
1 个赞
认证小秘书
14
从报错来看,其实可以先不用怀疑海光 CPU 或 UOS 兼容性问题,前面的 CPU 架构和操作系统检测都是 Done,说明基础环境是正常的。问题出在 TiUP 收集系统信息这一步 SSH 认证没有通过,关键报错是 ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain。
你现在的命令只指定了 --user root,但没有提供密码或者 SSH 私钥,所以 TiUP 在连目标机器时没有可用的认证方式。可以先在中控机上手动试一下 ssh root@192.168.151.11,看看能不能直接登录。
如果三台机器是用 root 密码登录的方式,可以改用 tiup cluster check /home/service/tidb/topology.yaml --user root -p,然后按提示输入密码即可。
如果是走 SSH 免密登录,那就需要确认中控机的公钥已经正确写入三台服务器的 /root/.ssh/authorized_keys,同时也可以在命令里显式指定私钥,比如 -i /root/.ssh/id_rsa,避免 TiUP 找不到可用 key。
这个报错在 TiUP 的排查文档里也有对应说明,本质上就是没有找到可用的 SSH 认证方式,或者指定的私钥无法完成登录。
另外在 UOS 上也可以顺手看一下 /etc/ssh/sshd_config 里的 PermitRootLogin 配置,如果 root 被禁止远程登录,那就不要继续用 --user root 了,换一个可以 SSH 登录、并且具备 sudo 权限的普通用户来执行 cluster check 会更稳妥。