Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

部署概述

贡献者

您可以使用Trident操作员或与一起部署Astra Trident tridentctl

选择部署方法

要确定要使用的部署方法,请考虑以下几点:

为什么要使用 Trident 运算符?

"Trident 运算符" 是动态管理 Astra Trident 资源并自动完成设置阶段的绝佳方式。必须满足某些前提条件。请参见 "要求"

Trident 运算符提供了以下几项优势。

自我修复功能

您可以监控 Astra Trident 安装并主动采取措施来解决问题,例如删除部署或意外修改部署的时间。将操作员设置为部署时、会显示 trident-operator-<generated-id> POD已创建。此POD关联A TridentOrchestrator 安装了Astra Trident的CR、并始终确保只有一个处于活动状态 TridentOrchestrator。换言之,操作员可确保集群中只有一个 Astra Trident 实例并控制其设置,从而确保安装有效。对安装进行更改(例如删除部署或节点取消设置)时,操作员会识别这些更改并逐个修复它们。

轻松更新现有安装

您可以使用操作员轻松更新现有部署。您只需编辑 TridentOrchestrator cr以更新安装。例如,请考虑需要启用 Astra Trident 以生成调试日志的情形。

为此、请修补 TridentOrchestrator 设置 spec.debug to true

kubectl patch torc <trident-orchestrator-name> -n trident --type=merge -p '{"spec":{"debug":true}}'

之后 TridentOrchestrator 更新后、操作员将处理更新并修补现有安装。这可能会触发创建新 Pod 以相应地修改安装。

自动处理 Kubernetes 升级

当集群的 Kubernetes 版本升级到受支持的版本时,操作员会自动更新现有的 Astra Trident 安装并进行更改,以确保其满足 Kubernetes 版本的要求。

备注 如果集群升级到不受支持的版本,则操作员会阻止安装 Astra Trident 。如果已随操作员安装了 Astra Trident ,则会显示一条警告,指示 Astra Trident 安装在不受支持的 Kubernetes 版本上。

为什么要使用 Helm ?

如果您还有其他要使用 Helm 管理的应用程序,从 Astra Trident 21.01 开始,您也可以使用 Helm 管理您的部署。

应在何时使用 tridenctl

如果您的现有部署必须升级到,或者您希望对部署进行高度自定义,则应查看使用 "Tridentctl"。这是部署 Astra Trident 的传统方法。

在部署方法之间移动时的注意事项

不难想象需要在部署方法之间移动的情形。在尝试从移动之前、应考虑以下事项 tridentctl 部署到基于操作员的部署、反之亦然:

  • 卸载 Astra Trident 时,请始终使用相同的方法。如果您已使用部署 tridentctl、您应使用的相应版本 tridentctl 用于卸载Astra Trident的二进制文件。同样、如果要使用操作员进行部署、则应编辑 TridentOrchestrator CR和设置 spec.uninstall=true 卸载Astra Trident。

  • 如果您的部署基于操作员、则要删除并使用 tridentctl 要部署Astra Trident、您应先编辑 TridentOrchestrator 并设置 spec.uninstall=true 卸载Astra Trident。然后删除 TridentOrchestrator 和操作员部署。然后、您可以使用安装 tridentctl

  • 如果您使用的是基于操作员的手动部署,并且要使用基于 Helm 的 Trident 操作员部署,则应先手动卸载此操作员,然后再执行 Helm 安装。这样, Helm 就可以使用所需的标签和标注来部署 Trident 操作员。如果不执行此操作,则基于 Helm 的 Trident 操作员部署将失败,并显示标签验证错误和标注验证错误。如果您有 `tridentctl`基于部署、您可以使用基于Helm的部署、而不会遇到问题。

了解部署模式

部署 Astra Trident 的方法有三种。

标准部署

在 Kubernetes 集群上部署 Trident 会导致 Astra Trident 安装程序执行以下两项操作:

  • 通过 Internet 提取容器映像

  • 创建部署和 / 或节点取消设置,以便在 Kubernetes 集群中所有符合条件的节点上启动 Astra Trident Pod 。

此类标准部署可以通过两种不同的方式执行:

  • 使用 tridentctl install

  • 使用 Trident 运算符。您可以手动或使用 Helm 部署 Trident 操作员。

此安装模式是安装 Astra Trident 的最简单方法,适用于大多数不会实施网络限制的环境。

脱机部署

要执行带风的部署、您可以使用 --image-registry 调用时标记 tridentctl install 指向私有映像注册表。如果使用Trident操作符进行部署、则也可以指定 spec.imageRegistry 在中 TridentOrchestrator。此注册表应包含 "Trident 映像""Trident AutoSupport 映像"和 Kubernetes 版本所需的 CSI sidecar 映像。

要自定义部署、您可以使用 tridentctl 为Trident的资源生成清单。其中包括 Astra Trident 在安装过程中创建的部署,取消设置,服务帐户和集群角色。

有关自定义部署的详细信息,请参见以下链接:

重要说明 如果您使用的是私有映像存储库、则应添加 /k8scsi 适用于1.17或之前的Kubernetes版本 /sig-storage 对于1.17之后的Kubernetes版本、请转到专用注册表URL末尾。使用私有注册表时 tridentctl 部署、您应使用 --trident-image--autosupport-image 与结合使用 --image-registry。如果要使用Trident操作符部署Astra Trident、请确保Orchestrator CR包括在内 tridentImageautosupportImage 在安装参数中。

远程部署

下面简要概述了远程部署过程:

  • 部署适当版本的 kubectl 在要部署Astra Trident的远程计算机上。

  • 从Kubernetes集群复制配置文件并设置 KUBECONFIG 远程计算机上的环境变量。

  • 启动 kubectl get nodes 命令以验证是否可以连接到所需的Kubernetes集群。

  • 使用标准安装步骤从远程计算机完成部署。