Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

Trident Protect를 사용하여 애플리케이션을 보호합니다

기여자

Trident Protect에서 관리하는 모든 앱은 자동화된 보호 정책을 사용하거나 임시적으로 스냅샷과 백업을 생성하여 보호할 수 있습니다.

참고 데이터 보호 작업 중에 파일 시스템을 고정 및 고정 해제하도록 Trident Protect를 구성할 수 있습니다. "Trident Protect를 사용하여 파일 시스템 중지를 구성하는 방법에 대해 자세히 알아보십시오"..

필요 시 스냅샷을 생성합니다

언제든지 주문형 스냅샷을 생성할 수 있습니다.

CR을 사용하여 스냅샷을 생성합니다
단계
  1. CR(사용자 정의 리소스) 파일을 만들고 이름을 `trident-protect-snapshot-cr.yaml`지정합니다.

  2. 생성한 파일에서 다음 속성을 구성합니다.

    • metadata.name: (required) 이 사용자 정의 리소스의 이름입니다. 사용자 환경에 맞는 고유하고 합리적인 이름을 선택하십시오.

    • * spec.applicationRef *: 스냅샷을 생성할 애플리케이션의 Kubernetes 이름입니다.

    • * spec.appVaultRef *: (required) 스냅샷 내용(메타데이터)을 저장할 AppVault의 이름입니다.

    • spec.reclaimPolicy: (Optional) 스냅샷 CR이 삭제될 때 스냅샷의 AppArchive에 발생하는 동작을 정의합니다. 즉, 로 설정된 경우에도 Retain 스냅샷이 삭제됩니다. 유효한 옵션:

      • Retain (기본값)

      • Delete

        apiVersion: protect.trident.netapp.io/v1
        kind: Snapshot
        metadata:
          namespace: my-app-namespace
          name: my-cr-name
        spec:
          applicationRef: my-application
          appVaultRef: appvault-name
          reclaimPolicy: Delete
  3. 파일을 올바른 값으로 채운 후 trident-protect-snapshot-cr.yaml CR:

    kubectl apply -f trident-protect-snapshot-cr.yaml
CLI를 사용하여 스냅샷을 생성합니다
단계
  1. 대괄호 안의 값을 사용자 환경의 정보로 대체하여 스냅샷을 생성합니다. 예를 들면 다음과 같습니다.

    tridentctl protect create snapshot <my_snapshot_name> --appvault <my_appvault_name> --app <name_of_app_to_snapshot>

필요 시 백업을 생성합니다

언제든지 앱을 백업할 수 있습니다.

CR을 사용하여 백업을 생성합니다
단계
  1. CR(사용자 정의 리소스) 파일을 만들고 이름을 `trident-protect-backup-cr.yaml`지정합니다.

  2. 생성한 파일에서 다음 속성을 구성합니다.

    • metadata.name: (required) 이 사용자 정의 리소스의 이름입니다. 사용자 환경에 맞는 고유하고 합리적인 이름을 선택하십시오.

    • * spec.applicationRef *:(required) 백업할 응용 프로그램의 Kubernetes 이름입니다.

    • * spec.appVaultRef *: (required) 백업 내용을 저장할 AppVault의 이름입니다.

    • * spec.datamover *: (Optional) 백업 작업에 사용할 백업 도구를 나타내는 문자열입니다. 가능한 값(대소문자 구분):

      • Restic

      • Kopia (기본값)

    • spec.reclaimPolicy: (Optional) 클레임에서 해제될 때 백업에 어떤 일이 발생하는지를 정의합니다. 가능한 값:

      • Delete

      • Retain (기본값)

    • * Spec.snapshotRef *: (Optional): 백업 소스로 사용할 스냅샷의 이름입니다. 제공하지 않으면 임시 스냅샷이 생성되고 백업됩니다.

      apiVersion: protect.trident.netapp.io/v1
      kind: Backup
      metadata:
        namespace: my-app-namespace
        name: my-cr-name
      spec:
        applicationRef: my-application
        appVaultRef: appvault-name
        dataMover: Kopia
  3. 파일을 올바른 값으로 채운 후 trident-protect-backup-cr.yaml CR:

    kubectl apply -f trident-protect-backup-cr.yaml
