Skip to main content
此產品有較新版本可以使用。
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

使用 Helm 部署 Trident Operator(離線模式)

您可以使用 Helm 部署 Trident Operator 並安裝 Trident。此程序適用於 Trident 所需的容器映像儲存在私人登錄中的安裝。如果您沒有私人映像登錄,請使用 "標準部署流程"

關於 Trident 25.10 的關鍵資訊

您必須閱讀以下關於 Trident 的重要資訊。

<strong>關於 Trident 的重要資訊</strong>
  • Trident 現在支援 Kubernetes 1.34。請先升級 Trident,再升級 Kubernetes。

  • Trident 嚴格強制要求在 SAN 環境中使用多路徑配置,建議在 multipath.conf 檔案中設定 find_multipaths: no 值。

    使用非多路徑配置或在 multipath.conf 檔案中使用 find_multipaths: yes`或 `find_multipaths: smart`值會導致掛載失敗。Trident 自 21.07 版本起就建議使用 `find_multipaths: no

使用 Helm 部署 Trident Operator 並安裝 Trident

使用 Trident "Helm Chart",您可以在一個步驟中部署 Trident 操作員並安裝 Trident。

檢查 "安裝概述" 以確保滿足安裝先決條件並為您的環境選擇了正確的安裝選項。

開始之前

除了 "部署先決條件" 之外,您還需要 "Helm 版本 3"

重要 在私人儲存庫中安裝 Trident 時,如果您使用 imageRegistry`開關指定儲存庫位置,請勿在儲存庫路徑中使用 `/netapp/
步驟
  1. 新增 Trident Helm 儲存庫:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. 使用 `helm install`並為您的部署和映像登錄位置指定名稱。您的"Trident 與 CSI 影像"可以位於一個登錄或不同的登錄中,但所有 CSI 映像必須位於同一個登錄中。在範例中, `100.2506.0`是您要安裝的 Trident 版本。

    一個登錄中的映像
    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --set imageRegistry=<your-registry> --create-namespace --namespace <trident-namespace> --set nodePrep={iscsi}
    不同登錄中的映像
    helm install <name> netapp-trident/trident-operator --version 100.2506.0 --set imageRegistry=<your-registry> --set operatorImage=<your-registry>/trident-operator:25.10.0 --set tridentAutosupportImage=<your-registry>/trident-autosupport:25.10 --set tridentImage=<your-registry>/trident:25.10.0 --create-namespace --namespace <trident-namespace> --set nodePrep={iscsi}
    註 如果您已經為 Trident 建立命名空間,則 `--create-namespace`參數不會建立額外的命名空間。

您可以使用 `helm list`來檢閱安裝詳細資料,例如名稱、命名空間、圖表、狀態、應用程式版本和修訂編號。

安裝期間傳遞組態資料

安裝過程中有兩種方法可以傳遞組態資料:

選項 說明

