helm部署的服務如何修改配置

關於helm部署服務

在Kubernetes上進行容器化部署時,使用helm能夠簡化操做,以部署Jenkins爲例,只須要如下命令便可完成部署:java

helm install --namespace helm-jenkins --name my-jenkins stable/jenkins

注意:關於helm部署的體驗Jenkins的詳情,請參考《》node

面臨的問題

上述命令部署的Jenkins服務,參數都是默認的,例如CPU和內存,若是您已裝了metrics-server,用命令kubectl top pod --all-namespaces能夠看到Jenkins所佔內存僅有515兆,以下圖:
在這裏插入圖片描述
Jenkins服務Java應用,若是內存不足會致使頻繁的垃圾回收,下圖是經過docker exec在Jenkin容器中執行jstat命令看到的JVM情況,可見YGC頻繁,還有FGC出現:
在這裏插入圖片描述
所以,helm部署的應用,有時默認參數是不能知足咱們需求的,有必要修改;git

環境信息

本次操做在如下環境進行:程序員

  1. kubernetes:1.15
  2. jenkins:2.190.2

第一種修改方式:kubectl edit

若是應用已經經過helm部署好了,用命令kubectl edit來修改最直接有效:github

  1. 執行命令kubectl edit deployment my-jenkins -n helm-jenkins,便可在線編輯名爲my-jenkins的deployment,操做方法和vi編輯文本文件同樣,以下圖所示,紅框中是本次新增的內容,在java應用的啓動參數中指定內存信息:
    在這裏插入圖片描述
  2. 編輯完後,保存退出會當即生效,以下圖,可見舊pod正在被銷燬,新pod啓動中:
    在這裏插入圖片描述
  3. 等pod建立和啓動成功後再次查看,以下圖,新pod內存果真增長了:
    在這裏插入圖片描述

第二種修改方式:改helm的配置文件

若是服務還沒部署,可改用如下步驟部署:docker

  1. 執行命令helm fetch stable/jenkins,執行完畢後當前目錄新增名爲jenkins-0.13.5.tgz的文件;
  2. 解壓jenkins-0.13.5.tgz文件:
tar -zxvf jenkins-0.13.5.tgz
  1. 解壓後獲得名爲jenkins的文件夾,進去發現以下內容:
[root@node1 jenkins]# ls
Chart.yaml  OWNERS  README.md  templates  values.yaml
  1. 打開<font color="blue>"jenkins-0.13.5.tgz文件,以下圖,裏面有豐富的配置項,注意紅框位置是咱們要調整的:
    在這裏插入圖片描述
  2. 修改上圖紅框中的值,這裏改成1024,以下圖所示,注意要將最左邊的"#"刪除:
    在這裏插入圖片描述
  3. 在values.yaml文件所在目錄執行如下命令,開始部署Jenkins:
helm install --name-template my-jenkins -f values.yaml . --namespace helm-jenkins
  1. 部署完成後,執行命令kubectl edit deployment my-jenkins -n helm-jenkins查看當前deployment狀態,以下圖紅框所示,Jenkins服務的內存參數和前一種方法設置的效果是同樣的:
    在這裏插入圖片描述
  2. 再看看pod的實際內存狀況,以下圖,配置已生效:
    在這裏插入圖片描述
    以上就是helm部署的服務的設置方式,但願能給您提供參考。

歡迎關注個人公衆號:程序員欣宸

https://github.com/zq2599/blog_demosshell

相關文章
相關標籤/搜索