注册gitlab-runner遇到Perhaps you are having network problems怎么排查和解决?

注册gitlab-runner,出现509问题,按照文章 gitlab-runner x509: certificate signed by unknown authority
提及的方式解决了509的问题,但是随后遇到了Failed to verify this runner. Perhaps you are having network problems

其他环境:gitlab 托管在内网,搭建的gitlab-runner在内网服务器上,运行在docker容器内,在容器内ping是通的。两者版本均为v13.2.3

怀疑https证书本身问题,因为访问这个网站浏览器显示不安全。但是不知道怎么验证和后续方案。
image.png

gitlab站点权限在CTO那边,没有十足把握不好去测试

另,疑惑点,【解决了509(--tls-ca-file指定自签名证书)后遇到网络问题】,这代表问题更严重了,还是跨过了509后遇到的新问题

阅读 1.4k
avatarAI BotBETA

遇到 "Failed to verify this runner. Perhaps you are having network problems" 错误时,通常意味着 GitLab Runner 在尝试与 GitLab 服务器通信时遇到了问题。以下是一些排查和解决的步骤:

  1. 检查网络连接

    • 确保 GitLab Runner 所在的服务器可以访问 GitLab 服务器的 URL,可以使用 pingcurl 等工具进行测试。
    • 验证网络是否稳定,没有防火墙或安全组规则阻止通信。
  2. 验证自签名证书

    • 如果 GitLab 使用了自签名证书,确保你已经正确配置了 --tls-ca-file 参数,并且指向了正确的证书文件。
    • 可以通过 OpenSSL 等工具检查证书链和验证过程。
  3. 检查 GitLab Runner 的日志

    • 查看 GitLab Runner 的日志可以提供更多关于错误原因的信息。这通常可以通过 docker logs 命令或查看容器内的日志文件来完成。
  4. GitLab Runner 配置

    • 确保 GitLab Runner 的配置文件(通常是 .gitlab-runner/config.toml)中的 URL 和其他相关设置是正确的。
  5. GitLab 服务状态

    • 检查 GitLab 服务是否正常运行,并且没有遇到任何已知的问题或维护。
  6. 时间同步

    • 确保 GitLab Runner 所在服务器的系统时间与 GitLab 服务器的时间同步,因为 SSL/TLS 证书验证对时间很敏感。
  7. 与 GitLab 管理员协作

    • 如果以上步骤都不能解决问题,可能需要与 GitLab 管理员协作,以确认 GitLab 服务器的 SSL/TLS 配置是否正确,并且是否支持 GitLab Runner 的通信方式。

关于你的疑惑点,【解决了509(--tls-ca-file指定自签名证书)后遇到网络问题】,这通常表示你已经解决了与 SSL/TLS 证书相关的问题,但随后遇到了其他网络层面的问题。这并不意味着问题变得更严重,而是表明在通信过程中遇到了新的障碍。

请注意,由于你的 GitLab 和 GitLab Runner 都部署在内网,并且涉及到自签名证书,所以排查和解决问题可能需要更多的内部协作和详细的日志分析。务必确保你拥有足够的权限和必要的信息来进行这些操作。

1 个回答

肯定要先解决证书问题。
gitlab这个自建站点的证书配置有问题,尽量不要用什么自签名的证书,去随便一个云服务大厂(阿里云、华为云、腾讯云等等)购买一个ssl证书,然后配置好,直到解决 “不安全”。

之后,gitlab-runner应该就能正常连通了。 如果还有问题,再检查一下gitlab runner的系统时间,确保和gitlab服务的系统时间一致。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进