使用Helm部署Trident操作员(脱机模式)
您可以使用Helm部署Trident操作员并安装Trident。此过程适用于将Trident所需的容器映像存储在私有注册表中的安装。如果没有专用映像注册表,请使用"标准部署流程"。
关于Trident 25.10 的关键信息
您必须阅读以下有关Trident的重要信息。
<strong>与Trident </strong>相关的信息
-
Trident现已支持 Kubernetes 1.34。在升级 Kubernetes 之前先升级Trident 。
-
Trident会严格强制在SAN环境中使用多路径配置、并在Multipath.conf文件中使用建议值
find_multipaths: no。使用非多路径配置或
find_multipaths: yes或find_multipaths: smartmultipath.conf文件中的值将导致挂载失败。Trident已建议使用find_multipaths: no自21.07版起。
部署Trident操作员并使用Helm安装Trident
使用Trident"Helm图表"您可以一步部署Trident操作员并安装Trident 。
请查看 "安装概述" 以确保满足安装前提条件并为您的环境选择正确的安装选项。
除了 "部署前提条件" 您需要 "Helm 版本 3"。
|
|
在私有存储库中安装Trident时、如果 imageRegistry`使用交换机指定存储库位置、请勿在存储库路径中使用 `/netapp/。
|
-
添加Trident Helm存储库:
helm repo add netapp-trident https://netapp.github.io/trident-helm-chart -
使用
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 查看安装详细信息、例如名称、命名空间、图表、状态、应用程序版本、和修订版号。
在安装期间传递配置数据
在安装期间,可以通过两种方式传递配置数据:
| 选项 | Description |
|---|---|
|
指定包含覆盖的YAML文件。可以多次指定此值,最右侧的文件将优先。 |
|
在命令行上指定覆盖。 |
例如,要更改的默认值 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图表的一部分)提供了键列表及其默认值。
|
|
请勿从values.yaml文件中删除默认相关性。如果要提供自定义相关性、请扩展默认相关性。 |
| 选项 | Description | Default | ||||
|---|---|---|---|---|---|---|
|
用于POD分配的节点标签 |
|||||
|
POD标注 |
|||||
|
部署标注 |
|||||
|
POD分配的差值 |
|||||
|
用于Pod分配的相关性 |
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/arch
operator: In
values:
- arm64
- amd64
- key: kubernetes.io/os
operator: In
values:
- linux
|
||||
|
Pod的其他节点选择器。请参见 "了解控制器Pod和节点Pod" 了解详细信息。 |
|||||
|
覆盖Kubernetes对Pod的容错。请参见 "了解控制器Pod和节点Pod" 了解详细信息。 |
|||||
|
Pod的其他节点选择器。请参见 "了解控制器Pod和节点Pod" 了解详细信息。 |
|||||
|
覆盖Kubernetes对Pod的容错。请参见 "了解控制器Pod和节点Pod" 了解详细信息。 |
|||||
|
标识、 |
"" |
||||
|
设置的映像提取策略 |
|
||||
|
设置的映像提取密钥 |
|||||
|
允许覆盖kubelet内部状态的主机位置。 |
|
||||
|
允许将Trident操作符的日志级别设置为: |
|
||||
|
允许将Trident操作符的日志级别设置为DEBUG。 |
|
||||
|
允许完全覆盖的映像 |
"" |
||||
|
允许覆盖的标记 |
"" |
||||
|
允许在IPv6集群中启用Trident。 |
|
||||
|
覆盖大多数 Kubernetes API 操作的默认 180 秒超时(如果非零,则以秒为单位)。
|
|
||||
|
使用覆盖HTTP请求的默认90秒超时 |
|
||||
|
允许禁用Trident定期AutoSupport报告。 |
|
||||
|
允许覆盖Trident AutoSupport容器的映像标记。 |
|
||||
|
允许Trident AutoSupport容器通过HTTP代理回拨。 |
"" |
||||
|
设置Trident日志记录格式( |
|
||||
|
禁用Trident审核日志程序。 |
|
||||
|
允许将Trident的日志级别设置为: |
|
||||
|
允许将Trident的日志级别设置为 |
|
||||
|
允许为跟踪日志记录或日志抑制启用特定的Trident工作流。 |
"" |
||||
|
允许为跟踪日志记录或日志抑制启用特定的Trident层。 |
"" |
||||
|
允许完全覆盖Trident的图像。 |
"" |
||||
|
允许覆盖Trident的映像标记。 |
"" |
||||
|
允许覆盖用于Kubernetes活动/就绪性探测的默认端口。 |
"" |
||||
|
使Trident能够安装在Windows工作节点上。 |
|
||||
|
允许启用强制分离功能。您可以通过与节点健康检查 (NHC) 操作符集成来自动执行强制分离过程。有关信息,请参阅"使用Trident实现有状态应用程序的故障转移自动化"。 |
|
||||
|
从创建过程中排除操作员POD安全策略。 |
|
||||
|
使Trident能够使Kubbernetes集群的节点做好准备、以便使用指定的数据存储协议管理卷。目前, `iscsi`是唯一支持的值。
|
|||||
|
设置 Kubernetes 对Trident控制器、节点和操作员 pod 的资源限制和请求。您可以为每个容器和边车配置 CPU 和内存,以管理 Kubernetes 中的资源分配。 有关配置资源请求和限制的更多信息,请参阅"Pod 和容器的资源管理"。
|
|