数据保护
此页面显示了使用Astra Control Service在AWS上托管Red Hat OpenShift (ROSA)集群的数据保护选项。Astra Control Service (ACS)提供了一个易于使用的图形用户界面、您可以使用该界面添加集群、定义在其中运行的应用程序以及执行应用程序感知型数据管理活动。此外、还可以使用支持工作流自动化的API访问ACS功能。
为Astra Control (ACS或ACC)供电是NetApp Trident。将多种类型的Kubernetes集群(例如Red Hat OpenShift、EKS、AKS、SUSE AFF、Anthos等)与各种类型的NetApp ONTAP存储(例如Trident、ONTAP Select、CVO、Google Cloud NetApp卷、Azure NetApp Files和FAS FSx ONTAP)相集成。
本节详细介绍了使用ACS的以下数据保护选项:
-
显示备份和还原在一个区域运行的ROSA应用程序并还原到另一个区域的视频。
-
显示ROSA应用程序的Snapshot和Restore的视频。
-
安装ROSA集群(Amazon FSx ONTAP)的分步详细信息、使用NetApp Trident与存储后端集成、在ROSA集群上安装PostgreSQL应用程序、使用ACS创建应用程序快照并从中还原应用程序。
-
一篇博客、详细介绍了如何使用ACS在使用FSx ONTAP的ROSA集群上为mySQL应用程序创建快照并从快照中还原。
备份/从备份中还原
以下视频显示了在一个区域运行的ROSA应用程序的备份以及还原到另一个区域的过程。
快照/从快照还原
以下视频显示了如何创建ROSA应用程序的快照以及之后如何从快照中还原。
创建快照并从中还原的分步详细信息
前提条件设置
-
使用的IAM用户 "适当的权限" 创建和访问ROSA集群
-
"OpenShift命令行界面"(OC)
-
具有子网以及相应网关和路由的VPC
-
"已安装罗莎群集" VPC
-
"Amazon FSx ONTAP"在同一个VPC中创建
-
从访问ROSA集群 "OpenShift混合云控制台"
后续步骤
-
创建管理员用户并登录到集群。
-
为集群创建一个kubeconfig.文件。
-
在集群上安装Trident。
-
使用三端CSI配置程序创建后端、存储类和快照类配置。
-
在集群上部署PostgreSQL应用程序。
-
创建数据库并添加记录。
-
将集群添加到ACS中。
-
在ACS中定义应用程序。
-
使用ACS创建快照。
-
删除PostgreSQL应用程序中的数据库。
-
使用ACS从快照还原。
-
验证您的应用程序是否已从快照中还原。
1.创建管理员用户并登录到群集
使用以下命令创建管理员用户以访问ROSA集群:(只有在安装时未创建管理员用户时、才需要创建管理员用户)
rosa create admin --cluster=<cluster-name>
此命令将提供如下输出。使用登录到集群 oc login
命令。
您也可以使用令牌登录到集群。如果您在创建集群时已创建管理员用户、则可以使用管理员用户凭据从Red Hat OpenShift Hybrid Cloud控制台登录到集群。然后、通过单击右上角显示已登录用户名称的、您可以获取 oc login 命令(令牌登录)。
|
2.为群集创建kubeconfig*文件
按照步骤进行操作 "此处" 为ROSA集群创建kubeconfig.稍后在将集群添加到ACS中时、将使用此kubeconfig.文件。
3.在群集上安装Trident
在ROSA集群上安装Trident (最新版本)。要执行此操作,您可以按照给定的任一过程"此处"进行操作。要从集群控制台使用Helm安装Trident、请先创建一个名为Trident的项目。
然后、在"开发工具"视图中、创建Helm图表存储库。对于URL字段、请使用 'https://netapp.github.io/trident-helm-chart'
。然后为三端操作员创建舵版本。
返回控制台上的"Administrator view"(管理员视图)、然后在三级工程中选择Pod、以验证所有三级工程模块是否正在运行。
4.使用三端CSI配置程序创建后端、存储类和快照类配置
使用下面显示的YAML文件创建三元后端对象、存储类对象和卷快照对象。请务必提供您创建的Amazon FSx ONTAP文件系统的凭据、管理LIF以及后端YAML配置中文件系统的Vserver名称。要获取这些详细信息、请转到适用于Amazon FSx的AWS控制台并选择文件系统、然后导航到管理选项卡。此外、单击更新可设置用户的密码 fsxadmin
。
您可以使用命令行创建对象、也可以从混合云控制台使用YAML文件创建对象。 |
Trident后端配置
apiVersion: v1
kind: Secret
metadata:
name: backend-tbc-ontap-nas-secret
type: Opaque
stringData:
username: fsxadmin
password: <password>
---
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
name: ontap-nas
spec:
version: 1
storageDriverName: ontap-nas
managementLIF: <management lif>
backendName: ontap-nas
svm: fsx
credentials:
name: backend-tbc-ontap-nas-secret
存储类
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-nas
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
media: "ssd"
provisioningType: "thin"
snapshots: "true"
allowVolumeExpansion: true
快照类
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: trident-snapshotclass
driver: csi.trident.netapp.io
deletionPolicy: Delete
发出下面所示的命令、验证是否已创建后端、存储类和trdent-snapshotclass对象。
此时、您需要进行的一项重要修改是将ONTAP NAS设置为默认存储类、而不是GP3、以便您稍后部署的PostgreSQL应用程序可以使用默认存储类。在集群的OpenShift控制台中、在"Storage"下选择"StorageClasses"。将当前默认类的标注编辑为false、并将ONTAP NAS存储类的标注storageclass.Kubernetes.io/is-default-class设置为true。
5.在群集上部署PostgreSQL应用程序
您可以从命令行部署此应用程序、如下所示:
helm install postgresql bitnami/postgresql -n postgresql --create-namespace
如果您看不到应用程序Pod正在运行、则可能是由于安全上下文约束而导致错误。 runAsUser fsGroup `statefuleset.apps/postgresql`使用 `oc get project`命令输出中的uid编辑对象中的和字段以修复此错误、如下所示。
|
PostgreSQL应用程序应正在运行并使用由Amazon FSx ONTAP存储提供支持的永久性卷。
6.创建数据库并添加记录
7.将集群添加到ACs中
登录到ACS。选择cluster、然后单击Add。选择其他并上传或粘贴kubeconfig.
单击*Next*并选择ONTAP-NAS作为ACS的默认存储类。单击*Next*(下一步*),查看详细信息,然后单击*Add*(添加)群集。
8.在ACs中定义应用程序
在ACS中定义PostgreSQL应用程序。在登录页面中,选择*Applications*、Define*并填写相应的详细信息。单击“*下一步”几次,查看详细信息,然后单击“定义”。应用程序将添加到ACS。
9.使用ACs创建快照
可通过多种方法在ACS中创建快照。您可以从显示应用程序详细信息的页面中选择应用程序并创建快照。您可以单击创建快照来创建按需快照或配置保护策略。
只需单击*创建快照*、提供名称、查看详细信息并单击*快照*、即可创建按需快照。操作完成后、快照状态将更改为"运行状况良好"。
10.删除PostgreSQL应用程序中的数据库
重新登录到PostgreSQL、列出可用数据库、删除先前创建的数据库并重新列出、以确保数据库已被删除。
11.使用ACs从快照恢复
要从快照还原应用程序、请转到ACS UI登录页面、选择应用程序、然后选择还原。您需要选择要从中还原的快照或备份。(通常、您会根据所配置的策略创建多个)。在接下来的几个屏幕中做出适当的选择,然后单击*Restore*。从快照还原后、应用程序状态将从还原变为可用。
12.验证您的应用程序是否已从快照中恢复
登录到PostgreSQL客户端、您现在应该可以看到表以及以前的表中的记录。 就是这样。只需单击一个按钮、您的应用程序便已恢复到先前的状态。这就是我们使用Astra Control为客户实现的简单体验。