데이터 보호
이 페이지에는 Astra Control Service를 사용하는 AWS(ROSA) 관리형 Red Hat OpenShift 클러스터에 대한 데이터 보호 옵션이 나와 있습니다. Astra Control Service(ACS)는 사용이 간편한 그래픽 사용자 인터페이스를 제공하여 클러스터를 추가하고, 클러스터에서 실행되는 애플리케이션을 정의하고, 애플리케이션 인식 데이터 관리 활동을 수행할 수 있습니다. ACS 기능은 워크플로우 자동화를 지원하는 API를 사용하여 액세스할 수도 있습니다.
전원 공급 Astra Control(ACS 또는 ACC)은 NetApp Trident입니다. Trident는 Red Hat OpenShift, EKS, AKS, SUSE Rancher, Anthos 등과 같은 다양한 유형의 Kubernetes 클러스터를 FAS/AFF, ONTAP Select, CVO, Google Cloud NetApp Volumes, Azure NetApp Files, Amazon FSx ONTAP 등의 다양한 버전의 NetApp ONTAP 스토리지와 통합합니다.
이 섹션에서는 ACS를 사용하는 다음 데이터 보호 옵션에 대해 자세히 설명합니다.
-
한 지역에서 실행 중인 Rosa 애플리케이션의 백업 및 복원과 다른 지역으로 복원한 비디오를 보여 줍니다.
-
Rosa 애플리케이션의 스냅샷 및 복원을 보여주는 비디오
-
ROSA 클러스터, Amazon FSx ONTAP 설치, NetApp Trident를 사용하여 스토리지 백엔드와 통합, ROSA 클러스터에 PostgreSQL 애플리케이션 설치, ACS를 사용하여 애플리케이션 스냅샷 생성 및 애플리케이션 복원에 대한 단계별 세부 정보입니다.
-
ACS를 사용하는 FSx ONTAP가 포함된 ROSA 클러스터의 MySQL 애플리케이션에 대한 스냅샷을 생성하고 복원하는 방법에 대한 단계별 세부 정보를 보여주는 블로그
백업에서 백업/복원
다음 비디오에서는 한 지역에서 실행되고 다른 지역으로 복원되는 Rosa 응용 프로그램의 백업을 보여 줍니다.
스냅샷/스냅샷에서 복구
다음 비디오는 Rosa 응용 프로그램의 스냅샷 촬영 및 이후 스냅샷에서 복원하는 방법을 보여 줍니다.
스냅샷을 생성하고 이 스냅샷에서 복구하는 단계별 세부 정보입니다
사전 요구 사항 설정
-
IAM 사용자 "적절한 사용 권한" Rosa 클러스터를 생성하고 액세스합니다
-
VPC와 서브넷, 적절한 게이트웨이 및 라우트
-
"ROSA 클러스터가 설치되었습니다" VPC로 이동합니다
-
"Amazon FSx ONTAP을 소개합니다" 동일한 VPC에서 생성됨
-
에서 Rosa 클러스터에 액세스합니다 "OpenShift 하이브리드 클라우드 콘솔"
다음 단계
-
admin 사용자를 생성하고 클러스터에 로그인합니다.
-
클러스터에 대한 kubeconfig 파일을 생성합니다.
-
클러스터에 Trident를 설치합니다.
-
Trident CSI Provisioner를 사용하여 백엔드, 스토리지 클래스 및 스냅샷 클래스 구성을 생성합니다.
-
클러스터에 PostgreSQL 애플리케이션을 구축합니다.
-
데이터베이스를 만들고 레코드를 추가합니다.
-
클러스터를 ACS에 추가합니다.
-
ACS에서 애플리케이션을 정의합니다.
-
ACS를 사용하여 스냅샷을 생성합니다.
-
PostgreSQL 애플리케이션에서 데이터베이스를 삭제합니다.
-
ACS를 사용하여 스냅샷에서 복원합니다.
-
앱이 스냅숏에서 복원되었는지 확인합니다.
1. 관리자 사용자를 생성하고 클러스터에 로그인합니다
다음 명령을 사용하여 admin 사용자를 생성하여 Rosa 클러스터에 액세스합니다(설치 시 admin 사용자를 생성하지 않은 경우에만 생성 필요).
rosa create admin --cluster=<cluster-name>
명령은 다음과 같은 출력을 제공합니다. 를 사용하여 클러스터에 로그인합니다 oc login
출력에 제공된 명령입니다.
토큰을 사용하여 클러스터에 로그인할 수도 있습니다. 클러스터 생성 시 이미 관리자 사용자를 생성한 경우 Red Hat OpenShift Hybrid Cloud 콘솔에서 관리자 자격 증명을 사용하여 클러스터에 로그인할 수 있습니다. 그런 다음, 로그인한 사용자의 이름을 표시하는 오른쪽 상단 모서리를 클릭하여 를 얻을 수 있습니다 oc login 명령줄에 대한 명령(토큰 로그인)입니다.
|
2. 클러스터에 대한 kubeconfig 파일을 생성합니다
절차를 따르십시오 "여기" Rosa 클러스터에 대한 kubeconfig 파일을 생성합니다. 이 kubeconfig 파일은 ACS에 클러스터를 추가할 때 나중에 사용됩니다.
3. 클러스터에 Trident를 설치합니다
ROSA 클러스터에 Trident(최신 버전)를 설치합니다. 이렇게 하려면 주어진 절차 중 하나를 따를 수 "여기"있습니다. 클러스터 콘솔에서 Helm을 사용하여 Trident를 설치하려면 먼저 Trident라는 프로젝트를 생성합니다.
그런 다음 개발자 보기에서 Helm 차트 리포지토리를 만듭니다. URL 필드에 을 사용합니다 'https://netapp.github.io/trident-helm-chart'
. 그런 다음 Trident 운영자에 대한 Helm 릴리즈를 작성합니다.
콘솔의 관리자 보기로 돌아가 트라이덴트 프로젝트에서 Pod를 선택하여 모든 트라이덴트 포드가 실행 중인지 확인합니다.
4. Trident CSI Provisioner 를 사용하여 백엔드, 스토리지 클래스 및 스냅샷 클래스 구성을 생성합니다
아래 표시된 YAML 파일을 사용하여 트리덴트 백엔드 객체, 스토리지 클래스 객체 및 Volumesnapshot 객체를 생성합니다. 생성한 Amazon FSx ONTAP 파일 시스템에 대한 자격 증명, 백엔드의 구성 YAML에서 파일 시스템의 관리 LIF 및 가상 서버 이름을 제공해야 합니다. 이러한 세부 정보를 보려면 Amazon FSx용 AWS 콘솔로 이동하여 파일 시스템을 선택하고 관리 탭으로 이동합니다. 또한 UPDATE(업데이트)를 클릭하여 사용자의 암호를 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
아래 표시된 명령을 실행하여 백엔드, 스토리지 클래스 및 trident-snapshotclass 객체가 생성되었는지 확인합니다.
현재 중요한 수정 사항은 나중에 구축하는 PostgreSQL 앱에서 기본 스토리지 클래스를 사용할 수 있도록 ONTAP-NAS를 GP3이 아닌 기본 스토리지 클래스로 설정하는 것입니다. 클러스터의 OpenShift 콘솔의 Storage에서 StorageClasses를 선택합니다. 현재 기본 클래스의 주석을 false로 편집하고 ONTAP-NAS 스토리지 클래스에 대해 주석 storageclass.cubernetes/is-default-class 세트를 true로 추가하십시오.
5. 클러스터에 PostgreSQL 애플리케이션을 구축합니다
다음과 같이 명령줄에서 응용 프로그램을 배포할 수 있습니다.
helm install postgresql bitnami/postgresql -n postgresql --create-namespace
응용 프로그램 포드가 실행되고 있지 않으면 보안 컨텍스트 제약 때문에 발생한 오류가 있을 수 있습니다. runAsUser fsGroup statefuleset.apps/postgresql oc get project 아래 그림과 같이 명령 출력에 있는 uid를 사용하여 개체의 및 필드를 편집하여 오류를 수정합니다.
|
PostgreSQL 앱은 Amazon FSx ONTAP 스토리지에서 지원하는 영구 볼륨을 실행하고 사용해야 합니다.
6. 데이터베이스를 만들고 레코드를 추가합니다
7. ACS에 클러스터를 추가합니다
ACS에 로그인합니다. 클러스터를 선택하고 Add를 클릭합니다. 기타 를 선택하고 kubeconfig 파일을 업로드하거나 붙여 넣습니다.
Next * 를 클릭하고 ACS의 기본 스토리지 클래스로 ONTAP-NAS 를 선택합니다. Next * 를 클릭하고 세부 정보를 검토한 후 * Add * the cluster를 클릭합니다.
8. ACS에서 응용 프로그램을 정의합니다
ACS에서 PostgreSQL 애플리케이션을 정의합니다. 시작 페이지에서 * 응용 프로그램 *, * 정의 * 를 선택하고 적절한 세부 정보를 입력합니다. 다음 * 을 두 번 클릭하고 세부 정보를 검토한 후 * 정의 * 를 클릭합니다. 응용 프로그램이 ACS에 추가됩니다.
9. ACS를 사용하여 스냅샷을 생성합니다
ACS에서 스냅샷을 생성하는 방법은 여러 가지가 있습니다. 응용 프로그램을 선택하고 페이지에서 응용 프로그램의 세부 정보를 보여 주는 스냅샷을 만들 수 있습니다. 스냅샷 생성 을 클릭하여 필요 시 스냅샷을 생성하거나 보호 정책을 구성할 수 있습니다.
스냅샷 생성 * 을 클릭하고 이름을 입력하고 세부 정보를 검토한 후 * 스냅샷 * 을 클릭하여 주문형 스냅샷을 생성합니다. 작업이 완료되면 스냅샷 상태가 정상으로 변경됩니다.
10. PostgreSQL 응용 프로그램에서 데이터베이스를 삭제합니다
PostgreSQL에 다시 로그인하고 사용 가능한 데이터베이스를 나열한 다음 이전에 만든 데이터베이스를 삭제하고 다시 나열하여 데이터베이스가 삭제되었는지 확인합니다.
11. ACS를 사용하여 스냅샷에서 복원합니다
스냅샷에서 애플리케이션을 복원하려면 ACS UI 시작 페이지로 이동하여 애플리케이션을 선택하고 Restore(복원) 를 선택합니다. 복원할 스냅샷 또는 백업을 선택해야 합니다. (일반적으로 구성한 정책에 따라 여러 개의 를 생성할 수 있습니다.) 다음 두 화면에서 적절한 항목을 선택한 다음 * Restore * 를 클릭합니다. 스냅샷에서 복구된 후 애플리케이션 상태가 복원 중 에서 사용 가능 으로 이동합니다.
12. 앱이 스냅샷에서 복원되었는지 확인합니다
PostgreSQL 클라이언트에 로그인하면 이전에 사용했던 테이블과 레코드가 테이블에 표시됩니다. 이상입니다. 버튼을 클릭하기만 하면 프로그램이 이전 상태로 복원됩니다. Astra Control을 사용하는 고객은 이렇게 손쉽게 이용할 수 있습니다.