银河麒麟 v10 单机测试部署,openssh 版本为 9.9,高版本强制使用 ed25519 密钥算法,导致部署失败

【TiDB 使用环境】/测试/
【TiDB 版本】v8.5.3
【操作系统】
【部署方式】私有云上部署 银河麒麟 v10 (sword) 4.19.90-25.16.v2101.ky10.x86_64 #1 SMP Tue Jun 7 12:16:51 CST 2022 x86_64 x86_64 x86_64 GNU/Linux
【集群数据量】未有
【集群节点数】未有
【问题复现路径】
【遇到的问题:问题现象及影响】
无法部署 tidb 测试
error1.log (20.0 KB)

[tidb@i-ajUrxPMbN-2 tidb]$ tiup cluster deploy tidb-test v8.5.3 topology.yaml --user tidb -p
Input SSH password:

  • Detect CPU Arch Name

    • Detecting node127.0.0.1 Arch info … Done
  • Detect CPU OS Name

    • Detecting node127.0.0.1 OS info … Done
      Please confirm your topology:
      Cluster type: tidb
      Cluster name: tidb-test
      Cluster version: v8.5.3
      Role Host Ports OS/Arch Directories

pd 127.0.0.1 2379/2380 linux/x86_64 /tidb-deploy/pd-2379,/tidb-data/pd-2379
tikv 127.0.0.1 20160/20180 linux/x86_64 /tidb-deploy/tikv-20160,/tidb-data/tikv-20160
tidb 127.0.0.1 4000/10080 linux/x86_64 /tidb-deploy/tidb-4000
prometheus 127.0.0.1 9090/12020 linux/x86_64 /tidb-deploy/prometheus-9090,/tidb-data/prometheus-9090
grafana 127.0.0.1 3000 linux/x86_64 /tidb-deploy/grafana-3000
alertmanager 127.0.0.1 9093/9094 linux/x86_64 /tidb-deploy/alertmanager-9093,/tidb-data/alertmanager-9093
Attention:
1. If the topology is not what you expected, check your yaml file.
2. Please confirm there is no port/directory conflicts in same host.
Do you want to continue? [y/N]: (default=N) y

  • Generate SSH keys … Done
  • Download TiDB components
    • Download pd:v8.5.3 (linux/amd64) … Done
    • Download tikv:v8.5.3 (linux/amd64) … Done
    • Download tidb:v8.5.3 (linux/amd64) … Done
    • Download prometheus:v8.5.3 (linux/amd64) … Done
    • Download grafana:v8.5.3 (linux/amd64) … Done
    • Download alertmanager: (linux/amd64) … Done
    • Download node_exporter: (linux/amd64) … Done
    • Download blackbox_exporter: (linux/amd64) … Done
  • Initialize target host environments
    • Prepare127.0.0.1:22 … Done
  • Deploy TiDB instance
    • Copy pd ->127.0.0.1 … Error
    • Copy tikv ->127.0.0.1 … Error
    • Copy tidb ->127.0.0.1 … Error
    • Copy prometheus ->127.0.0.1 … Error
    • Copy grafana ->127.0.0.1 … Error
    • Copy alertmanager ->127.0.0.1 … Error
    • Deploy node_exporter ->127.0.0.1 … Error
    • Deploy blackbox_exporter ->127.0.0.1 … Error

Error: executor.ssh.execute_failed: Failed to execute command over SSH for ‘tidb@172.54.159.74:22’ {ssh_stderr: , ssh_stdout: , ssh_command: export LANG=C; PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin; /usr/bin/sudo -H bash -c “test -d /tidb-deploy || (mkdir -p /tidb-deploy && chown tidb:$(id -g -n tidb) /tidb-deploy)”}, cause: ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain

Verbose debug logs has been written to /home/tidb/.tiup/logs/tiup-cluster-debug-2025-08-20-19-31-48.log.
[tidb@i-ajUrxPMbN-2 tidb]$ ls -l /home/tidb/.tiup/storage/cluster/clusters/
total 0
drwxr-xr-x 3 tidb tidb 17 Aug 20 19:31 tidb-test
[tidb@i-ajUrxPMbN-2 tidb]$ ls -l /home/tidb/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa
-rw------- 1 tidb tidb 3243 Aug 20 19:31 /home/tidb/.tiup/storage/cluster/clusters/tidb-test/ssh/id_rsa
[tidb@i-ajUrxPMbN-2 tidb]$ uname -a ; cat /etc/os-release
Linux i-ajUrxPMbN-2 4.19.90-25.16.v2101.ky10.x86_64 #1 SMP Tue Jun 7 12:16:51 CST 2022 x86_64 x86_64 x86_64 GNU/Linux
NAME=“Kylin Linux Advanced Server”
VERSION=“V10 (Sword)”
ID=“kylin”
VERSION_ID=“V10”
PRETTY_NAME=“Kylin Linux Advanced Server V10 (Sword)”
ANSI_COLOR=“0;31”
【其他附件:截图/日志/监控】

topology.yaml (7.3 KB)

本机用tidb账号可以ssh吗

ssh信任没有打通吧。

能用root ssh吗,root好装

tidb默认强制使用ssh 的rsa密钥,但ssh高版本已经舍弃了
所以你需要使用参数强制使用ecd加密模式

1、在用户下.ssh 目录 创建config文件
加入如下内容
Host *
IdentityFile ~/.ssh/id_ed25519
2、部署命令加参数 --ssh=system

是的,是可以的

这个我试了,不行的

重新试了下,银河麒麟 V10 默认没有装 sshpass ,强制用系统的ssh 可以,但是会丢一个 exec 错误,重新找sshpass包安装,已经可以部署,万分感谢 :pray:

手动点赞

root不行?

我的最终环境也是麒麟V10 (XINCHUANG要求)

v10环境,我也试试