4.12. OADP 데이터 Mover


4.12.1. OADP Data Mover 정보

OADP에는 CSI(Container Storage Interface) 볼륨 스냅샷을 원격 오브젝트 저장소로 이동하는 데 사용할 수 있는 기본 제공 데이터 Mover가 포함되어 있습니다. 기본 제공 Data Mover를 사용하면 오류, 실수로 삭제 또는 클러스터 손상이 발생하는 경우 원격 오브젝트 저장소에서 상태 저장 애플리케이션을 복원할 수 있습니다. Kopia 를 업로드기 메커니즘으로 사용하여 스냅샷 데이터를 읽고 통합 리포지토리에 씁니다.

OADP는 다음에서 CSI 스냅샷을 지원합니다.

  • {odf-full}
  • Kubernetes Volume Snapshot API를 지원하는 CSI(Container Storage Interface) 드라이버가 있는 기타 클라우드 스토리지 공급자
중요

OADP 1.3에 기술 프리뷰로 도입된 OADP 내장 데이터 Mover는 이제 컨테이너화된 및 가상 머신 워크로드 모두에 대해 완전히 지원됩니다.

4.12.1.1. 기본 제공 데이터 Mover 활성화

기본 제공 데이터 Mover를 활성화하려면 CSI 플러그인을 포함하고 DataProtectionApplication CR(사용자 정의 리소스)에서 노드 에이전트를 활성화해야 합니다. 노드 에이전트는 데이터 이동 모듈을 호스팅하는 Kubernetes 데몬 세트입니다. 여기에는 데이터 Mover 컨트롤러, 업로드자 및 리포지토리가 포함됩니다.

DataProtectionApplication 매니페스트의 예

apiVersion: oadp.openshift.io/v1alpha1
kind: DataProtectionApplication
metadata:
  name: dpa-sample
spec:
  configuration:
    nodeAgent:
      enable: true 1
      uploaderType: kopia 2
    velero:
      defaultPlugins:
      - openshift
      - aws
      - csi 3
      defaultSnapshotMoveData: true
      defaultVolumesToFSBackup: 4
      featureFlags:
      - EnableCSI
# ...

1
노드 에이전트를 활성화하는 플래그입니다.
2
uploader 유형입니다. 가능한 값은 restic 또는 kopia 입니다. 기본 제공 Data Mover는 uploaderType 필드의 값에 관계없이 Kopia를 기본 업로드기 메커니즘으로 사용합니다.
3
기본 플러그인 목록에 포함된 CSI 플러그인입니다.
4
OADP 1.3.1 이상에서는 fs-backup 을 옵트아웃하는 볼륨에만 Data Mover를 사용하는 경우 true 로 설정합니다. 볼륨에 대해 기본적으로 Data Mover를 사용하는 경우 false 로 설정합니다.

4.12.1.2. 기본 제공 데이터 Mover 컨트롤러 및 CRD(사용자 정의 리소스 정의)

기본 제공 Data Mover 기능에는 백업 및 복원을 관리하기 위해 CRD로 정의된 새로운 API 오브젝트 3개가 도입되었습니다.

  • DataDownload: 볼륨 스냅샷의 데이터 다운로드를 나타냅니다. CSI 플러그인은 복원할 볼륨당 하나의 DataDownload 오브젝트를 생성합니다. DataDownload CR에는 대상 볼륨, 지정된 데이터 Mover, 현재 데이터 다운로드의 진행 상황, 지정된 백업 리포지토리 및 프로세스가 완료된 후 현재 데이터 다운로드 결과가 포함됩니다.
  • DataUpload: 볼륨 스냅샷의 데이터 업로드를 나타냅니다. CSI 플러그인은 CSI 스냅샷당 하나의 DataUpload 오브젝트를 생성합니다. DataUpload CR에는 지정된 스냅샷, 지정된 데이터 Mover, 지정된 백업 리포지토리, 현재 데이터 업로드 진행률, 프로세스가 완료된 후 현재 데이터 업로드 결과가 포함됩니다.
  • BackupRepository: 백업 리포지토리의 라이프사이클을 나타내며 관리합니다. OADP는 네임스페이스에 대한 첫 번째 CSI 스냅샷 백업 또는 복원이 요청되면 네임스페이스당 백업 리포지토리를 생성합니다.

4.12.1.3. 증분 백업 지원 정보

