Tanzu Kubernetes 클러스터에 vSphere용 Velero 플러그인를 설치하면 vSphere용 Velero 플러그인를 사용하여 해당 클러스터에서 실행되는 워크로드를 백업하고 복원할 수 있습니다.

개요

vSphere용 Velero 플러그인Tanzu Kubernetes Grid 서비스에서 프로비저닝된 클러스터에 대한 Tanzu Kubernetes 클러스터 워크로드를 백업 및 복원하기 위한 솔루션을 제공합니다. 영구 워크로드의 경우 vSphere용 Velero 플러그인를 사용하여 영구 볼륨의 스냅샷을 생성할 수 있습니다.
참고: 백업 및 복원하려는 Tanzu Kubernetes 클러스터 워크로드에 대해 이식성이 필요한 경우에는 vSphere용 Velero 플러그인를 사용하지 마십시오. Kubernetes 클러스터 간 이식성을 위해서는 독립형 Velero를 Restic과 함께 사용하십시오. Tanzu Kubernetes 클러스터에 독립형 Velero 및 Restic 설치 및 구성의 내용을 참조하십시오.

사전 요구 사항: 감독자 클러스터vSphere용 Velero 플러그인 설치

Tanzu Kubernetes 클러스터에 vSphere용 Velero 플러그인를 설치하려면 감독자 클러스터vSphere용 Velero 플러그인가 설치되어 있어야 합니다. 또한 감독자 클러스터가 NSX-T 네트워킹으로 구성되어야 합니다.

Tanzu Kubernetes 클러스터에 vSphere용 Velero 플러그인를 설치하기 전에 먼저 감독자 클러스터vSphere용 Velero 플러그인를 설치해야 합니다. 감독자 클러스터에 vSphere용 Velero 플러그인 설치 및 구성의 내용을 참조하십시오.

Linux Workstation에 Velero CLI 설치

Velero CLI는 Velero와 상호 작용하기 위한 표준 도구입니다. Velero CLI는 vSphere용 Velero 플러그인 CLI(velero-vsphere)보다 더 많은 기능을 제공하며 Tanzu Kubernetes 클러스터 워크로드를 백업하고 복원하는 데 필요합니다.

Linux 워크스테이션에 Velero CLI를 설치합니다. 이상적으로는 kubectl, kubectl-vsphere, velero-vsphere를 포함한 vSphere with Tanzu 환경에 대해 연결된 CLI를 실행하는 Linux와 동일한 점프 호스트입니다.

Velero CLI를 설치하려면 다음 단계를 완료합니다.
  1. VMware 제품 다운로드 페이지에서 지원되는 버전의 Velero CLI를 다운로드합니다. 지원되는 Velero 버전에 대한 자세한 내용은 릴리스 정보를 참조하십시오.
  2. 명령줄을 열고 디렉토리를 Velero CLI 다운로드로 변경합니다.
    gunzip velero-linux-v1.x.x_vmware.1.gz
  3. Velero 바이너리를 확인합니다.
    ls -l
    
    -rw-r--r-- 1 root root 7142128 Aug 14 14:14 velero-linux-v1.x.x_vmware.1
    
  4. Velero CLI에 실행 권한을 부여합니다.
    chmod +x velero-linux-v1.x.x_vmware.1
  5. Velero CLI를 시스템 경로로 이동하여 전체적으로 사용할 수 있도록 합니다.
    cp velero-linux-v1.x.x_vmware.1 /usr/local/bin/velero
  6. Velero CLI 설치를 확인합니다.
    velero version
    
    Client:
        Version: v1.x.x

S3 호환 버킷 세부 정보 가져오기

편의를 위해 이 단계에서는 감독자 클러스터vSphere용 Velero 플러그인를 설치할 때 구성한 것과 동일한 S3 호환 개체 저장소를 사용 중이라고 가정합니다. 운영 환경에서는 별도의 개체 저장소를 생성하는 것이 좋습니다.