CLI를 사용하여 백업을 생성합니다
단계
  1. 대괄호 안의 값을 사용자 환경의 정보로 대체하여 백업을 만듭니다. 예를 들면 다음과 같습니다.

    tridentctl protect create backup <my_backup_name> --appvault <my-vault-name> --app <name_of_app_to_back_up>

데이터 보호 스케줄을 생성합니다

보호 정책은 정의된 일정에 따라 스냅샷, 백업 또는 둘 다를 생성하여 앱을 보호합니다. 시간별, 일별, 주별 및 월별 스냅샷과 백업을 생성하도록 선택할 수 있으며, 보존할 복제본 수를 지정할 수 있습니다.

CR을 사용하여 일정을 생성합니다
단계
  1. CR(사용자 정의 리소스) 파일을 만들고 이름을 `trident-protect-schedule-cr.yaml`지정합니다.

  2. 생성한 파일에서 다음 속성을 구성합니다.

    • metadata.name: (required) 이 사용자 정의 리소스의 이름입니다. 사용자 환경에 맞는 고유하고 합리적인 이름을 선택하십시오.

    • * spec.datamover *: (Optional) 백업 작업에 사용할 백업 도구를 나타내는 문자열입니다. 가능한 값(대소문자 구분):

      • Restic

      • Kopia (기본값)

    • * spec.applicationRef *: 백업할 응용 프로그램의 Kubernetes 이름입니다.

    • * spec.appVaultRef *: (required) 백업 내용을 저장할 AppVault의 이름입니다.

    • * spec.backupRetention *: 보존할 백업 수입니다. 0은 백업을 생성하지 않아야 함을 나타냅니다.

    • * spec.snapshotRetention *: 보존할 스냅샷 수입니다. 0은 스냅샷을 생성하지 않아야 함을 나타냅니다.

    • spec.granularity: 일정이 실행되는 빈도. 가능한 값과 필수 관련 필드:

      • hourly (지정 필요 spec.minute)

      • daily (및 을 지정해야 함 spec.minute spec.hour)

      • weekly (, 및 을 spec.dayOfWeek 지정해야 함 spec.minute, spec.hour)

      • monthly (, 및 을 spec.dayOfMonth 지정해야 함 spec.minute, spec.hour)

    • * spec.dayOfMonth *: (Optional) 스케줄을 실행할 요일(1-31). 세분화가 로 설정된 경우 이 필드는 `monthly`필수입니다.

    • spec.dayOfWeek: (Optional) 일정이 실행되는 요일(0-7)입니다. 0 또는 7의 값은 일요일을 나타냅니다. 세분화가 로 설정된 경우 이 필드는 `weekly`필수입니다.

    • * spec.hour *: (Optional) 스케줄을 실행할 시간(0-23)입니다. 세분화가, 또는 로 설정된 경우 이 필드는 daily weekly `monthly`필수입니다.

    • * spec.minute *: (Optional) 스케줄을 실행할 분(0-59)입니다. 세분화가 , , 또는 로 설정된 경우 이 필드가 hourly daily weekly `monthly`필요합니다.

      apiVersion: protect.trident.netapp.io/v1
      kind: Schedule
      metadata:
        namespace: my-app-namespace
        name: my-cr-name
      spec:
        dataMover: Kopia
        applicationRef: my-application
        appVaultRef: appvault-name
        backupRetention: "15"
        snapshotRetention: "15"
        granularity: <monthly>
        dayOfMonth: "1"
        dayOfWeek: "0"
        hour: "0"
        minute: "0"
  3. 파일을 올바른 값으로 채운 후 trident-protect-schedule-cr.yaml CR:

    kubectl apply -f trident-protect-schedule-cr.yaml