OADP는 컨테이너화된 워크로드와 OpenShift Virtualization 워크로드 모두에 대해 블록Filesystem 영구 볼륨의 증분 백업을 지원합니다. 다음 표에는 파일 시스템 백업(FSB), CSI(Container Storage Interface) 및 CSI 데이터 Mover에 대한 지원이 요약되어 있습니다.

표 4.6. 컨테이너화된 워크로드에 대한 OADP 백업 지원 매트릭스
볼륨 모드FSB - ResticFSB - KopiaCSICSI 데이터 Mover

파일 시스템

S [1], I [2]

S [1], I [2]

S [1]

S [1], I [2]

블록

N [3]

N [3]

S [1]

S [1], I [2]

표 4.7. OpenShift Virtualization 워크로드에 대한 OADP 백업 지원 매트릭스
볼륨 모드FSB - ResticFSB - KopiaCSICSI 데이터 Mover

파일 시스템

N [3]

N [3]

S [1]

S [1], I [2]

블록

N [3]

N [3]

S [1]

S [1], I [2]

  1. 지원되는 백업
  2. 증분 백업 지원
  3. 지원되지 않음
참고

CSI Data Mover 백업은 uploaderType 과 관계없이 Kopia를 사용합니다.

4.12.2. CSI 스냅샷 데이터 이동 백업 및 복원

OADP 1.3 Data Mover를 사용하여 영구 볼륨을 백업하고 복원할 수 있습니다.

4.12.2.1. CSI 스냅샷을 사용하여 영구 볼륨 백업

OADP 데이터 Mover를 사용하여 CSI(Container Storage Interface) 볼륨 스냅샷을 원격 오브젝트 저장소에 백업할 수 있습니다.

사전 요구 사항

  • cluster-admin 역할을 사용하여 클러스터에 액세스할 수 있습니다.
  • OADP Operator가 설치되어 있습니다.
  • CSI 플러그인을 포함하고 DataProtectionApplication CR(사용자 정의 리소스)에 노드 에이전트를 활성화했습니다.
  • 별도의 네임스페이스에서 영구 볼륨이 실행되는 애플리케이션이 있습니다.
  • metadata.labels.velero.io/csi-volumesnapshot-class: "true" 키-값 쌍을 VolumeSnapshotClass CR에 추가했습니다.

절차

  1. 다음 예와 같이 Backup 오브젝트에 대한 YAML 파일을 생성합니다.

    Backup CR의 예

    kind: Backup
    apiVersion: velero.io/v1
    metadata:
      name: backup
      namespace: openshift-adp
    spec:
      csiSnapshotTimeout: 10m0s
      defaultVolumesToFsBackup: 1
      includedNamespaces:
      - mysql-persistent
      itemOperationTimeout: 4h0m0s
      snapshotMoveData: true 2
      storageLocation: default
      ttl: 720h0m0s 3
      volumeSnapshotLocations:
      - dpa-sample-1
    # ...

    1
    fs-backup 에서 옵트아웃하는 볼륨에만 Data Mover를 사용하는 경우 true 로 설정합니다. 볼륨에 대해 기본적으로 Data Mover를 사용하는 경우 false 로 설정합니다.
    2
    CSI 스냅샷을 원격 오브젝트 스토리지로 이동하려면 true 로 설정합니다.
    3
    ttl 필드는 생성된 백업의 보존 시간과 백업 데이터를 정의합니다. 예를 들어 Restic을 백업 도구로 사용하는 경우 백업이 만료될 때까지 백업된 데이터 항목과 PV(영구 볼륨)의 데이터 콘텐츠가 저장됩니다. 그러나 이러한 데이터를 저장하면 대상 백업 위치에 더 많은 공간이 사용됩니다. 추가 스토리지는 만료되지 않은 다른 완료된 백업이 시간 초과되었을 수 있기 전에 생성되는 빈번한 백업과 함께 사용됩니다.
    참고

    XFS 파일 시스템을 사용하여 볼륨을 포맷하고 볼륨이 100%인 경우 장치 오류에 남아 있는 공간이 없는 상태에서 백업이 실패합니다. 예를 들면 다음과 같습니다.

    Error: relabel failed /var/lib/kubelet/pods/3ac..34/volumes/ \
    kubernetes.io~csi/pvc-684..12c/mount: lsetxattr /var/lib/kubelet/ \
    pods/3ac..34/volumes/kubernetes.io~csi/pvc-68..2c/mount/data-xfs-103: \
    no space left on device

    이 시나리오에서는 백업이 성공적으로 완료되도록 볼륨 크기 조정 또는 다른 파일 시스템 유형(예: ext4 )을 사용하는 것이 좋습니다.

  2. 매니페스트를 적용합니다.

    $ oc create -f backup.yaml

    DataUpload CR은 스냅샷 생성이 완료된 후 생성됩니다.