--values(或 -f

指定一個包含覆蓋設定的 YAML 檔案。可以多次指定,最右側的檔案優先順序最高。

--set

在命令列中指定覆寫設定。

例如,若要變更 debug 的預設值,請執行下列命令,其中 100.2506.0 是您要安裝的 Trident 版本:

helm install <name> netapp-trident/trident-operator --version 100.2506.0  --create-namespace --namespace trident --set tridentDebug=true

若要新增 nodePrep 值,請執行以下命令:

helm install <name> netapp-trident/trident-operator --version 100.2506.0  --create-namespace --namespace trident --set nodePrep={iscsi}

組態選項

該表和 values.yaml 檔案(屬於 Helm chart 的一部分)提供了鍵及其預設值的列表。

警告 請勿從 values.yaml 檔案中移除預設親和性設定。如果您需要自訂親和性,請擴展預設親和性設定。
選項 說明 預設

nodeSelector

用於 Pod 分配的節點標籤

podAnnotations

Pod 註解

deploymentAnnotations

部署註解

tolerations

Pod 指派的容許

affinity

對 pod 分配的親和性

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/arch
              operator: In
              values:
              - arm64
              - amd64
            - key: kubernetes.io/os
              operator: In
              values:
              - linux
警告 請勿從 values.yaml 檔案中移除預設親和性設定。如果您需要自訂親和性,請擴展預設親和性設定。

tridentControllerPluginNodeSelector

Pod 的其他節點選擇器。詳情請參閱 "了解控制器 Pod 和節點 Pod"

tridentControllerPluginTolerations

覆寫 Kubernetes 對 Pod 的容忍度。詳情請參閱 "了解控制器 Pod 和節點 Pod"

tridentNodePluginNodeSelector

Pod 的其他節點選擇器。詳情請參閱 "了解控制器 Pod 和節點 Pod"

tridentNodePluginTolerations

覆寫 Kubernetes 對 Pod 的容忍度。詳情請參閱 "了解控制器 Pod 和節點 Pod"

imageRegistry

識別 trident-operatortrident`和其他映像的登錄。留空以接受預設值。重要:在私有儲存庫中安裝 Trident 時,如果您使用 `imageRegistry`開關指定儲存庫位置,請勿在儲存庫路徑中使用 `/netapp/

""

imagePullPolicy

設定 trident-operator 的鏡像拉取策略。

IfNotPresent

imagePullSecrets

設定 trident-operatortrident 及其他映像的映像提取密鑰。

kubeletDir

允許覆蓋 kubelet 內部狀態的主機位置。

"/var/lib/kubelet"

operatorLogLevel

允許將 Trident 運算子的日誌等級設為: tracedebuginfowarnerror`或 `fatal

"info"

operatorDebug

允許將 Trident 操作符的日誌等級設定為 debug。

true

operatorImage

允許完全覆蓋 trident-operator 的影像。

""

operatorImageTag

允許覆蓋 trident-operator 影像的標籤。

""

tridentIPv6

允許啟用 Trident 以在 IPv6 叢集中運作。

false

tridentK8sTimeout

覆寫大多數 Kubernetes API 操作的預設 180 秒逾時(如果非零,則以秒為單位)。

註 `tridentK8sTimeout`參數僅適用於 Trident 安裝。

180

tridentHttpRequestTimeout

覆蓋 HTTP 請求的預設 90 秒逾時時間, 0s 逾時時間可以設定為無限長。不允許使用負值。

"90s"

tridentSilenceAutosupport

允許禁用 Trident 定期 AutoSupport 報告。

false

tridentAutosupportImageTag

允許覆蓋 Trident AutoSupport 容器的映像標籤。

<version>

tridentAutosupportProxy

使 Trident AutoSupport 容器能夠透過 HTTP Proxy 連接到伺服器。

""

tridentLogFormat

設定 Trident 日誌格式((textjson)。

"text"

tridentDisableAuditLog

停用 Trident 稽核記錄器。

true

tridentLogLevel

允許將 Trident 的日誌等級設為: tracedebuginfowarnerrorfatal

"info"

tridentDebug

允許將 Trident 的記錄層級設定為 debug

false

tridentLogWorkflows

允許為追蹤記錄或記錄抑制啟用特定的 Trident 工作流程。

""

tridentLogLayers

允許為追蹤記錄或記錄抑制啟用特定的 Trident 層。

""

tridentImage

允許完全覆蓋 Trident 的映像。

""

tridentImageTag

允許覆蓋 Trident 的映像標籤。

""

tridentProbePort

允許覆蓋 Kubernetes 存活 / 就緒探測使用的預設連接埠。

""

windows

允許在 Windows 工作節點上安裝 Trident。

false

enableForceDetach

允許啟用強制分離功能。您可以透過與節點健康檢查(NHC)操作符整合來自動執行強制分離程序。如需相關資訊,請參閱 "使用 Trident 自動化具狀態應用程式的容錯移轉"

false

excludePodSecurityPolicy

不建立操作員 Pod 安全性原則。

false

nodePrep

使 Trident 能夠準備 Kubernetes 叢集的節點,以便使用指定的資料儲存協定管理磁碟區。目前, iscsi 是唯一支援的值。

註 從 OpenShift 4.19 版本開始,此功能支援的最低 Trident 版本為 25.06.1。

resources

設定 Trident 控制器、節點和 operator Pod 的 Kubernetes 資源限制和請求。您可以為每個容器和 sidecar 配置 CPU 和記憶體,以管理 Kubernetes 中的資源分配。

有關配置資源請求和限制的更多資訊,請參閱 "Pod 和容器的資源管理"

警告
  • 請勿變更任何容器或欄位的名稱。

  • 請勿變更縮排 - YAML 縮排對於正確剖析至關重要。

註
  • 預設不套用任何限制 - 只有請求才有預設值。

  • 容器名稱依其在 Pod 規格中的顯示方式列出。

  • Sidecar 列在每個主容器下方。

  • 查看 TORC 的 `status.CurrentInstallationParams`欄位以查看目前應用的值。

resources:
  controller:
    trident-main:
      requests:
        cpu: 10m
        memory: 80Mi
      limits:
          cpu:
          memory:
    csi-provisioner:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-attacher:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-resizer:
      requests:
        cpu: 3m
        memory: 20Mi
      limits:
        cpu:
        memory:
    csi-snapshotter:
      requests:
        cpu: 2m
        memory: 20Mi
      limits:
        cpu:
        memory:
    trident-autosupport:
      requests:
        cpu: 1m
        memory: 30Mi
      limits:
        cpu:
        memory:
  node:
    linux:
      trident-main:
        requests:
          cpu: 10m
          memory: 60Mi
        limits:
          cpu:
          memory:
      node-driver-registrar:
        requests:
          cpu: 1m
          memory: 10Mi
        limits:
          cpu:
          memory:
    windows:
      trident-main:
        requests:
          cpu: 6m
          memory: 40Mi
        limits:
          cpu:
          memory:
      node-driver-registrar:
        requests:
          cpu: 6m
          memory: 40Mi
        limits:
          cpu:
          memory:
      liveness-probe:
        requests:
          cpu: 2m
          memory: 40Mi
        limits:
          cpu:
          memory:
  operator:
    requests:
      cpu: 10m
      memory: 40Mi
    limits:
      cpu:
      memory: