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

애플리케이션 보호

기여자

자동화된 보호 정책을 사용하거나 필요에 따라 스냅샷 및 백업을 수행하여 모든 애플리케이션을 보호합니다.

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

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

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는 백업 및 복원을 위해 다른 응용 프로그램에서 사용할 수도 있습니다.