vSphere용 Velero 플러그인를 설치하려면 S3 호환 개체 저장소에 대한 다음 정보를 제공해야 합니다.
데이터 항목 예제 값
s3Url http://my-s3-store.example.com
aws_access_key_id ACCESS-KEY-ID-STRING
aws_secret_access_key SECRET-ACCESS-KEY-STRING
다음 정보를 사용하여 암호 파일 이름 s3-credentials를 생성합니다. 이 파일은 vSphere용 Velero 플러그인를 설치할 때 참조합니다.
aws_access_key_id = ACCESS-KEY-ID-STRING
aws_secret_access_key = SECRET-ACCESS-KEY-STRING

Tanzu Kubernetes 클러스터에 vSphere용 Velero 플러그인 설치

Velero CLI를 사용하여 백업 및 복원하려는 대상 Tanzu Kubernetes 클러스터에 vSphere용 Velero 플러그인를 설치하려고 합니다.

Velero CLI 컨텍스트는 kubectl 컨텍스트를 자동으로 따릅니다. Velero CLI 명령을 실행하여 대상 클러스터에 Velero 및 vSphere용 Velero 플러그인를 설치하기 전에 kubectl 컨텍스트를 대상 클러스터로 설정해야 합니다.
  1. kubectl용 vSphere 플러그인을 사용하여 감독자 클러스터로 인증합니다. vCenter Single Sign-On 사용자로 감독자 클러스터에 연결의 내용을 참조하십시오.
  2. kubectl 컨텍스트를 대상 Tanzu Kubernetes 클러스터로 전환합니다.
    kubectl config use-context TARGET-TANZU-KUBERNETES-CLUSTER
  3. 다음 Velero CLI 명령을 실행하여 대상 클러스터에 Velero를 설치합니다.

    BUCKET-NAME, REGION(두 개의 인스턴스) 및 s3Url 필드에 대한 자리 표시자 값을 적절한 값으로 바꿉니다. 앞의 지침에서 벗어난 값(암호 파일의 이름 또는 위치, 수동으로 생성된 velero 네임스페이스의 이름 등)이 있으면 해당 값도 조정합니다.

    ./velero install --provider aws \
    --bucket BUCKET-NAME \
    --secret-file ./s3-credentials \
    --features=EnableVSphereItemActionPlugin \
    --plugins velero/velero-plugin-for-aws:v1.1.0 \
    --snapshot-location-config region=REGION \
    --backup-location-config region=REGION,s3ForcePathStyle="true",s3Url=http://my-s3-store.example.com
  4. 대상 클러스터에 vSphere용 Velero 플러그인를 설치합니다. 설치된 Velero는 Kubernetes API 서버와 통신하여 플러그인을 설치합니다.
    velero plugin add vsphereveleroplugin/velero-plugin-for-vsphere:1.1.0

클러스터에서 vSphere용 Velero 플러그인 제거

vSphere용 Velero 플러그인를 제거하려면 다음 단계를 완료합니다.
  1. kubectl 컨텍스트를 대상 Tanzu Kubernetes 클러스터로 전환합니다.
    kubectl config use-context TARGET-TANZU-KUBERNETES-CLUSTER
  2. 플러그인을 제거하려면 다음 명령을 실행하여 Velero 배포에서 velero-plugin-for-vsphere의 InitContainer를 제거합니다.
    velero plugin remove vsphereveleroplugin/velero-plugin-for-vsphere:1.1.0
  3. 제거를 완료하려면 백업 드라이버 배포 및 관련 CRD를 삭제합니다.
    kubectl -n velero delete deployment.apps/backup-driver
    kubectl delete crds \
    backuprepositories.backupdriver.cnsdp.vmware.com \
    backuprepositoryclaims.backupdriver.cnsdp.vmware.com \
    clonefromsnapshots.backupdriver.cnsdp.vmware.com \
    deletesnapshots.backupdriver.cnsdp.vmware.com \
    snapshots.backupdriver.cnsdp.vmware.com
    kubectl delete crds uploads.datamover.cnsdp.vmware.com downloads.datamover.cnsdp.vmware.com