启用Asta Control配置程序
Astra Trident 23.10及更高版本提供了使用Astra Control配置程序的选项、允许获得许可的Astra Control用户访问高级存储配置功能。除了基于标准Asta三端CSI的功能之外、Asta Control配置程序还提供了此扩展功能。
在即将推出的Astra Control更新中、Astra Control配置程序将取代Astra Trandent作为存储配置程序和流程编排程序、并且Astra Control必须使用它。因此、强烈建议Asta Control用户启用Asta Control配置程序。Asta三元数据将继续保持开源状态、并使用NetApp的新CSI和其他功能进行发布、维护、支持和更新。
如果您是Astra控制中心的许可用户、并且希望使用Astra控制配置程序功能、则应遵循此操作步骤。如果您是Astra三端数据库的用户、并且希望使用Astra Control配置程序提供的其他功能、而不同时使用Astra Control、则还应遵循此操作步骤。
对于每种情况、默认情况下在Astra Trident 24.02中不会启用配置程序功能、必须启用此功能。
如果要启用Asta Control配置程序、请先执行以下操作:
-
获取Astra控制中心许可证:您需要 "Asta Control Center许可证" 启用Astra Control配置程序并访问它提供的功能。
-
安装或升级到Astra Control Center 23.10或更高版本:如果您计划在Astra Control中使用最新的Astra Control配置程序功能(24.02),则需要最新的Astra Control Center版本(24.02)。
-
*确认集群具有一个AMD64*系统架构:Astra Control配置程序映像在amd64和ARM64 CPU架构中都提供,但Astra Control Center仅支持amd64。
-
获取用于注册表访问的Asta Control服务帐户:如果要使用Asta Control注册表而不是NetApp 支持站点 来下载Asta Control配置程序映像、请完成的注册 "Asta Control Service帐户"。填写并提交表单并创建BlueXP帐户后、您将收到Astra Control Service欢迎电子邮件。
-
如果您安装了Astra三端安装程序,请确认其版本在四个版本的窗口内:如果您的Astra三端安装程序在版本24.02的四个版本窗口内,则可以使用Astra Control置备程序直接升级到Astra三端安装程序24.02。例如、您可以直接从Asta三端23.04升级到24.02。
-
获取Astra控制中心许可证:您需要 "Asta Control Center许可证" 启用Astra Control配置程序并访问它提供的功能。
-
如果您安装了Astra三端安装程序,请确认其版本在四个版本的窗口内:如果您的Astra三端安装程序在版本24.02的四个版本窗口内,则可以使用Astra Control置备程序直接升级到Astra三端安装程序24.02。例如、您可以直接从Asta三端23.04升级到24.02。
-
获取Astra Control Service帐户以访问注册表:您需要访问注册表才能下载Astra Control配置程序映像。要开始使用、请完成的注册 "Asta Control Service帐户"。填写并提交表单并创建BlueXP帐户后、您将收到Astra Control Service欢迎电子邮件。
(步骤1)获取Asta Control配置程序映像
Asta控制中心用户可以使用Asta控制注册表或NetApp 支持站点 方法获取Asta控制配置程序映像。要在不使用Astra Control的情况下使用Astra Control配置程序的Astra Trent用户应使用注册表方法。
在此操作步骤中、您可以使用Podman而不是Docker执行命令。如果您使用的是Windows环境、建议使用PowerShell。 |
-
访问NetApp Astra控件映像注册表:
-
登录到Astra Control Service Web UI、然后选择页面右上角的图图标。
-
选择* API访问*。
-
记下您的帐户ID。
-
在同一页面中,选择*Generate API t令牌*并将API令牌字符串复制到剪贴板,然后将其保存在编辑器中。
-
使用您的首选方法登录Astra Control注册表:
docker login cr.astra.netapp.io -u <account-id> -p <api-token>
crane auth login cr.astra.netapp.io -u <account-id> -p <api-token>
-
-
(仅限自定义注册表)按照以下步骤将图像移动到自定义注册表。如果您不使用注册表、请按照中的三端修复操作符步骤进行操作 "下一节"。
-
从注册表中提取Asta Control配置程序映像:
提取的映像不支持多个平台、只支持与提取映像的主机相同的平台、例如Linux amd64。 docker pull cr.astra.netapp.io/astra/trident-acp:24.02.0 --platform <cluster platform>
示例
docker pull cr.astra.netapp.io/astra/trident-acp:24.02.0 --platform linux/amd64
-
标记图像:
docker tag cr.astra.netapp.io/astra/trident-acp:24.02.0 <my_custom_registry>/trident-acp:24.02.0
-
将映像推送到自定义注册表:
docker push <my_custom_registry>/trident-acp:24.02.0
-
您可以使用"删除副本"来替代运行以下Docker命令:crane copy cr.astra.netapp.io/astra/trident-acp:24.02.0 <my_custom_registry>/trident-acp:24.02.0
|
-
下载Asta Control配置程序包 (
trident-acp-[version].tar
) "Astra Control Center下载页面"。 -
(建议但可选)下载Astra Control Center的证书和签名捆绑包(astra-control-crier-certs -[version].tar.gz)、以验证trident - acp-[version] tar捆绑包的签名。
tar -vxzf astra-control-center-certs-[version].tar.gz
openssl dgst -sha256 -verify certs/AstraControlCenterDockerImages-public.pub -signature certs/trident-acp-[version].tar.sig trident-acp-[version].tar
-
加载Asta Control配置程序映像:
docker load < trident-acp-24.02.0.tar
响应:
Loaded image: trident-acp:24.02.0-linux-amd64
-
标记图像:
docker tag trident-acp:24.02.0-linux-amd64 <my_custom_registry>/trident-acp:24.02.0
-
将映像推送到自定义注册表:
docker push <my_custom_registry>/trident-acp:24.02.0
(第2步)在Asta Trdent中启用Asta Control配置程序
确定原始安装方法是否使用 "运算符(手动或使用Helm)或trdentcd" 并根据原始方法完成相应的步骤。
-
如果您尚未安装Astra三端安装程序、或者您从初始Astra三端安装程序中删除了操作员、请完成以下步骤:
-
创建客户需求日:
kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
创建三项命名空间 (
kubectl create namespace trident
)或确认三项命名空间仍然存在 (kubectl get all -n trident
)。如果已删除此命名空间、请重新创建它。
-
-
将Astra Trdent更新到24.02.0:
对于运行Kubornetes 1.24或更早版本的集群、请使用 bundle_pre_1_25.yaml
。对于运行Kubernetes 1.25或更高版本的集群、请使用bundle_post_1_25.yaml
。kubectl -n trident apply -f trident-installer/deploy/<bundle-name.yaml>
-
验证Astra trident是否正在运行:
kubectl get torc -n trident
响应:
NAME AGE trident 21m
-
如果您有一个使用机密的注册表,请创建一个用于提取Astra Control置备程序映像的密钥:
kubectl create secret docker-registry <secret_name> -n trident --docker-server=<my_custom_registry> --docker-username=<username> --docker-password=<token>
-
编辑TridentOrchestrator CR并进行以下编辑:
kubectl edit torc trident -n trident
-
为Astra三端映像设置自定义注册表位置或从Astra Control注册表中提取该映像 (
tridentImage: <my_custom_registry>/trident:24.02.0
或tridentImage: netapp/trident:24.02.0
)。 -
启用Asta Control配置程序 (
enableACP: true
)。 -
设置Asta Control配置程序映像的自定义注册表位置或将其从Asta Control注册表中提取 (
acpImage: <my_custom_registry>/trident-acp:24.02.0
或acpImage: cr.astra.netapp.io/astra/trident-acp:24.02.0
)。 -
如果您已建立 图像拉取密钥 在本操作步骤的前面部分、您可以在此处设置它们 (
imagePullSecrets: - <secret_name>
)。使用您在前面步骤中创建的相同名称机密名称。
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident tridentImage: <registry>/trident:24.02.0 enableACP: true acpImage: <registry>/trident-acp:24.02.0 imagePullSecrets: - <secret_name>
-
-
保存并退出文件。部署过程将自动开始。
-
验证是否已创建操作员、部署和副本集。
kubectl get all -n trident
在 Kubernetes 集群中只能有 * 一个操作符实例 * 。请勿创建多个部署的Asta三端操作员。 -
验证
trident-acp
容器正在运行acpVersion
为24.02.0
状态为Installed
:kubectl get torc -o yaml
响应:
status: acpVersion: 24.02.0 currentInstallationParams: ... acpImage: <registry>/trident-acp:24.02.0 enableACP: "true" ... ... status: Installed
-
在启用Asta Control配置程序的情况下安装Asta Trent (
--enable-acp=true
):./tridentctl -n trident install --enable-acp=true --acp-image=mycustomregistry/trident-acp:24.02
-
确认已启用Asta Control配置程序:
./tridentctl -n trident version
响应:
+----------------+----------------+-------------+ | SERVER VERSION | CLIENT VERSION | ACP VERSION | +----------------+----------------+-------------+ | 24.02.0 | 24.02.0 | 24.02.0. | +----------------+----------------+-------------+
-
如果您安装了Astra Trident 23.07.1或更早版本、 "卸载" 操作员和其他组件。
-
如果您的Kubornetes集群运行的是1.24或更早版本、请删除PSP:
kubectl delete psp tridentoperatorpod
-
添加Astra Trident Helm存储库:
helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
-
更新Helm图表:
helm repo update netapp-trident
响应:
Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "netapp-trident" chart repository Update Complete. ⎈Happy Helming!⎈
-
列出图像:
./tridentctl images -n trident
响应:
| v1.28.0 | netapp/trident:24.02.0| | | docker.io/netapp/trident-autosupport:24.02| | | registry.k8s.io/sig-storage/csi-provisioner:v4.0.0| | | registry.k8s.io/sig-storage/csi-attacher:v4.5.0| | | registry.k8s.io/sig-storage/csi-resizer:v1.9.3| | | registry.k8s.io/sig-storage/csi-snapshotter:v6.3.3| | | registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.0 | | | netapp/trident-operator:24.02.0 (optional)
-
确保提供了三项运算符24.02.0:
helm search repo netapp-trident/trident-operator --versions
响应:
NAME CHART VERSION APP VERSION DESCRIPTION netapp-trident/trident-operator 100.2402.0 24.02.0 A
-
使用 …
helm install
并运行以下选项之一、其中包括这些设置:-
部署位置的名称
-
Astra三端版本
-
Asta Control配置程序映像的名称
-
用于启用配置程序的标志
-
(可选)本地注册表路径。如果您使用的是本地注册表、则为 "{\f270{\f151{\f270}" 可以位于一个注册表或不同的注册表中、但所有CSI映像都必须位于同一注册表中。
-
三端名称空间
-
-
没有注册表的映像
helm install trident netapp-trident/trident-operator --version 100.2402.0 --set acpImage=cr.astra.netapp.io/astra/trident-acp:24.02.0 --set enableACP=true --set operatorImage=netapp/trident-operator:24.02.0 --set tridentAutosupportImage=docker.io/netapp/trident-autosupport:24.02 --set tridentImage=netapp/trident:24.02.0 --namespace trident
-
一个或多个注册表中的图像
helm install trident netapp-trident/trident-operator --version 100.2402.0 --set acpImage=<your-registry>:<acp image> --set enableACP=true --set imageRegistry=<your-registry>/sig-storage --set operatorImage=netapp/trident-operator:24.02.0 --set tridentAutosupportImage=docker.io/netapp/trident-autosupport:24.02 --set tridentImage=netapp/trident:24.02.0 --namespace trident
您可以使用 helm list
查看安装详细信息、例如名称、命名空间、图表、状态、应用程序版本、和修订版号。
如果您在使用Helm部署TRIdent时遇到任何问题、请运行此命令以完全卸载Asta TRIdent:
./tridentctl uninstall -n trident
请勿 "完全删除Asta Trdent CRD" 在尝试重新启用Astra Control配置程序之前、作为卸载的一部分。
结果
Asta Control配置程序功能已启用、您可以使用当前运行的版本可用的任何功能。
(仅适用于Asta Control Center用户)安装Asta Control配置程序后、在Asta Control Center UI中托管此配置程序的集群将显示 ACP version
而不是 Trident version
字段和当前安装的版本号。