借助NetApp ONTAP在 AWS 上提供 Red Hat OpenShift 服务
本文档将概述如何将NetApp ONTAP与 AWS 上的 Red Hat OpenShift 服务 (ROSA) 结合使用。
创建卷快照
1.创建应用程序卷的快照 在本节中,我们将展示如何创建与应用程序关联的卷的 trident 快照。这将是应用程序数据的时间点副本。如果应用程序数据丢失,我们可以从该时间点的副本恢复数据。注意:此快照与ONTAP中的原始卷存储在同一个聚合中(本地或云端)。因此,如果ONTAP存储聚合丢失,我们就无法从其快照中恢复应用程序数据。
**一个。创建 VolumeSnapshotClass 将以下清单保存在名为volume-snapshot-class.yaml的文件中
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: fsx-snapclass
driver: csi.trident.netapp.io
deletionPolicy: Delete
使用上述清单创建快照。
b.接下来,创建一个快照通过创建 VolumeSnapshot 来创建现有 PVC 的快照,以获取 Postgresql 数据的时间点副本。这会创建一个几乎不占用文件系统后端空间的 FSx 快照。将以下清单保存在名为volume-snapshot.yaml的文件中:
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
name: postgresql-volume-snap-01
spec:
volumeSnapshotClassName: fsx-snapclass
source:
persistentVolumeClaimName: data-postgresql-0
c.创建卷快照并确认已创建
删除数据库模拟数据丢失(数据丢失可能由于多种原因发生,这里我们只是通过删除数据库来模拟)
d.删除数据库以模拟数据丢失(数据丢失可能由于多种原因而发生,这里我们只是通过删除数据库来模拟)
从卷快照还原
1.从快照恢复 在本节中,我们将展示如何从应用程序卷的 trident 快照恢复应用程序。
一个。从快照创建卷克隆
要将卷恢复到以前的状态,您必须根据所拍摄快照中的数据创建一个新的 PVC。为此,请将以下清单保存在名为 pvc-clone.yaml 的文件中
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: postgresql-volume-clone
spec:
accessModes:
- ReadWriteOnce
storageClassName: trident-csi
resources:
requests:
storage: 8Gi
dataSource:
name: postgresql-volume-snap-01
kind: VolumeSnapshot
apiGroup: snapshot.storage.k8s.io
使用上述清单,通过使用快照作为源创建 PVC 来创建卷的克隆。应用清单并确保创建克隆。
b.删除原始的 postgresql 安装
c.使用新的克隆 PVC 创建新的 postgresql 应用程序
$ helm install postgresql bitnami/postgresql --set primary.persistence.enabled=true --set primary.persistence.existingClaim=postgresql-volume-clone -n postgresql
d.验证应用程序 pod 处于运行状态
e.验证 Pod 是否使用克隆作为其 PVC
f) 要验证数据库是否已按预期恢复,请返回容器控制台并显示现有数据库
演示视频
可以找到更多关于 Red Hat OpenShift 和 OpenShift 解决方案的视频"此处"。