安裝 chart
當我們覺得准備就緒,就可以安裝 chart,Helm 支持四種安裝方法:
-
安裝倉庫中的 chart,例如:
helm install stable/nginx -
通過 tar 包安裝,例如:
helm install ./nginx-1.2.3.tgz -
通過 chart 本地目錄安裝,例如:
helm install ./nginx -
通過 URL 安裝,例如:
helm install https://example.com/charts/nginx-1.2.3.tgz
這里我們使用本地目錄安裝:

當 chart 部署到 Kubernetes 集群,便可以對其進行更為全面的測試。
將 chart 添加到倉庫
chart 通過測試后可以將其添加到倉庫,團隊其他成員就能夠使用。任何 HTTP Server 都可以用作 chart 倉庫,下面演示在 k8s-node1192.168.56.106 上搭建倉庫。
-
在
k8s-node1上啟動一個 httpd 容器。
-
通過
helm package將mychart打包。
-
執行
helm repo index生成倉庫的 index 文件。
Helm 會掃描myrepo目錄中的所有 tgz 包並生成index.yaml。--url指定的是新倉庫的訪問路徑。新生成的index.yaml記錄了當前倉庫中所有 chart 的信息:
當前只有mychart這一個 chart。 -
將
mychart-0.1.0.tgz和index.yaml上傳到k8s-node1的/var/www/charts目錄。
-
通過
helm repo add將新倉庫添加到 Helm。
倉庫命名為newrepo,Helm 會從倉庫下載 index.yaml。 -
現在已經可以
repo search到mychart了。
除了newrepo/mychart,這里還有一個local/mychart。這是因為在執行第 2 步打包操作的同時,mychart也被同步到了 local 的倉庫。 -
已經可以直接從新倉庫安裝
mychart了。
-
如果以后倉庫添加了新的 chart,需要用
helm repo update更新本地的 index。
這個操作相當於 Ubutun 的apt-get update。
小結
本章我們學習了 Kubernetes 包管理器 Helm。
Helm 讓我們能夠像 apt 管理 deb 包那樣安裝、部署、升級和刪除容器化應用。
Helm 由客戶端和 Tiller 服務器組成。客戶端負責管理 chart,服務器負責管理 release。
chart 是 Helm 的應用打包格式,它由一組文件和目錄構成。其中最重要的是模板,模板中定義了 Kubernetes 各類資源的配置信息,Helm 在部署時通過 values.yaml 實例化模板。
Helm 允許用戶開發自己的 chart,並為用戶提供了調試工具。用戶可以搭建自己的 chart 倉庫,在團隊中共享 chart。
Helm 幫助用戶在 Kubernetes 上高效地運行和管理微服務架構應用,Helm 非常重要。
下節我們開始學習 Kubernetes 網絡。
書籍:
1.《每天5分鍾玩轉Kubernetes》
https://item.jd.com/26225745440.html
2.《每天5分鍾玩轉Docker容器技術》
https://item.jd.com/16936307278.html
3.《每天5分鍾玩轉OpenStack》
https://item.jd.com/12086376.html
