了解有关Astra Trident安装的信息
为了确保Astra Trident能够安装在各种环境和组织中、NetApp提供了多种安装选项。您可以使用Trident操作符(手动或使用Helm)或安装Astra Trident tridentctl
。本主题提供了有关为您选择正确安装过程的重要信息。
有关Asta Trdent 23.07的重要信息
您必须阅读以下有关Astra Trident的重要信息。
<strong> 中有关Astra </strong> 的信息
-
现在、在Trident中支持Kubnetes 1.27。在升级Kubernetes之前升级Trident。
-
Astra Trident会严格强制在SAN环境中使用多路径配置、建议值为
find_multipaths: no
在multipath.conf文件中。使用非多路径配置或
find_multipaths: yes
或find_multipaths: smart
multipath.conf文件中的值将导致挂载失败。Trident已建议使用find_multipaths: no
自21.07版起。
开始之前
无论您的安装路径如何、您都必须:
-
对运行受支持的Kubernetes版本并启用了功能要求的受支持Kubernetes集群的完全权限。查看 "要求" 了解详细信息。
-
访问受支持的NetApp存储系统。
-
能够从所有Kubernetes工作节点挂载卷。
-
具有的Linux主机
kubectl
(或oc
(如果您使用的是OpenShift)已安装并配置为管理要使用的Kubernetes集群。 -
。
KUBECONFIG
环境变量设置为指向您的Kubernetes集群配置。 -
如果您将 Kubernetes 与 Docker Enterprise 结合使用, "按照其步骤启用 CLI 访问"。
如果您尚未熟悉 "基本概念",现在是一个实现这一目标的好时机。 |
选择安装方法
选择适合您的安装方法。您还应查看的注意事项 "在方法之间移动" 在做出决定之前。
使用Trident运算符
无论是手动部署还是使用Helm部署、Trident操作员都是简化安装和动态管理Astra Trident资源的绝佳方式。您可以做到这一点 "自定义Trident操作员部署" 使用中的属性 TridentOrchestrator
自定义资源(CR)。
使用Trident运算符的优势包括:
<strong> A Trident对象</strong>
Trident操作符会自动为您的Kubernetes版本创建以下对象。
-
操作员的ServiceAccount
-
ClusterRole和ClusterRoleBindingto the ServiceAccount
-
专用PodSecurityPolicy (适用于Kubernetes 1.25及更早版本)
-
运算符本身
<strong>帐户</strong>
集群范围的三端修复操作符可在集群级别管理与Astra三端修复安装关联的资源。这可减少使用命名空间范围的操作符维护集群范围的资源时可能导致的错误。这对于自我修复和修补至关重要。
<strong> —修复功能—</strong>
操作员监控Astra Trident的安装、并主动采取措施来解决问题、例如部署何时被删除或意外修改。答 trident-operator-<generated-id>
此时将创建与关联的POD TridentOrchestrator
安装了Astra Trident的CR。这样可以确保集群中只有一个Astra Trident实例并控制其设置、从而确保安装有效。对安装进行更改(例如删除部署或节点取消设置)时,操作员会识别这些更改并逐个修复它们。
<strong> 更新了现有安装的</strong>
您可以使用操作员轻松更新现有部署。您只需编辑 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以相应地修改安装。
<strong> Clean重新安装</strong>
通过集群范围的三端技术参数操作符、可以完全删除集群范围的资源。用户可以完全卸载Astra tandent并轻松重新安装。
<strong> Kubernetes升级</strong>
当集群的 Kubernetes 版本升级到受支持的版本时,操作员会自动更新现有的 Astra Trident 安装并进行更改,以确保其满足 Kubernetes 版本的要求。
如果集群升级到不受支持的版本,则操作员会阻止安装 Astra Trident 。如果已随操作员安装了 Astra Trident ,则会显示一条警告,指示 Astra Trident 安装在不受支持的 Kubernetes 版本上。 |
<strong> 将使用BlueXP (以前称为Cloud Manager)</strong> 进行集群管理
使用 "使用BlueXP的Astra Trident"、您可以升级到最新版本的Astra Trident、添加和管理存储类并将其连接到工作环境、以及使用Cloud Backup Service 备份永久性卷。BlueXP支持使用Trident操作员手动或使用Helm部署Astra Trident。
使用 tridentctl
如果您的现有部署必须升级、或者您希望对部署进行高度自定义、则应考虑 。这是部署 Astra Trident 的传统方法。
您可以 生成Trident资源的清单。其中包括 Astra Trident 在安装过程中创建的部署,取消设置,服务帐户和集群角色。
从 22.04 版开始,每次安装 Astra Trident 时, AES 密钥将不再重新生成。在此版本中, Astra Trident 将安装一个新的机密对象,该对象会在安装之间持续存在。这意味着、 tridentctl 在22.04中、可以卸载先前版本的Trident、但早期版本无法卸载22.04安装。选择适当的安装_method。 |
选择安装模式
根据您的组织所需的_installation mode"(标准)、"Offline"(脱机)或"Remote"(远程)来确定部署过程。
这是安装Astra Trident的最简单方法、适用于大多数不会实施网络限制的环境。标准安装模式使用默认注册表来存储所需的Trident (docker.io
)和CSI (registry.k8s.io
)映像。
使用标准模式时、Astra Trident安装程序将:
-
通过Internet提取容器映像
-
创建部署或节点取消命名集、以便在Kubernetes集群中所有符合条件的节点上启动Astra Trident Pod
在带风口或安全位置可能需要脱机安装模式。在这种情况下、您可以创建一个专用的镜像注册表或两个镜像注册表来存储所需的Trident和CSI映像。
无论注册表配置如何、CSI映像都必须驻留在一个注册表中。 |
下面简要概述了远程安装过程:
-
部署适当版本的
kubectl
在要部署Astra Trident的远程计算机上。 -
从Kubernetes集群复制配置文件并设置
KUBECONFIG
远程计算机上的环境变量。 -
启动
kubectl get nodes
命令以验证是否可以连接到所需的Kubernetes集群。 -
使用标准安装步骤从远程计算机完成部署。
根据您的方法和模式选择过程
在安装方法之间移动
您可以决定更改安装方法。在执行此操作之前、请考虑以下事项:
-
安装和卸载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的部署、而不会遇到问题。
其他已知配置选项
在 VMware Tanzu Portfolio 产品上安装 Astra Trident 时:
-
集群必须支持有权限的工作负载。
-
。
--kubelet-dir
标志应设置为kubelet目录的位置。默认情况下、此值为/var/vcap/data/kubelet
。使用指定kubelet位置
--kubelet-dir
已知适用于Trident操作员、Helm和tridentctl
部署。