使用 Helm 部署Trident Operator(标准模式)
您可以使用 Helm 部署Trident Operator 并安装Trident 。此过程适用于Trident所需的容器镜像未存储在私有镜像仓库中的安装情况。如果您确实拥有私有镜像仓库,请使用"离线部署流程"。
关于Trident25.06的关键信息
您必须阅读以下关于Trident的重要信息。
关于Trident的关键信息
-
Trident现已支持 Kubernetes 1.34。在升级 Kubernetes 之前先升级Trident 。
-
Trident严格强制要求在 SAN 环境中使用多路径配置,建议值为 `find_multipaths: no`在 multipath.conf 文件中。
使用非多路径配置或使用 `find_multipaths: yes`或者 `find_multipaths: smart`multipath.conf 文件中的值会导致挂载失败。 Trident建议使用 `find_multipaths: no`自 21.07 版本发布以来。
使用 Helm 部署Trident Operator 并安装Trident。
使用Trident"掌舵图"您可以一步完成Trident操作符的部署和Trident 的安装。
审查"安装概述"确保您已满足安装先决条件并为您的环境选择了正确的安装选项。
除了"部署前提条件"你需要"Helm 版本 3"。
-
添加Trident Helm 仓库:
helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
-
使用 `helm install`并为您的部署指定一个名称,如下例所示: `100.2506.0`这是您正在安装的Trident版本。
helm install <name> netapp-trident/trident-operator --version 100.2506.0 --create-namespace --namespace <trident-namespace>
如果您已经为Trident创建了命名空间,那么 `--create-namespace`该参数不会创建额外的命名空间。
您可以使用 `helm list`查看安装详细信息,例如名称、命名空间、图表、状态、应用程序版本和修订号。
安装过程中传递配置数据
安装过程中有两种方法可以传递配置数据:
| 选项 | 描述 |
|---|---|
|
指定一个包含覆盖规则的 YAML 文件。可以多次指定,最右边的文件将优先使用。 |
|
在命令行中指定覆盖设置。 |
例如,要更改默认值 `debug`运行以下命令,其中 `100.2506.0`是您正在安装的Trident版本:
helm install <name> netapp-trident/trident-operator --version 100.2506.0 --create-namespace --namespace trident --set tridentDebug=true
配置选项
这张表格和 `values.yaml`该文件是 Helm chart 的一部分,提供了键及其默认值的列表。
| 选项 | 描述 | 默认 | ||
|---|---|---|---|---|
|
用于 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。 |
|
||
|
允许完全覆盖图像 |
|
||
|
允许覆盖标签 `trident-operator`图像。 |
|
||
|
允许Trident在 IPv6 集群中工作。 |
|
||
|
覆盖大多数 Kubernetes API 操作的默认 30 秒超时(如果非零,则以秒为单位)。 |
|
||
|
覆盖 HTTP 请求的默认 90 秒超时时间。 `0s`超时时间无限长。不允许使用负值。 |
|
||
|
允许禁用Trident定期AutoSupport报告。 |
|
||
|
允许覆盖Trident AutoSupport容器的图像标签。 |
|
||
|
使Trident AutoSupport容器能够通过 HTTP 代理向服务器发送请求。 |
|
||
|
设置Trident日志格式( |
|
||
|
禁用Trident审计日志记录器。 |
|
||
|
允许将Trident的日志级别设置为: |
|
||
|
允许将Trident的日志级别设置为 |
|
||
|
允许为跟踪日志记录或日志抑制启用特定的Trident工作流程。 |
|
||
|
允许为跟踪日志记录或日志抑制启用特定的Trident层。 |
|
||
|
允许完全覆盖Trident的图像。 |
|
||
|
允许覆盖Trident图像的标签。 |
|
||
|
允许覆盖 Kubernetes 存活/就绪探测使用的默认端口。 |
|
||
|
允许在 Windows 工作节点上安装Trident 。 |
|
||
|
允许启用强制分离功能。 |
|
||
|
不创建操作员 pod 安全策略。 |
|
||
|
设置为 `"Azure"`在 AKS 集群上使用托管身份或云身份时。在 EKS 集群上使用云身份时,请设置为“AWS”。 |
|
||
|
在 AKS 集群上使用云标识时,请设置为工作负载标识(“azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx”)。在 EKS 集群上使用云身份时,设置为 AWS IAM 角色(“'eks.amazonaws.com/role-arn: arn:aws:iam::123456:role/trident-role'”)。 |
|
||
|
调用 iSCSI 自愈功能的时间间隔。 |
|
||
|
iSCSI 自愈功能会在一段时间后尝试通过注销和重新登录来解决过期的会话。 |
|
||
|
使Trident能够准备 Kubernetes 集群的节点,以使用指定的数据存储协议管理卷。*现在, `iscsi`是唯一支持的值。*注意:从 OpenShift 4.19 开始,此功能支持的最低Trident版本为 25.06.1。 |
|||
|
支持并发Trident控制器操作以提高吞吐量。
|
false |
||
|
控制器与 Kubernetes API 服务器通信时使用的每秒查询数 (QPS) 限制。Burst 值根据 QPS 值自动设置。 |
|