2017-10-11 144 views
2

我试图按照有关如何使用Gitlab CI与Kubernetes集群,我与OpenStack的创建这个简短的文档:https://docs.gitlab.com/runner/install/kubernetes.htmlGitlab CI上Kubernetes集群(OPENSTACK)

我设法创建它,但任何时候我

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 

我的问题是,我不能够知道为什么会这样,因为荚日志不可用时:如前面的链接它创建的豆荚是停留在一个CrashLoopBackOff像这样指定创建ConfigMap和部署他们不被创造。

除此之外,我只是不知道如何处理指定的卷,因为我只是认为这与crashloops有一些关系。

部署规定:

- 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! 

回答

2

大约有kubernetes集群上运行Gitlab CI实际的文档是不够清晰。

你需要在你的Gitlab实例的Runner管理页面上运行gitlab-runner寄存器,并从结果配置中获取另一个标记(cat /etc/gitlab-runner/config.toml | grep token)并将其粘贴到您的部署配置中,以便它现在可以从CI接收作业。