1. 程式人生 > 其它 >(四)Helm之Chart介紹

(四)Helm之Chart介紹

一、Chart介紹

Kubernetes(k8s)管理的物件叫做資源(比如pod)。helm作為k8s生態工具之一,將互相關聯的多個資源統一打包成一個整體,交給 k8s 去執行。這個被打包的整體就叫做 chart。可以把 chart 跟程式的原始碼包做類比。
有了 chart,我們操作的物件不再是單個資源,而是實體。比如我們需要一個有負載均衡能力的 web 服務,如果不使用 chart,我們需要寫 deployment,service 和 ingress 才可以讓叢集外部的客戶使用。但是如果使用 chart,直接使用一個 install 命令便可以實現相同的功能。

二、Chart使用

2.1 chart搜尋

## helm search repo chart_name(可以只是關鍵字,比如 nginx)
# helm search repo nginx

2.2 chart下載

## helm pull chart_name(名稱須具體,例 google/nginx-ingress。不能只是關鍵字,否則下載不到 )
# helm pull google/nginx-ingress

2.3 chart自建

除了從遠端helm倉庫中獲取第三方chart外,你可以建立自己的chart。

# helm create mychart

2.4 chart打包

如果你想上傳自建的chart到私有倉庫中去,需要先將自建的chart打包。

# helm package mychart

2.5 chart上傳

  • 上傳 chart 需要 4 個步驟:
  • 自建私有倉庫
  • 生成或更新 chart 索引檔案
  • 上傳 chart 和索引檔案
  • 更新本地 chart 倉庫

2.5.1 自建私有倉庫

2.5.2 生成或更新chart索引檔案

# helm repo index /root/helm/repo


索引檔案 index.yaml 內容如下,由內容可知,已經更新了準備上傳的 chart 資訊。!

2.5.3 上傳chart和索引檔案

登入私有倉庫,上傳chart和索引檔案index.yaml

2.5.4 更新本地chart倉庫

# 更新本地 chart 倉庫,跟遠端倉庫的 chart 保持同步
# helm repo update


更新本地chart倉庫之後,就可以檢索到剛上傳的自定義chart了。