검증

  • DataUpload CR의 status.phase 필드를 모니터링하여 스냅샷 데이터가 원격 오브젝트 저장소로 성공적으로 전송되었는지 확인합니다. 가능한 값은 진행 중 ,완료됨,실패 또는 취소됨 입니다. 오브젝트 저장소는 DataProtectionApplication CR의 backupLocations 스탠자에 구성됩니다.

    • 다음 명령을 실행하여 모든 DataUpload 오브젝트 목록을 가져옵니다.

      $ oc get datauploads -A

      출력 예

      NAMESPACE       NAME                  STATUS      STARTED   BYTES DONE   TOTAL BYTES   STORAGE LOCATION   AGE     NODE
      openshift-adp   backup-test-1-sw76b   Completed   9m47s     108104082    108104082     dpa-sample-1       9m47s   ip-10-0-150-57.us-west-2.compute.internal
      openshift-adp   mongo-block-7dtpf     Completed   14m       1073741824   1073741824    dpa-sample-1       14m     ip-10-0-150-57.us-west-2.compute.internal

    • 다음 명령을 실행하여 특정 DataUpload 오브젝트의 status.phase 필드 값을 확인합니다.

      $ oc get datauploads <dataupload_name> -o yaml

      출력 예

      apiVersion: velero.io/v2alpha1
      kind: DataUpload
      metadata:
        name: backup-test-1-sw76b
        namespace: openshift-adp
      spec:
        backupStorageLocation: dpa-sample-1
        csiSnapshot:
          snapshotClass: ""
          storageClass: gp3-csi
          volumeSnapshot: velero-mysql-fq8sl
        operationTimeout: 10m0s
        snapshotType: CSI
        sourceNamespace: mysql-persistent
        sourcePVC: mysql
      status:
        completionTimestamp: "2023-11-02T16:57:02Z"
        node: ip-10-0-150-57.us-west-2.compute.internal
        path: /host_pods/15116bac-cc01-4d9b-8ee7-609c3bef6bde/volumes/kubernetes.io~csi/pvc-eead8167-556b-461a-b3ec-441749e291c4/mount
        phase: Completed 1
        progress:
          bytesDone: 108104082
          totalBytes: 108104082
        snapshotID: 8da1c5febf25225f4577ada2aeb9f899
        startTimestamp: "2023-11-02T16:56:22Z"

      1
      스냅샷 데이터가 원격 오브젝트 저장소로 성공적으로 전송되었음을 나타냅니다.

4.12.2.2. CSI 볼륨 스냅샷 복원

Restore CR을 생성하여 볼륨 스냅샷을 복원할 수 있습니다.

참고

OAPD 1.3 기본 제공 데이터 Mover를 사용하여 OADP 1.2의 reflectsync 백업을 복원할 수 없습니다. OADP 1.3으로 업그레이드하기 전에 Restic을 사용하여 모든 워크로드의 파일 시스템 백업을 수행하는 것이 좋습니다.

사전 요구 사항

  • cluster-admin 역할을 사용하여 클러스터에 액세스할 수 있습니다.
  • 데이터를 복원할 OADP Backup CR이 있습니다.

절차

  1. 다음 예와 같이 Restore CR에 대한 YAML 파일을 생성합니다.

    CR 복원

    apiVersion: velero.io/v1
    kind: Restore
    metadata:
      name: restore
      namespace: openshift-adp
    spec:
      backupName: <backup>
    # ...

  2. 매니페스트를 적용합니다.

    $ oc create -f restore.yaml

    복원이 시작될 때 DataDownload CR이 생성됩니다.

