开发者
资源
文档评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

采集报错“Match all无其他混合条件”的解决方法

现象描述

在进行服务器集群采集时,出现SSH连接失败的报错,报错信息:“ssh连接失败,请确保环境变量(/etc/ssh/ssh_config文件)中"Match all"无其他混合条件。”

可能原因

kspect集群检查能力依赖Paramiko/Fabric进行SSH连接。在较新的Linux发行版(如RHEL/CentOS 8/9、Ubuntu 22.04以上)中,操作系统会自动生成Match final all扩展语法,由于Paramiko不支持final条件语法,可能导致SSH连接时工具报错。

处理步骤

请对采集节点(即运行kspect工具的主机)的SSH客户端配置进行临时修改。

仅需要修改使用工具节点的SSH客户端配置,其余节点无需修改,并在采集结束后恢复配置。

  1. 编辑“/etc/ssh/ssh_config”配置文件。
    vi /etc/ssh/ssh_config
  2. 按“i”进入编辑模式,修改配置文件,找到“Match final all”将其修改为“Match all”。

    修改前的部分回显内容示例如下:

    Match final all
            Include /etc/crypto-policies/back-ends/openssh.config

    修改后的部分回显内容示例如下:

    Match all
            Include /etc/crypto-policies/back-ends/openssh.config

    完成后按“Esc”键,输入:wq!再按“Enter”键保存退出。

  3. 重新运行采集任务,确认连接正常。
  4. 建议采集任务结束后恢复原配置。

    再次编辑“/etc/ssh/ssh_config”配置文件将“Match all”恢复为“Match final all”。