9.5. OpenShift Virtualization에서 호스팅된 클러스터 백업 및 복원
OpenShift Virtualization에서 호스팅된 클러스터를 백업하고 복원하여 오류를 해결할 수 있습니다.
9.5.1. OpenShift Virtualization에서 호스팅된 클러스터 백업 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization에서 호스팅된 클러스터를 백업하면 호스팅된 클러스터는 계속 실행될 수 있습니다. 백업에는 호스팅된 제어 평면 구성 요소와 호스팅된 클러스터의 etcd가 포함되어 있습니다.
호스팅된 클러스터가 외부 인프라에서 컴퓨팅 노드를 실행하지 않는 경우 KubeVirt CSI에서 프로비저닝한 영구 볼륨 클레임(PVC)에 저장된 호스팅된 클러스터 워크로드 데이터도 백업됩니다. 백업에는 컴퓨팅 노드로 사용되는 KubeVirt 가상 머신(VM)이 포함되어 있지 않습니다. 해당 VM은 복원 프로세스가 완료된 후 자동으로 다시 생성됩니다.
프로세스
다음 예와 유사한 YAML 파일을 만들어 Velero 백업 리소스를 만듭니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이 필드는 백업할 객체에서 네임스페이스를 선택합니다. 호스팅된 클러스터와 호스팅된 제어 평면 모두의 네임스페이스를 포함합니다. 이 예에서
clusters
는 호스팅된 클러스터의 네임스페이스이고clusters-hosted는
호스팅된 제어 평면의 네임스페이스입니다. 기본적으로HostedControlPlane
네임스페이스는clusters-<hosted_cluster_name>
입니다. - 2
- 호스팅된 클러스터 노드로 사용되는 VM의 부트 이미지는 대규모 PVC에 저장됩니다. 백업 시간과 저장 용량을 줄이려면 이 레이블 선택기를 추가하여 백업에서 해당 PVC를 필터링할 수 있습니다.
- 3
- 이 필드와
datamover
필드를 사용하면 CSIVolumeSnapshots를
원격 클라우드 스토리지에 자동으로 업로드할 수 있습니다. - 4
- 이 필드와
snapshotMoveData
필드를 사용하면 CSIVolumeSnapshots를
원격 클라우드 스토리지에 자동으로 업로드할 수 있습니다. - 5
- 이 필드는 기본적으로 모든 볼륨에 대해 Pod 볼륨 파일 시스템 백업을 사용할지 여부를 나타냅니다. 원하는 PVC를 백업하려면 이 값을
false
로 설정하세요.
다음 명령을 입력하여 YAML 파일에 변경 사항을 적용합니다.
oc apply -f <backup_file_name>.yaml
$ oc apply -f <backup_file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <백업_파일_이름>을
파일 이름으로 바꾸세요.백업 개체 상태와 Velero 로그에서 백업 프로세스를 모니터링합니다.
백업 개체 상태를 모니터링하려면 다음 명령을 입력하세요.
watch "oc get backups.velero.io -n openshift-adp <backup_file_name> -o jsonpath='{.status}' | jq"
$ watch "oc get backups.velero.io -n openshift-adp <backup_file_name> -o jsonpath='{.status}' | jq"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Velero 로그를 모니터링하려면 다음 명령을 입력하세요.
oc logs -n openshift-adp -ldeploy=velero -f
$ oc logs -n openshift-adp -ldeploy=velero -f
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
-
status.phase
필드가Completed
이면 백업 프로세스가 완료된 것으로 간주됩니다.
9.5.2. OpenShift Virtualization에서 호스팅된 클러스터 복원 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization에서 호스팅된 클러스터를 백업한 후 백업을 복원할 수 있습니다.
복원 프로세스는 백업을 생성한 동일한 관리 클러스터에서만 완료할 수 있습니다.
프로세스
-
HostedControlPlane
네임스페이스에서 실행 중인 포드나 영구 볼륨 클레임(PVC)이 없는지 확인합니다. 관리 클러스터에서 다음 객체를 삭제합니다.
-
HostedCluster
-
NodePool
- PVC
-
다음 예와 유사한 복원 매니페스트 YAML 파일을 만듭니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 YAML 파일에 변경 사항을 적용합니다.
oc apply -f <restore_resource_file_name>.yaml
$ oc apply -f <restore_resource_file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <restore_resource_file_name>을
해당 파일 이름으로 바꾸세요.복원 상태 필드와 Velero 로그를 확인하여 복원 프로세스를 모니터링합니다.
복원 상태 필드를 확인하려면 다음 명령을 입력하세요.
watch "oc get restores.velero.io -n openshift-adp <backup_file_name> -o jsonpath='{.status}' | jq"
$ watch "oc get restores.velero.io -n openshift-adp <backup_file_name> -o jsonpath='{.status}' | jq"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Velero 로그를 확인하려면 다음 명령을 입력하세요.
oc logs -n openshift-adp -ldeploy=velero -f
$ oc logs -n openshift-adp -ldeploy=velero -f
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
-
status.phase
필드가Completed
이면 복원 프로세스가 완료된 것으로 간주됩니다.
다음 단계
- 얼마 후, KubeVirt VM이 생성되고 호스팅된 클러스터에 컴퓨팅 노드로 가입합니다. 호스팅된 클러스터 워크로드가 예상대로 다시 실행되는지 확인하세요.