검증

  • DataDownload CR의 status.phase 필드를 확인하여 복원 프로세스의 상태를 모니터링할 수 있습니다. 가능한 값은 진행 중 ,완료됨,실패 또는 취소됨 입니다.

    • 모든 DataDownload 오브젝트 목록을 가져오려면 다음 명령을 실행합니다.

      $ oc get datadownloads -A

      출력 예

      NAMESPACE       NAME                   STATUS      STARTED   BYTES DONE   TOTAL BYTES   STORAGE LOCATION   AGE     NODE
      openshift-adp   restore-test-1-sk7lg   Completed   7m11s     108104082    108104082     dpa-sample-1       7m11s   ip-10-0-150-57.us-west-2.compute.internal

    • 다음 명령을 입력하여 특정 DataDownload 오브젝트의 status.phase 필드 값을 확인합니다.

      $ oc get datadownloads <datadownload_name> -o yaml

      출력 예

      apiVersion: velero.io/v2alpha1
      kind: DataDownload
      metadata:
        name: restore-test-1-sk7lg
        namespace: openshift-adp
      spec:
        backupStorageLocation: dpa-sample-1
        operationTimeout: 10m0s
        snapshotID: 8da1c5febf25225f4577ada2aeb9f899
        sourceNamespace: mysql-persistent
        targetVolume:
          namespace: mysql-persistent
          pv: ""
          pvc: mysql
      status:
        completionTimestamp: "2023-11-02T17:01:24Z"
        node: ip-10-0-150-57.us-west-2.compute.internal
        phase: Completed 1
        progress:
          bytesDone: 108104082
          totalBytes: 108104082
        startTimestamp: "2023-11-02T17:00:52Z"

      1
      CSI 스냅샷 데이터가 성공적으로 복원되었음을 나타냅니다.

4.12.2.3. OADP 1.3 삭제 정책

삭제 정책은 시스템에서 데이터를 제거하는 규칙을 결정하며 보존 기간, 데이터 민감도 및 규정 준수 요구 사항과 같은 요인에 따라 삭제 시기와 방법을 지정합니다. 규정을 준수하고 중요한 정보를 보존하면서 효과적으로 데이터 제거를 관리합니다.

4.12.2.3.1. OADP 1.3 삭제 정책 지침

OADP 1.3의 다음 삭제 정책 지침을 검토하십시오.

  • OADP 1.3.x에서는 모든 유형의 백업 및 복원 방법을 사용할 때 VolumeSnapshotClass CR(사용자 정의 리소스)에서 deletionPolicy 필드를 Retain 또는 Delete 로 설정할 수 있습니다.

4.12.3. Kopia 해시, 암호화 및 분할 알고리즘 덮어쓰기

DPA(Data Protection Application)의 특정 환경 변수를 사용하여 Kopia 해시, 암호화 및 분할 알고리즘의 기본값을 재정의할 수 있습니다.

4.12.3.1. Kopia 해시, 암호화 및 분할 알고리즘을 재정의하도록 DPA 구성

OADP(OpenShift API for Data Protection) 옵션을 사용하여 해시, 암호화 및 분할에 대한 기본 Kopia 알고리즘을 재정의하여 Kopia 성능을 개선하거나 성능 지표를 비교할 수 있습니다. DPA의 spec.configuration.velero.podConfig.env 섹션에서 다음 환경 변수를 설정할 수 있습니다.

  • KOPIA_HASHING_ALGORITHM
  • KOPIA_ENCRYPTION_ALGORITHM
  • KOPIA_SPLITTER_ALGORITHM

사전 요구 사항

  • OADP Operator가 설치되어 있습니다.
  • 클라우드 공급자가 제공하는 인증 정보를 사용하여 시크릿을 생성했습니다.

절차

  • 다음 예와 같이 해시, 암호화 및 분할에 대한 환경 변수를 사용하여 DPA를 구성합니다.

    DPA 예

    apiVersion: oadp.openshift.io/v1alpha1
    kind: DataProtectionApplication
    #...
    configuration:
      nodeAgent:
        enable: true 1
        uploaderType: kopia 2
      velero:
        defaultPlugins:
        - openshift
        - aws
        - csi 3
        defaultSnapshotMoveData: true
        podConfig:
          env:
            - name: KOPIA_HASHING_ALGORITHM
              value: <hashing_algorithm_name> 4
            - name: KOPIA_ENCRYPTION_ALGORITHM
              value: <encryption_algorithm_name> 5
            - name: KOPIA_SPLITTER_ALGORITHM
              value: <splitter_algorithm_name> 6

    1
    nodeAgent 를 활성화합니다.
    2
    uploaderTypekopia 로 지정합니다.
    3
    csi 플러그인을 포함합니다.
    4
    해시 알고리즘을 지정합니다. 예를 들면 BLAKE3-256 입니다.
    5
    암호화 알고리즘을 지정합니다. 예를 들어 CHACHA20-POLY1305-HMAC-SHA256.
    6
    splitter 알고리즘을 지정합니다. 예를 들어 DYNAMIC-8M-RABINKARP.

