Я пытаюсь следовать этому короткому документу о том, как использовать Gitlab CI с кластером Kubernetes, который я создаю с помощью Openstack: https://docs.gitlab.com/runner/install/kubernetes.html
Мне удается его создать, но каждый раз, когда я создаю ConfigMap и Deployment, как указано в предыдущей ссылке, созданные им модули застревают в 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
Моя проблема в том, что я не могу знать, почему это происходит, поскольку журналы модулей недоступны, когда они не созданы.
Кроме того, я просто не знаю, что делать с указанными томами, так как я просто думаю, что это имеет какое-то отношение к крашлупам.
Развертывание указывает:
- configMap:
name: gitlab-runner
name: config
- hostPath:
path: /usr/share/ca-certificates/mozilla
name: cacerts
Я обнаружил, что:
Том hostPath монтирует файл или каталог из файловой системы хост-узла в ваш модуль.
После запуска модулей без тома cacerts все создается, но после этого никакое задание выполняться не будет.
Лог из любого пода:
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!