CLI를 사용하여 일정을 생성합니다
단계
  1. 괄호 안의 값을 사용자 환경의 정보로 대체하여 보호 스케줄을 생성합니다. 예를 들면 다음과 같습니다.

    참고 을 사용하여 tridentctl protect create schedule --help 이 명령에 대한 자세한 도움말 정보를 볼 수 있습니다.
    tridentctl protect create schedule <my_schedule_name> --appvault <my_appvault_name> --app <name_of_app_to_snapshot> --backup-retention <how_many_backups_to_retain> --data-mover <kopia_or_restic> --day-of-month <day_of_month_to_run_schedule> --day-of-week <day_of_month_to_run_schedule> --granularity <frequency_to_run> --hour <hour_of_day_to_run> --minute <minute_of_hour_to_run> --recurrence-rule <recurrence> --snapshot-retention <how_many_snapshots_to_retain>

스냅샷을 삭제합니다

더 이상 필요하지 않은 예약된 스냅샷 또는 주문형 스냅샷을 삭제합니다.

단계
  1. 스냅샷과 연결된 스냅샷 CR을 제거합니다.

    kubectl delete snapshot <snapshot_name> -n my-app-namespace

백업을 삭제합니다

더 이상 필요하지 않은 예약된 백업 또는 필요 시 백업을 삭제합니다.

단계
  1. 백업과 연결된 백업 CR을 제거합니다.

    kubectl delete backup <backup_name> -n my-app-namespace

백업 작업의 상태를 확인합니다

명령줄을 사용하여 진행 중이거나, 완료되었거나, 실패한 백업 작업의 상태를 확인할 수 있습니다.

단계
  1. 다음 명령을 사용하여 백업 작업의 상태를 검색하여 대괄호의 값을 사용자 환경의 정보로 바꿉니다.

    kubectl get backup -n <namespace_name> <my_backup_cr_name> -o jsonpath='{.status}'

Azure-NetApp-files(ANF) 작업을 위한 백업 및 복원이 가능합니다

Trident Protect를 설치한 경우 Azure-NetApp-files 스토리지 클래스를 사용하고 Trident 24.06 이전에 생성된 스토리지 백엔드에 공간 효율적인 백업 및 복원 기능을 사용할 수 있습니다. 이 기능은 NFSv4 볼륨에 적용되며 용량 풀에서 추가 공간을 사용하지 않습니다.

시작하기 전에

다음을 확인합니다.

  • Trident Protect가 설치되어 있습니다.

  • Trident Protect에서 애플리케이션을 정의했습니다. 이 응용 프로그램은 이 절차를 완료할 때까지 제한된 보호 기능을 제공합니다.

  • `azure-netapp-files`스토리지 백엔드의 기본 스토리지 클래스로 선택했습니다.

구성 단계를 위해 확장합니다
  1. Trident 24.10으로 업그레이드하기 전에 ANF 볼륨을 생성한 경우 Trident에서 다음을 수행하십시오.

    1. Azure-NetApp-files 기반이며 애플리케이션과 연결된 각 PV에 대해 스냅샷 디렉토리를 활성화합니다.

      tridentctl update volume <pv name> --snapshot-dir=true -n trident
    2. 연결된 각 PV에 대해 스냅샷 디렉토리가 활성화되었는지 확인합니다.

      tridentctl get volume <pv name> -n trident -o yaml | grep snapshotDir

      응답:

    snapshotDirectory: "true"

    +
    스냅샷 디렉토리가 활성화되지 않은 경우 Trident Protect는 일반 백업 기능을 선택하여 백업 프로세스 중에 용량 풀의 공간을 일시적으로 사용합니다. 이 경우 용량 풀에서 백업 중인 볼륨 크기의 임시 볼륨을 생성할 수 있는 충분한 공간이 있는지 확인합니다.

결과

Trident Protect를 통해 애플리케이션이 백업 및 복원 준비가 되어 있습니다. 각 PVC는 백업 및 복원을 위해 다른 응용 프로그램에서 사용할 수도 있습니다.