簡體   English   中英

Kubernetes集群上的Gitlab CI(Openstack)

[英]Gitlab CI on Kubernetes Cluster (Openstack)

我正在嘗試關注如何使用Gitlab CI與我使用Openstack創建的Kubernetes集群的簡短文檔: https ://docs.gitlab.com/runner/install/kubernetes.html

我設法創建它,但是每次我創建ConfigMap和Deployment時,如前一個鏈接所指定的那樣,它創建的pod都會卡在CrashLoopBackOff中,如下所示:

NAMESPACE     NAME                                            READY     STATUS             RESTARTS   AGE
gitlab        gitlab-runner-3998042981-f8dlh                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-g9m5g                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-q0bth                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-rjztk                  0/1       CrashLoopBackOff   36         2h
kube-system   coredns-1977636023-1q47s                        1/1       Running            0          21h
kube-system   grafana-1173934969-vw49f                        1/1       Running            0          21h
kube-system   node-exporter-gitlab-ci-hc6k3ffax54o-minion-0   1/1       Running            0          21h
kube-system   node-exporter-gitlab-ci-hc6k3ffax54o-minion-1   1/1       Running            0          21h
kube-system   prometheus-873144915-s9m6j                      1/1       Running            0          21h

我的問題是我無法知道為什么會發生這種情況,因為pod日志在未創建時不可用。

除此之外,我只是不知道如何處理指定的卷,因為我認為這與crashloops有一些關系。

部署指定:

- configMap:
      name: gitlab-runner
    name: config
  - hostPath:
      path: /usr/share/ca-certificates/mozilla
    name: cacerts

我發現:

hostPath卷將文件或目錄從主機節點的文件系統安裝到您的pod中

在沒有cacerts卷的情況下運行pod后,一切都已創建,但之后將不會執行任何作業。

從任何pod登錄:

Starting multi-runner from /etc/gitlab-runner/config.toml ...  builds=0
Running in system-mode.

Configuration loaded                                builds=0
Metrics server disabled
ERROR: Checking for jobs... forbidden               runner=<PARTOFTHETOKEN>
ERROR: Checking for jobs... forbidden               runner=<PARTOFTHETOKEN>
ERROR: Checking for jobs... forbidden               runner=<PARTOFTHETOKEN>
ERROR: Runner https://URL/ci<TOKEN> is not healthy and will be disabled!

關於在kubernetes集群上運行Gitlab CI的實際文檔還不夠明確。

您需要使用從Gitlab實例的Runner管理頁面獲得的令牌運行gitlab-runner寄存器,並從結果配置中獲取另一個令牌(cat /etc/gitlab-runner/config.toml | grep令牌)並將其粘貼到您的部署配置,以便它現在可以從CI接收作業。

更新2019年:gitlab.com文檔現在明確表示: https ://docs.gitlab.com/runner/register/#gnulinux

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM