當前位置: 妍妍網 > 碼農

【運維幹貨分享】如何為kubernetes安裝Helm

2024-09-18碼農


本文介紹了安裝 Helm 和安裝 Helm Chart 的步驟,用於在 Kubernetes 集群上管理和部署應用程式。

Helm 先決條件

在開始 helm 設定之前,你應該具備以下條件。

  • 正在執行的 Kubernetes 集群。

  • Kubernetes 集群 API 端點應該可以從你執行 helm 的電腦存取。

  • 使用 kubectl 對集群進行身份驗證,它應該具有 cluster-admin 許可權。

  • 方法 1:使用指令碼安裝 Helm

    如果你要在本地工作站或伺服器中設定測試環境,我建議使用此方法。對於計畫要求,請按照下一節中介紹的特定版本的二進制安裝進行操作。

    註意: 你正在執行的工作站應將 kubectl 上下文設定為要使用 Helm 管理的集群。

    步驟1:下載最新的 Helm 安裝指令碼。

    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3

    步驟2:向下載的指令碼添加執行許可權。

    chmod +x get_helm.sh

    步驟3:執行安裝指令碼。此指令碼將自動為你的系統找到正確的二進制檔。

    ./get_helm.sh

    步驟4:透過執行 helm 命令驗證 helm 安裝。

    helm

    方法 2:從 Binary 安裝 Helm 3

    對於可以在所有環境中安裝特定版本的 Helm 的計畫要求,建議使用此方法。

    例如,如果你使用 Jenkins 進行 Helm 部署,請確保執行 Helm 命令的 Jenkins 代理已為 kubectl 配置了管理員許可權。

    步驟1: 前往 Github helm 釋出頁面並復制所需版本的 Linux amd64 連結。

    Helm 安裝二進制檔 - 釋出頁 步驟2: 使用 wget 下載二進制檔。

    wget -O helm.tar.gz https://get.helm.sh/helm-v3.13.0-rc.1-linux-amd64.tar.gz

    步驟3: 解壓縮下載的檔。

    tar -zxvf helm.tar.gz

    步驟4:將 helm 可執行檔移動到 bin 目錄。

    sudo mv linux-amd64/helm /usr/local/bin/helm

    步驟5:透過執行 helm 命令進行驗證。

    helm

    方法 3:從 Package Manager 安裝 Helm

    對於 Mac,

    brew install helm

    對於 Debian/Ubuntu,

    curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
    sudo apt-get install apt-transport-https --yes
    echo"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
    sudo apt-get update
    sudo apt-get install helm

    對於 Windows,

    For Scoop

    scoop install helm

    For Chocolatey

    choco install kubernetes-helm

    升級 Helm 可執行檔

    如果你使用的是舊版本的 helm 並且想要將其升級到最新版本,則可以根據作業系統型別使用以下步驟。

    對於 MAC,

    brew update
    brew upgrade helm

    對於 Linux,

    以下指令碼將獲取最新版本並對其進行升級。

    curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

    對於 Windows,

    choco upgrade kubernetes-helm

    升級後,使用以下命令檢查版本。

    helm version

    添加穩定的 Helm 倉庫

    Helm 倉庫包含由社群開發和維護的穩定 helm chart。

    現在,添加用於安裝穩定 Chart 的公共穩定版 helm 儲存庫。

    helm repo add stable https://charts.helm.sh/stable

    你可以使用 search 命令搜尋可用chart。例如,如果要在 Kubernetes 上設定 Jenkins,可以使用以下命令搜尋 Jenkins chart。

    helm search repo jenkins

    或者,你可以透過 artifacthub.com 搜尋穩定的社群chart。在這裏,你可以找到許多社群貢獻的 helm chart。

    搜尋 Helm chart

    安裝並驗證 Helm chart 為了驗證 helm 設定,讓我們使用 Artifacthub 中提供的 helm chart設定 Nginx 入口控制器。

    步驟1:首先添加 nginx-ingress helm 儲存庫。

    helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx

    步驟2:更新 chart 儲存庫。

    helm repo update

    步驟3:讓我們安裝一個穩定的 Nginx Chart 並測試設定。入口控制器部署在預設名稱空間中。

    helm install ingress-controller ingress-nginx/ingress-nginx

    這是自訂版本名稱。你可以提供你喜歡的名稱。ingress-controller

    步驟4:現在,使用以下命令檢查 Ingress helm 部署的狀態。它應顯示部署的狀態。

    helm ls

    或者,你可以使用 kubectl 命令檢查預設名稱空間中的 Ingress 部署。

    kubectl get deployments

    步驟4:現在,要在驗證後刪除部署,你只需使用其版本名稱解除安裝部署即可。

    helm uninstall ingress-controller

    結論

    在本文中,我們了解了如何安裝 Helm、安裝 chart 儲存庫和驗證範例 Helm 部署。

    當你將 helm 用於計畫用例時,建議你使用安全團隊批準的容器映像建立自己的 helm chart。

    如果你在計畫環境中使用社群 Helm Chart,請確保將社群 docker 映像替換為自訂構建的映像。

    接下來,檢視有關如何建立 Helm chart的綜合初學者指南。它使用分步指南介紹了 helm chart開發及其最佳實踐。