跳到主內容

helm 概述

 

 

image-1737350287413.png

 

Helm

1. Helm 引入

  1. 之前方式部署應用的基本過程:

    • 編寫 YAML 文件:
      • Deployment
      • Service
      • Ingress
  2. 如果使用之前方式部署單一應用,少數服務的應用,比較合適:

    • 例如部署微服務項目,可能有幾十個服務,每個服務都有一套 YAML 文件,需要維護大量 YAML 文件,版本管理特別不方便。

2. 使用 Helm 可以解決哪些問題?

  1. 使用 Helm 可以把這些 YAML 作為一個整體管理。
  2. 實現 YAML 高效複用。
  3. 使用 Helm 應用級別的版本管理。

3. Helm 介紹

Helm 是一個 Kubernetes 的包管理工具,類似於 Linux 下的包管理器,如 yum/apt 等,可以很方便地將之前打包好的 YAML 文件部署到 Kubernetes 上。


Helm 有 3 個重要概念:

  1. Helm
    一個命令行客戶端工具,主要用於 Kubernetes 應用 Chart 的創建、打包、發布和管理。

  2. Chart
    應用描述,一系列用於描述 Kubernetes 資源相關文件的集合。

  3. Release
    基於 Chart 的部署實體。一個 Chart 被 Helm 運行後將會生成對應的一個 Release;
    它會在 Kubernetes 中創建出真實運行的資源對象。


Helm 在 2019 年發布 V3 版本,和之前版本相比有變化

  1. V3 版本刪除 Tiller,架構變化。
  2. Release 可以在不同命名空間重用。
  3. 將 Chart 推送到 Docker 倉庫中