4.12.3.2. Kopia 해시, 암호화 및 분할 알고리즘을 재정의하는 사용 사례

사용 사례 예제에서는 해시, 암호화 및 분할에 Kopia 환경 변수를 사용하여 애플리케이션 백업을 수행하는 방법을 보여줍니다. 백업을 AWS S3 버킷에 저장합니다. 그런 다음 Kopia 리포지토리에 연결하여 환경 변수를 확인합니다.

사전 요구 사항

  • OADP Operator가 설치되어 있습니다.
  • AWS S3 버킷이 백업 스토리지 위치로 구성되어 있습니다.
  • 클라우드 공급자가 제공하는 인증 정보를 사용하여 시크릿을 생성했습니다.
  • Kopia 클라이언트를 설치했습니다.
  • 별도의 네임스페이스에서 영구 볼륨이 실행되는 애플리케이션이 있습니다.

절차

  1. 다음 예와 같이 DPA(Data Protection Application)를 구성합니다.

    apiVersion: oadp.openshift.io/v1alpha1
    kind: DataProtectionApplication
    metadata:
    name: <dpa_name> 1
    namespace: openshift-adp
    spec:
    backupLocations:
    - name: aws
      velero:
        config:
          profile: default
          region: <region_name> 2
        credential:
          key: cloud
          name: cloud-credentials 3
        default: true
        objectStorage:
          bucket: <bucket_name> 4
          prefix: velero
        provider: aws
    configuration:
      nodeAgent:
        enable: true
        uploaderType: kopia
      velero:
        defaultPlugins:
        - openshift
        - aws
        - csi 5
        defaultSnapshotMoveData: true
        podConfig:
          env:
            - name: KOPIA_HASHING_ALGORITHM
              value: BLAKE3-256 6
            - name: KOPIA_ENCRYPTION_ALGORITHM
              value: CHACHA20-POLY1305-HMAC-SHA256 7
            - name: KOPIA_SPLITTER_ALGORITHM
              value: DYNAMIC-8M-RABINKARP 8
    1
    DPA의 이름을 지정합니다.
    2
    백업 스토리지 위치의 리전을 지정합니다.
    3
    기본 Secret 오브젝트의 이름을 지정합니다.
    4
    AWS S3 버킷 이름을 지정합니다.
    5
    csi 플러그인을 포함합니다.
    6
    해시 알고리즘을 BLAKE3-256 으로 지정합니다.
    7
    암호화 알고리즘을 CHACHA20-POLY1305-HMAC-SHA256 로 지정합니다.
    8
    splitter 알고리즘을 DYNAMIC-8M-RABINKARP 로 지정합니다.
  2. 다음 명령을 실행하여 DPA를 생성합니다.

    $ oc create -f <dpa_file_name> 1
    1
    구성한 DPA의 파일 이름을 지정합니다.
  3. 다음 명령을 실행하여 DPA가 조정되었는지 확인합니다.

    $ oc get dpa -o yaml
  4. 다음 예와 같이 backup CR을 생성합니다.

    백업 CR의 예

    apiVersion: velero.io/v1
    kind: Backup
    metadata:
      name: test-backup
      namespace: openshift-adp
    spec:
      includedNamespaces:
      - <application_namespace> 1
      defaultVolumesToFsBackup: true

    1
    클러스터에 설치된 애플리케이션의 네임스페이스를 지정합니다.
  5. 다음 명령을 실행하여 백업을 생성합니다.

    $ oc apply -f <backup_file_name> 1
    1
    백업 CR 파일의 이름을 지정합니다.
  6. 다음 명령을 실행하여 백업이 완료되었는지 확인합니다.

    $ oc get backups.velero.io <backup_name> -o yaml 1
    1
    백업 이름을 지정합니다.

