14.2. 가상 머신 백업 및 복원
Red Hat은 OADP 1.3.x 이상에서 OpenShift Virtualization 4.14 이상을 지원합니다.
1.3.0 미만의 OADP 버전은 OpenShift Virtualization의 백업 및 복원에 지원되지 않습니다.
OpenShift API for Data Protection 을 사용하여 가상 머신을 백업하고 복원합니다.
OADP Operator를 설치하고 백업 위치를 구성하여 OpenShift Virtualization을 사용하여 OADP(OpenShift API for Data Protection)를 설치할 수 있습니다. 그런 다음 데이터 보호 애플리케이션을 설치할 수 있습니다.
OpenShift Virtualization을 사용한 OpenShift API for Data Protection에서는 다음과 같은 백업 및 복원 스토리지 옵션을 지원합니다.
- CSI(Container Storage Interface) 백업
- DataMover를 사용한 CSI(Container Storage Interface) 백업
다음 스토리지 옵션은 제외됩니다.
- 파일 시스템 백업 및 복원
- 볼륨 스냅샷 백업 및 복원
자세한 내용은 파일 시스템 백업: Kopia 또는 Restic을 사용하여 애플리케이션 백업을 참조하십시오.
제한된 네트워크 환경에 OADP Operator를 설치하려면 먼저 기본 OperatorHub 소스를 비활성화하고 Operator 카탈로그를 미러링해야 합니다.
자세한 내용은 제한된 네트워크에서 Operator Lifecycle Manager 사용을 참조하십시오.
14.2.1. OpenShift Virtualization을 사용하여 OADP 설치 및 구성
클러스터 관리자는 OADP Operator를 설치하여 OADP를 설치합니다.
최신 버전의 OADP Operator는 Velero 1.14 를 설치합니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
- 스토리지 공급자의 지침에 따라 OADP Operator를 설치합니다.
-
kubevirt
및openshift
OADP 플러그인으로 DPA(Data Protection Application)를 설치합니다. Backup
CR(사용자 정의 리소스)을 생성하여 가상 머신을 백업합니다.주의Red Hat 지원은 다음 옵션으로 제한됩니다.
- CSI 백업
- DataMover를 사용한 CSI 백업.
Restore CR을 생성하여 Backup
CR을 복원합니다
.
14.2.2. 데이터 보호 애플리케이션 1.3 설치
DataProtectionApplication API의 인스턴스를 생성하여 DPA( Data Protection Application
)를 설치합니다.
사전 요구 사항
- OADP Operator를 설치해야 합니다.
- 오브젝트 스토리지를 백업 위치로 구성해야 합니다.
- 스냅샷을 사용하여 PV를 백업하는 경우 클라우드 공급자는 기본 스냅샷 API 또는 CSI(Container Storage Interface) 스냅샷을 지원해야 합니다.
백업 및 스냅샷 위치에서 동일한 인증 정보를 사용하는 경우 기본 이름
cloud-credentials
로Secret
을 생성해야 합니다.참고설치 중에 백업 또는 스냅샷 위치를 지정하지 않으려면 빈
credentials-velero
파일을 사용하여 기본Secret
을 생성할 수 있습니다. 기본Secret
이 없으면 설치에 실패합니다.
프로세스
-
Operators
설치된 Operator 를 클릭하고 OADP Operator를 선택합니다. - 제공된 API 아래에서 DataProtectionApplication 상자에서 인스턴스 생성 을 클릭합니다.
YAML 보기를 클릭하고
DataProtectionApplication
매니페스트의 매개변수를 업데이트합니다.apiVersion: oadp.openshift.io/v1alpha1 kind: DataProtectionApplication metadata: name: <dpa_sample> namespace: openshift-adp 1 spec: configuration: velero: defaultPlugins: - kubevirt 2 - gcp 3 - csi 4 - openshift 5 resourceTimeout: 10m 6 nodeAgent: 7 enable: true 8 uploaderType: kopia 9 podConfig: nodeSelector: <node_selector> 10 backupLocations: - velero: provider: gcp 11 default: true credential: key: cloud name: <default_secret> 12 objectStorage: bucket: <bucket_name> 13 prefix: <prefix> 14
- 1
- OADP의 기본 네임스페이스는
openshift-adp
입니다. 네임스페이스는 변수이며 구성 가능합니다. - 2
kubevirt
플러그인은 OpenShift Virtualization에 필수입니다.- 3
- 백업 공급자의 플러그인을 지정합니다(예:
gcp
). - 4
- CSI 스냅샷을 사용하여 PV를 백업하려면
csi
플러그인이 필요합니다.csi
플러그인은 Velero CSI 베타 스냅샷 API 를 사용합니다. 스냅샷 위치를 구성할 필요가 없습니다. - 5
openshift
플러그인은 필수입니다.- 6
- Velero CRD 가용성, volumeSnapshot 삭제, 백업 리포지토리 가용성과 같이 시간 초과가 발생하기 전에 여러 Velero 리소스를 대기하는 시간(분)을 지정합니다. 기본값은 10m입니다.
- 7
- 관리 요청을 서버로 라우팅하는 관리 에이전트입니다.
- 8
nodeAgent
를 활성화하고 파일 시스템 백업을 수행하려면 이 값을true
로 설정합니다.- 9
- Built-in DataMover를 사용하려면 업로드기로
kopia
를 입력합니다.nodeAgent
는 데몬 세트를 배포합니다. 즉,nodeAgent
Pod가 각 작동 중인 노드에서 실행됩니다.Backup
CR에spec.defaultVolumesToFsBackup: true
를 추가하여 파일 시스템 백업을 구성할 수 있습니다. - 10
- Kopia를 사용할 수 있는 노드를 지정합니다. 기본적으로 Kopia는 모든 노드에서 실행됩니다.
- 11
- 백업 공급자를 지정합니다.
- 12
- 백업 공급자에 기본 플러그인을 사용하는 경우
Secret
의 올바른 기본 이름(예:cloud-credentials-gcp
)을 지정합니다. 사용자 지정 이름을 지정하면 사용자 지정 이름이 백업 위치에 사용됩니다.Secret
이름을 지정하지 않으면 기본 이름이 사용됩니다. - 13
- 버킷을 백업 스토리지 위치로 지정합니다. 버킷이 Velero 백업의 전용 버킷이 아닌 경우 접두사를 지정해야 합니다.
- 14
- 버킷이 여러 용도로 사용되는 경우 Velero 백업의 접두사를 지정합니다(예:
velero
).
- 생성을 클릭합니다.
검증
다음 명령을 실행하여 OADP(OpenShift API for Data Protection) 리소스를 확인하여 설치를 확인합니다.
$ oc get all -n openshift-adp
출력 예
NAME READY STATUS RESTARTS AGE pod/oadp-operator-controller-manager-67d9494d47-6l8z8 2/2 Running 0 2m8s pod/node-agent-9cq4q 1/1 Running 0 94s pod/node-agent-m4lts 1/1 Running 0 94s pod/node-agent-pv4kr 1/1 Running 0 95s pod/velero-588db7f655-n842v 1/1 Running 0 95s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/oadp-operator-controller-manager-metrics-service ClusterIP 172.30.70.140 <none> 8443/TCP 2m8s service/openshift-adp-velero-metrics-svc ClusterIP 172.30.10.0 <none> 8085/TCP 8h NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE daemonset.apps/node-agent 3 3 3 3 3 <none> 96s NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/oadp-operator-controller-manager 1/1 1 1 2m9s deployment.apps/velero 1/1 1 1 96s NAME DESIRED CURRENT READY AGE replicaset.apps/oadp-operator-controller-manager-67d9494d47 1 1 1 2m9s replicaset.apps/velero-588db7f655 1 1 1 96s
다음 명령을 실행하여 DPA(
DataProtectionApplication
)가 조정되었는지 확인합니다.$ oc get dpa dpa-sample -n openshift-adp -o jsonpath='{.status}'
출력 예
{"conditions":[{"lastTransitionTime":"2023-10-27T01:23:57Z","message":"Reconcile complete","reason":"Complete","status":"True","type":"Reconciled"}]}
-
유형이
Reconciled
으로 설정되어 있는지 확인합니다. 백업 스토리지 위치를 확인하고 다음 명령을 실행하여
PHASE
가 사용
가능한지 확인합니다.$ oc get backupStorageLocation -n openshift-adp
출력 예
NAME PHASE LAST VALIDATED AGE DEFAULT dpa-sample-1 Available 1s 3d16h true