當咱們以爲準備就緒,就能夠安裝 chart,Helm 支持四種安裝方法:html
安裝倉庫中的 chart,例如:helm install stable/nginx
node
經過 tar 包安裝,例如:helm install ./nginx-1.2.3.tgz
nginx
經過 chart 本地目錄安裝,例如:helm install ./nginx
服務器
經過 URL 安裝,例如:helm install https://example.com/charts/nginx-1.2.3.tgz
網絡
這裏咱們使用本地目錄安裝:架構
當 chart 部署到 Kubernetes 集羣,即可以對其進行更爲全面的測試。微服務
chart 經過測試後能夠將其添加到倉庫,團隊其餘成員就可以使用。任何 HTTP Server 均可以用做 chart 倉庫,下面演示在 k8s-node1
192.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