在Kubernetes上进行容器化部署时,使用helm可以简化操作,以部署Jenkins为例,只需要以下命令即可完成部署:
helm install --namespace helm-jenkins --name my-jenkins stable/jenkins
注:关于helm部署的体验Jenkins的详情,请参考《Helm部署和体验jenkins》
上述命令部署的Jenkins服务,参数都是默认的,例如CPU和内存,如果您已装了metrics-server,用命令kubectl top pod --all-namespaces可以看到Jenkins所占内存仅有515兆,如下图:
Jenkins服务是Java应用,如果内存不足会导致频繁的垃圾回收,下图是通过docker exec在Jenkin容器中执行jstat命令看到的JVM状况,可见YGC频繁,还有FGC出现:
因此,helm部署的应用,有时默认参数不能满足我们的需求,有必要修改;
本次操作在以下环境进行:
如果应用已经通过helm部署好了,用命令kubectl edit来修改最直接有效:
如果服务还没部署,可改用以下步骤部署:
[root@node1 jenkins]# ls
Chart.yaml OWNERS README.md templates values.yaml
helm install --name-template my-jenkins -f values.yaml . --namespace helm-jenkins
以上就是helm部署的服务的设置方式,希望能给您提供参考。