helm https://helm.sh/docs/topics/chart_repository/。
Helm是一個(gè) Kubernetes 的包管理工具。就像 Linux 系統(tǒng)中的包管理器,yum / apt 等,可以很方便的
將打包好的 Yaml 文件部署到Kubernetes 集群之中。
我們可以把 Kubernetes 比作操作系統(tǒng)(Linux),那么 Helm 就好比 yum,apt-get,homebrew。
使用 Helm 可以方便我們部署和管理我們的應(yīng)用。
Helm 的重要概念:
helm:一個(gè)命令行客戶端工具,主要用于創(chuàng)建、打包、發(fā)布和管理 Helm Chart。
Chart:一系列 Kubernetes Yaml 文件的集合,將 Kubernetes Yaml 文件打包在一起,使用一條
命令就可以部署應(yīng)用程序。
Release:基于 Chart 部署的實(shí)體,每個(gè) Chart 可以部署一個(gè)或多個(gè) release。
我們以下面喜提為例,來嘗試寫下helm 的chart。
創(chuàng)建以 Nginx 為 Deployment 的 Chart,并且重寫 Nginx 的 index.html,輸出 “ Hello
World!”。
首先在windows上安裝helm命令。
執(zhí)行: helm create jaymz.
打開生成的項(xiàng)目。

幾個(gè)主要的文件。
Chart.yaml 定義了chart的版本信息。
values.yaml里面定義了一些需要定制化的key-value值,這些值可在安裝chart的時(shí)候渲染成真正系統(tǒng)所需要的環(huán)境值。
NOTES.txt 記錄的是安裝helm chart的時(shí)候,控制面板提示的信息?;蛘哒f你希望用戶怎么使用你的chart。
題目要求我們針對nginx做一些改變。所以我們針對deployment做些改變。

增加了從configMap里面讀取index.html替換原先nginx里面的文件。
configMap:

一旦我們編寫完成,就可以編譯chart。
helm package <chart-name>。
當(dāng)我們使用的時(shí)候,可以通過:helm install jaymz <chart-name>.tgz 或者upgrade的方式。
安裝完成后,我們可以查看svc,然后檢查nginx的index頁面

這樣我們就通過configmap的方式,將原先nginx的index的內(nèi)容進(jìn)行了替換。