검증

  1. 다음 명령을 실행하여 Kopia 리포지토리에 연결합니다.

    $ kopia repository connect s3 \
      --bucket=<bucket_name> \ 1
      --prefix=velero/kopia/<application_namespace> \ 2
      --password=static-passw0rd \ 3
      --access-key="<aws_s3_access_key>" \ 4
      --secret-access-key="<aws_s3_secret_access_key>" \ 5
    1
    AWS S3 버킷 이름을 지정합니다.
    2
    애플리케이션의 네임스페이스를 지정합니다.
    3
    리포지토리에 연결할 Kopia 암호입니다.
    4
    AWS S3 액세스 키를 지정합니다.
    5
    AWS S3 스토리지 공급자 시크릿 액세스 키를 지정합니다.
    참고

    AWS S3 이외의 스토리지 공급자를 사용하는 경우 버킷 끝점 URL 매개변수인 --endpoint 를 명령에 추가해야 합니다.

  2. 다음 명령을 실행하여 Kopia에서 DPA에 구성된 환경 변수를 사용하는지 확인합니다.

    $ kopia repository status

    출력 예

    Config file:         /../.config/kopia/repository.config
    
    Description:         Repository in S3: s3.amazonaws.com <bucket_name>
    # ...
    
    Storage type:        s3
    Storage capacity:    unbounded
    Storage config:      {
                           "bucket": <bucket_name>,
                           "prefix": "velero/kopia/<application_namespace>/",
                           "endpoint": "s3.amazonaws.com",
                           "accessKeyID": <access_key>,
                           "secretAccessKey": "****************************************",
                           "sessionToken": ""
                         }
    
    Unique ID:           58....aeb0
    Hash:                BLAKE3-256
    Encryption:          CHACHA20-POLY1305-HMAC-SHA256
    Splitter:            DYNAMIC-8M-RABINKARP
    Format version:      3
    # ...

4.12.3.3. Kopia 해시, 암호화 및 분할 알고리즘 벤치마킹

Kopia 명령을 실행하여 해시, 암호화 및 분할 알고리즘을 벤치마킹할 수 있습니다. 벤치마킹 결과에 따라 워크로드에 가장 적합한 알고리즘을 선택할 수 있습니다. 이 절차에서는 클러스터의 Pod에서 Kopia 벤치마킹 명령을 실행합니다. 벤치마킹 결과는 CPU 속도, 사용 가능한 RAM, 디스크 속도, 현재 I/O 로드 등에 따라 다를 수 있습니다.

사전 요구 사항

  • OADP Operator가 설치되어 있습니다.
  • 별도의 네임스페이스에서 영구 볼륨이 실행되는 애플리케이션이 있습니다.
  • CSI(Container Storage Interface) 스냅샷을 사용하여 애플리케이션 백업을 실행합니다.

