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

使用Helm部署Trident運算子(標準模式)

貢獻者 netapp-aruldeepa netapp-revathid

您可以部署 Trident 運算子、並使用 Helm 安裝 Trident 。此程序適用於 Trident 所需的容器映像未儲存在私有登錄中的安裝。如果您有私有映像登錄,請使用"離線部署程序"。

Trident 24.10 的重要資訊

  • 您必須閱讀下列有關 Trident 的重要資訊。 *

<strong> 的 Trident </strong> 相關資訊
  • Kubernetes 1.32 現在支援 Trident 。升級Kubernetes之前先升級Trident。

  • Trident 嚴格強制在 SAN 環境中使用多重路徑組態、建議在 multipath.conf 檔案中使用值 find_multipaths: no。

    在 multipath.conf 檔案中使用非多重路徑組態或使用 find_multipaths: yes`或 `find_multipaths: smart`值、將會導致掛載失敗。Trident 建議自 2007 年 21 月 1 日起使用 `find_multipaths: no。

部署 Trident 操作員、並使用 Helm 安裝 Trident

使用 Trident "掌舵表"、您可以部署 Trident 操作員、並在一個步驟中安裝 Trident 。

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

開始之前

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

步驟
  1. 新增Trident Helm儲存庫:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
  2. 使用 `helm install`並指定部署名稱、如下例所示、其中 `100.2410.0`是您要安裝的 Trident 版本。

    helm install <name> netapp-trident/trident-operator --version 100.2410.0 --create-namespace --namespace <trident-namespace>
    註 如果您已經為 Trident 建立命名空間、此 `--create-namespace`參數將不會建立額外的命名空間。

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

在安裝期間傳遞組態資料

安裝期間有兩種傳遞組態資料的方法:

選項 說明

--values(或 -f)

指定具有覆寫的Yaml檔案。這可以多次指定、最右邊的檔案會優先。

--set

在命令列上指定置換。

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

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

組態選項

此表格和 `values.yaml`檔案是 Helm 圖表的一部分、提供按鍵清單及其預設值。

選項 說明 預設

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

覆寫 Pod 的 Kubernetes 公差。如 瞭解控制器 Pod 和節點 Pod 需詳細資訊、請參閱。

tridentNodePluginNodeSelector

用於 Pod 的其他節點選取器。如 瞭解控制器 Pod 和節點 Pod 需詳細資訊、請參閱。

tridentNodePluginTolerations

覆寫 Pod 的 Kubernetes 公差。如 瞭解控制器 Pod 和節點 Pod 需詳細資訊、請參閱。

imageRegistry

識別、 trident`和其他影像的登錄 `trident-operator。保留空白以接受預設值。重要事項:在私有儲存庫中安裝 Trident 時、如果您使用 imageRegistry`交換器來指定儲存庫位置、請勿在儲存庫路徑中使用 `/netapp/。

""

imagePullPolicy

設定的映像拉出原則 trident-operator。

IfNotPresent

imagePullSecrets

設定、 trident`和其他影像的影像拉出秘密 `trident-operator。

kubeletDir

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

"/var/lib/kubelet"

operatorLogLevel

允許將 Trident 運算符的日誌級別設置爲: trace、 debug、 info、 warn error`或 `fatal。

"info"

operatorDebug

允許將 Trident 運算子的記錄層級設為偵錯。

true

operatorImage

允許完全置換的影像 trident-operator。

""

operatorImageTag

允許覆寫映像的標記 trident-operator。

""

tridentIPv6

允許 Trident 在 IPv6 叢集中運作。

false

tridentK8sTimeout

覆寫大部分 Kubernetes API 作業的預設 30 秒逾時(如果非零、則以秒為單位)。

0

tridentHttpRequestTimeout

會覆寫 HTTP 要求的預設 90 秒逾時、並 `0s`為逾時的無限持續時間。不允許使用負值。

"90s"

tridentSilenceAutosupport

允許停用 Trident 定期 AutoSupport 報告。

false

tridentAutosupportImageTag

允許覆寫 Trident AutoSupport 容器的映像標記。

<version>

tridentAutosupportProxy

可讓 Trident AutoSupport Container 透過 HTTP Proxy 撥打電話回家。

""

tridentLogFormat

設定 Trident 記錄格式(text`或 `json)。

"text"

tridentDisableAuditLog

停用 Trident 稽核記錄程式。

true

tridentLogLevel

允許將 Trident 的日誌級別設置爲: trace、 debug、 info、 warn error`或 `fatal。

"info"

tridentDebug

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

false

tridentLogWorkflows

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

""

tridentLogLayers

允許啟用特定 Trident 層以進行追蹤記錄或記錄抑制。

""

tridentImage

允許完全置換 Trident 的映像。

""

tridentImageTag

可覆寫 Trident 的映像標記。

""

tridentProbePort

允許覆寫 Kubernetes 活性 / 整備性探查所使用的預設連接埠。

""

windows

可在 Windows 工作節點上安裝 Trident 。

false

enableForceDetach

允許啟用強制分離功能。

false

excludePodSecurityPolicy

不建立營運商 Pod 安全性原則。

false

cloudProvider

在 AKS 叢集上使用託管身分識別或雲端身分識別時、請設定為 "Azure"。在 EKS 叢集上使用雲端身分識別時、請設定為「 AWS 」。

""

cloudIdentity

在 AKS 叢集上使用雲端身分識別時、請設定為工作負載身分識別(「 azure.Workload .idental/client-id : XXXXXXXX-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxx 」)。在 EKS 叢集上使用雲端身分識別時、請設定為 AWS IAM 角色(「 eks.amazonaws.com/role-arn: arn:AWS:iam::123456 :角色 Trident 角色」)。

""

iscsiSelfHealingInterval

啟動 iSCSI 自我修復的時間間隔。

5m0s

iscsiSelfHealingWaitTime

iSCSI 自我修復透過執行登出和後續登入來嘗試解決過時工作階段的持續時間。

7m0s

nodePrep

可讓 Trident 準備 Kubernetes 叢集的節點、以使用指定的資料儲存傳輸協定來管理磁碟區。* 目前 `iscsi`是唯一支援的值。 *

瞭解控制器 Pod 和節點 Pod

Trident 以單一控制器 Pod 的形式執行、並在叢集中的每個工作節點上執行節點 Pod 。節點 Pod 必須在任何想要掛載 Trident Volume 的主機上執行。

Kubernetes "節點選取器" 和"容忍和污染"用於限制 Pod 在特定或偏好的節點上執行。使用「 ControllerPlugin' 」和 NodePlugin、您可以指定限制和置換。

  • 控制器外掛程式可處理磁碟區資源配置與管理、例如快照和調整大小。

  • 節點外掛程式會處理將儲存設備附加至節點的問題。