You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dask-SSH集群Python配置私钥启动报错HostKeyNotVerifiable如何解决

问题解决方案

核心错误原因

  • 你使用的client_host_keys是错误的参数名,asyncssh指定私钥的参数应为private_key
  • 调度器端口配置无需加冒号前缀
  • 主机密钥校验失败一般是因为本地known_hosts文件未收录所有目标节点的主机公钥

修正后的代码

from dask.distributed import Client, SSHCluster

cluster = SSHCluster(
    # 节点列表,第一个节点默认作为调度器
    hosts=["10.67.22.208", "10.67.22.102", "10.67.22.178", "10.67.22.117", "10.67.22.85"],
    # SSH连接配置,完全对齐CLI参数
    connect_options={
        "username": "ubuntu",
        "private_key": "~/.ssh/my_key.pem",
        "known_hosts": "~/.ssh/known_hosts"
    },
    # 调度器配置
    scheduler_options={
        "port": 8786,
        "dashboard_address": ":8787"
    }
)
client = Client(cluster)

可选适配方案

如果是内部可信测试环境,想要跳过主机密钥校验(生产环境不推荐),可以修改connect_options里的known_hosts值为None:

connect_options={
    "username": "ubuntu",
    "private_key": "~/.ssh/my_key.pem",
    "known_hosts": None
}

提前手动SSH登录所有目标节点,将节点公钥缓存到本地~/.ssh/known_hosts文件,是更安全的解决方案。

内容的提问来源于stack exchange,提问作者Andrea Nicolai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 11:00:03