我已在 Kubernetes 中安装了 GitLab 及其 Helm 图表。
我通过以下步骤将旧的 Gitlab 部署从一个集群迁移到另一个集群:
- 缩小旧集群中的所有 Pod
- 使用 helm 将 values.yml 应用于新集群(以创建 PVC)
- 缩减新集群中的所有 Pod
- 更改 DNS 记录、HAProxy 等
- 手动将数据从旧 PVC rsync 到新 PVC(minio、gitaly、redis、postgres、prometheus)
- 运行 helm upgrade 以使部署在新集群中重新上线
完成所有这些之后,部署大部分工作正常。能够登录并使用 git。
但是运行器无法注册,所以我无法运行任何 CI。查看 pod gitlab-gitlab-runner
,我看到下面的消息一遍又一遍地重复:
Registration attempt 30 of 30
Runtime platform arch=amd64 os=linux pid=691 revision=3b6f852e version=14.0.0
WARNING: Running in user-mode.
WARNING: The user-mode requires you to manually start builds processing:
WARNING: $ gitlab-runner run
WARNING: Use sudo for system-mode:
WARNING: $ sudo gitlab-runner...
ERROR: Registering runner... failed runner=y6ixJoR1 status=500 Internal Server Error
PANIC: Failed to register the runner. You may be having network problems.
如您所见,无法注册跑步者。尝试前往时/admin/runners
出现 500 错误。
在哪里可以查看有关为什么会出现此 500 错误的更多信息?
答案1
看起来您已经从以前的集群恢复了数据和配置,但是您在新集群上缺少机密。这里您可以找到一个流程,了解当秘密丢失时应该怎么做。您还可以在那里找到:
在 CI/CD 变量和运行器身份验证等情况下,您可能会遇到意外行为,例如:
- 工作停滞。
- 500 错误。#您遇到了此错误
另请参阅类似问题:
答案2
问:尝试访问 /admin/runners 时出现 500 错误。
答:确保您已经恢复/etc/gitlab/gitlab-secrets.json
文件。
问:我可以在哪里查看有关为什么会出现此 500 错误的更多信息?
答:在
/var/log/gitlab/gitlab-rails/production.log