절차

  1. 다음 예와 같이 Pod를 구성합니다. OADP 버전 1.3 이상에 oadp-mustgather 이미지를 사용하고 있는지 확인합니다.

    Pod 구성 예

    apiVersion: v1
    kind: Pod
    metadata:
      name: oadp-mustgather-pod
      labels:
        purpose: user-interaction
    spec:
      containers:
      - name: oadp-mustgather-container
        image: registry.redhat.io/oadp/oadp-mustgather-rhel9:v1.3
        command: ["sleep"]
        args: ["infinity"]

    참고

    Kopia 클라이언트는 oadp-mustgather 이미지에서 사용할 수 있습니다.

  2. 다음 명령을 실행하여 Pod를 생성합니다.

    $ oc apply -f <pod_config_file_name> 1
    1
    Pod 구성에 대한 YAML 파일의 이름을 지정합니다.
  3. Kopia가 리포지토리에 연결할 수 있도록 Pod의 SCC(보안 컨텍스트 제약 조건)가 anyuid 인지 확인합니다.

    $ oc describe pod/oadp-mustgather-pod | grep scc

    출력 예

    openshift.io/scc: anyuid

  4. 다음 명령을 실행하여 SSH를 통해 포드에 연결합니다.

    $ oc -n openshift-adp rsh pod/oadp-mustgather-pod
  5. 다음 명령을 실행하여 Kopia 리포지토리에 연결합니다.

    sh-5.1# kopia repository connect s3 \
      --bucket=<bucket_name> \ 1
      --prefix=velero/kopia/<application_namespace> \ 2
      --password=static-passw0rd \ 3
      --access-key="<access_key>" \ 4
      --secret-access-key="<secret_access_key>" \ 5
      --endpoint=<bucket_endpoint> \ 6
    1
    오브젝트 스토리지 공급자 버킷 이름을 지정합니다.
    2
    애플리케이션의 네임스페이스를 지정합니다.
    3
    리포지토리에 연결할 Kopia 암호입니다.
    4
    오브젝트 스토리지 공급자 액세스 키를 지정합니다.
    5
    오브젝트 스토리지 공급자 시크릿 액세스 키를 지정합니다.
    6
    버킷 끝점을 지정합니다. AWS S3를 스토리지 공급자로 사용하는 경우 버킷 끝점을 지정할 필요가 없습니다.
    참고

    다음은 예제 명령입니다. 명령은 오브젝트 스토리지 공급자에 따라 다를 수 있습니다.

  6. 해시 알고리즘을 벤치마크하려면 다음 명령을 실행합니다.

    sh-5.1# kopia benchmark hashing

    출력 예

    Benchmarking hash 'BLAKE2B-256' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'BLAKE2B-256-128' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'BLAKE2S-128' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'BLAKE2S-256' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'BLAKE3-256' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'BLAKE3-256-128' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'HMAC-SHA224' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'HMAC-SHA256' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'HMAC-SHA256-128' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'HMAC-SHA3-224' (100 x 1048576 bytes, parallelism 1)
    Benchmarking hash 'HMAC-SHA3-256' (100 x 1048576 bytes, parallelism 1)
         Hash                 Throughput
    -----------------------------------------------------------------
      0. BLAKE3-256           15.3 GB / second
      1. BLAKE3-256-128       15.2 GB / second
      2. HMAC-SHA256-128      6.4 GB / second
      3. HMAC-SHA256          6.4 GB / second
      4. HMAC-SHA224          6.4 GB / second
      5. BLAKE2B-256-128      4.2 GB / second
      6. BLAKE2B-256          4.1 GB / second
      7. BLAKE2S-256          2.9 GB / second
      8. BLAKE2S-128          2.9 GB / second
      9. HMAC-SHA3-224        1.6 GB / second
     10. HMAC-SHA3-256        1.5 GB / second
    -----------------------------------------------------------------
    Fastest option for this machine is: --block-hash=BLAKE3-256

  7. 암호화 알고리즘을 벤치마크하려면 다음 명령을 실행합니다.

    sh-5.1# kopia benchmark encryption

    출력 예

    Benchmarking encryption 'AES256-GCM-HMAC-SHA256'... (1000 x 1048576 bytes, parallelism 1)
    Benchmarking encryption 'CHACHA20-POLY1305-HMAC-SHA256'... (1000 x 1048576 bytes, parallelism 1)
         Encryption                     Throughput
    -----------------------------------------------------------------
      0. AES256-GCM-HMAC-SHA256         2.2 GB / second
      1. CHACHA20-POLY1305-HMAC-SHA256  1.8 GB / second
    -----------------------------------------------------------------
    Fastest option for this machine is: --encryption=AES256-GCM-HMAC-SHA256

  8. splitter 알고리즘을 벤치마크하려면 다음 명령을 실행합니다.

    sh-5.1# kopia benchmark splitter

    출력 예

    splitting 16 blocks of 32MiB each, parallelism 1
    DYNAMIC                     747.6 MB/s count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
    DYNAMIC-128K-BUZHASH        718.5 MB/s count:3183 min:3076 10th:80896 25th:104312 50th:157621 75th:249115 90th:262144 max:262144
    DYNAMIC-128K-RABINKARP      164.4 MB/s count:3160 min:9667 10th:80098 25th:106626 50th:162269 75th:250655 90th:262144 max:262144
    # ...
    FIXED-512K                  102.9 TB/s count:1024 min:524288 10th:524288 25th:524288 50th:524288 75th:524288 90th:524288 max:524288
    FIXED-8M                    566.3 TB/s count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
    -----------------------------------------------------------------
      0. FIXED-8M                  566.3 TB/s   count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
      1. FIXED-4M                  425.8 TB/s   count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
      # ...
     22. DYNAMIC-128K-RABINKARP    164.4 MB/s   count:3160 min:9667 10th:80098 25th:106626 50th:162269 75th:250655 90th:262144 max:262144

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.