Jenkins服务在Minikube上始终处于待定状态

8

我在本地安装了minikube

Dashboard的地址为192.168.99.100:30000。

我通过helm安装了Jenkins:

$ helm install stable/jenkins

然后服务一直处于挂起状态:

$ kubectl get services --namespace=default -w wandering-buffoon-jenkins
NAME                        CLUSTER-IP   EXTERNAL-IP   PORT(S)                          AGE
wandering-buffoon-jenkins   10.0.0.153   <pending>     8080:31326/TCP,50000:31090/TCP   26m

为什么?因为不能使用外部IP地址来访问它。
2个回答

10
我猜想你没有更新参数,使用NodePort替代默认的LoadBalancer。Minikube集群不支持LoadBalancer类型,因此Kubernetes一直在循环尝试创建负载均衡器以获取外部IP地址。 使用helm查看stable/jenkins图表的选项:
$ helm inspect values stable/jenkins
# Default values for jenkins.
...
# For minikube, set this to NodePort, elsewhere use LoadBalancer
# Use ClusterIP if your setup includes ingress controller
  ServiceType: LoadBalancer
...

您可以通过像这样做来设置:

$ echo $'Master:\n  ServiceType: NodePort' > config.yaml
$ helm install -f config.yaml stable/jenkins

非常感谢!所以如果尝试其他软件,比如GitLab,似乎应该做同样的事情。 - cloud_cloud
但是在我尝试了你的方法之后,ServiceType 仍然是 LoadBalancer,没有改变。 - cloud_cloud
谢谢。这次没有运气:( 这是:invited-deer-jenkins 10.0.0.186 <nodes> 8080:30321/TCP,50000:32021/TCP 2mEXTERNAL-IP显示为nodes。检查消息仍然是“ServiceType: LoadBalancer”。我删除了那个Pod并重新安装了。也许配置不起作用。 - cloud_cloud
它对我来说似乎是有效的:https://gist.github.com/coreypobrien/7e96acdbba72932566884a10a8793593 - coreypobrien
使用以下命令安装 Jenkins: helm install stable/jenkins --set Master.ServiceType=NodePort - Sergio Gonzalez
显示剩余2条评论

4

这里有一个适合那些不想创建单独的config.yaml文件的懒人的单个命令。

helm install --name jenkins --set Master.ServiceType=NodePort stable/jenkins

如果您要设置多个选项,请将它们以逗号分隔的方式提供。

helm install --name jenkins --set Master.ServiceType=NodePort,Persistence.Enabled=false stable/jenkins

此外,您还可以查看可用的选项,您可以在此处进行设置。这与helm inspect命令相同,但更易读,因为它作为网页提供。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接