【问题标题】:SSH timeout error on Azure DevOps CD pipelineAzure DevOps CD 管道上的 SSH 超时错误
【发布时间】:2021-01-20 14:15:34
【问题描述】:

尝试部署到 AWS 上托管的 VM 实例时出现超时错误。我可以手动登录使用

ssh -i myKeyFile.pem myuser@IP

访问远程机器后,我可以执行一些 docker 命令,一切正常。但是现在我需要在 CD 管道上自动执行此操作,这就是我收到以下错误的地方:

2020-06-02T21:37:12.6877276Z Trying to establish an SSH connection to ***@IP:port
2020-06-02T21:38:52.4629461Z ##[error]Failed to connect to remote machine. Verify the SSH service connection details. Error: Error: Timed out while waiting for handshake.
2020-06-02T21:38:52.4685976Z ##[section]Finishing: Run shell commands on remote machine

我建立 SSH 连接的步骤是:

  1. 我在 Azure DevOps 中的项目设置上创建了 SSH 服务连接
  2. 我创建了 CD 管道
  3. 我添加了一个带有以下参数的 SSH 任务

当我手动触发它以测试它是否有效时,发布开始正常工作,但在 1:43 分钟后或多或少是我收到错误的时间:

然后,当我查看日志时,它与我在开头粘贴的错误相同:

[error]Failed to connect to remote machine. Verify the SSH service connection details. Error: Error: Timed out while waiting for handshake

我已将握手超时设置从默认值 (20000) 增加到 90000,但没有运气。

有人遇到过这个问题吗?

【问题讨论】:

  • 如何配置服务连接?请检查您是否可以使用密码登录远程服务器。只有当我们通过密码成功登录服务器时,我们的服务连接才能正常工作。
  • 嗨,迈克,这个问题有更新吗?
  • @LanceLi-MSFT,我刚刚添加了关于如何解决这个问题的发现。请参阅下面的答案。

标签: amazon-ec2 ssh azure-devops azure-pipelines azure-pipelines-build-task


【解决方案1】:

似乎 Azure DevOps 的默认代理池存在持续错误。很多人都报告了这一点,在撰写这篇文章时,Azure DevOps 团队正在努力解决这个问题(我找不到所有详细信息的帖子。我稍后会添加)。

解决方法是

  1. 创建自托管代理。
  2. 创建后,您需要使用新的自托管代理重新创建 CD 管道。
  3. SSH 任务配置的其余部分取决于您的需要。但如果你想测试 SSH 连接是否有效,只需打印一些内容:

echo '我已连接'

  1. 在此之后,您的 CD 管道应该可以正常工作了。

有关如何创建Self-Hosted Agent on Windows 的更多详细信息。还有适用于 Linux 和 Mac 的链接。

【讨论】:

  • 感谢您在这里分享您的解决方案,请accept your solution as the answer 好吗?因此,对于遇到相同问题的其他成员轻松找到解决方案将很有帮助。祝你有美好的一天:)
【解决方案2】:

我在 Azure 中的 VM 遇到了类似的问题。事实证明,我已将安全组设置为仅允许来自本地网络的 SSH,而 Azure Dev-Ops 代理显然在 Microsoft 网络中运行,并且来自不同的 IP 地址范围。解决方案是向所有源 IP 地址开放 SSH。您可以获取 Dev-Ops 代理使用的 IP 地址范围列表,但它们似乎每周都在变化,这并不是很有帮助。

https://docs.microsoft.com/en-us/azure/devops/organizations/security/allow-list-ip-url?view=azure-devops#microsoft-hosted-agents

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-04
    • 2020-10-13
    • 2020-12-20
    • 2020-04-07
    • 1970-01-01
    • 2021-06-13
    相关资源
    最近更新 更多