1.2. OADP Operator 설치 및 IAM 역할 제공


AWS STS(AWS Security Token Service)는 IAM 또는 페더레이션 사용자를 위한 단기 인증 정보를 제공하는 글로벌 웹 서비스입니다. STS를 사용하는 ROSA(Red Hat OpenShift Service on AWS)는 ROSA 클러스터에 권장되는 인증 정보 모드입니다. 이 문서에서는 AWS STS를 사용하여 ROSA에 OADP(OpenShift API for Data Protection)를 설치하는 방법을 설명합니다.

중요

Restic은 지원되지 않습니다.

CSI(Container Storage Interface) 스냅샷이 지원되지 않는 파일 시스템을 백업할 때 Kopia 파일 시스템 백업(FSB)이 지원됩니다.

예제 파일 시스템에는 다음이 포함됩니다.

  • Amazon Elastic File System (EFS)
  • 네트워크 파일 시스템(NFS)
  • emptyDir 볼륨
  • 로컬 볼륨

볼륨 백업의 경우 AWS STS를 사용하여 ROSA의 OADP는 기본 스냅샷 및 CSI(Container Storage Interface) 스냅샷만 지원합니다.

STS 인증을 사용하는 Amazon ROSA 클러스터에서는 다른 AWS 리전에서 백업 데이터를 복원할 수 없습니다.

Data Mover 기능은 현재 ROSA 클러스터에서 지원되지 않습니다. 데이터 이동을 위해 기본 AWS S3 툴을 사용할 수 있습니다.

사전 요구 사항

  • 필요한 액세스 및 토큰이 있는 AWS ROSA 클러스터의 Red Hat OpenShift Service. 자세한 내용은 OADP에 대한 AWS 인증 정보 준비 절차를 참조하십시오. 백업 및 복원을 위해 두 개의 다른 클러스터를 사용하려면 각 클러스터에 대해 ROLE_ARN 을 포함한 AWS 인증 정보를 준비해야 합니다.

절차

  1. 다음 명령을 입력하여 AWS 토큰 파일에서 AWS 시크릿에 Red Hat OpenShift Service를 생성합니다.

    1. 자격 증명 파일을 생성합니다.

      $ cat <<EOF > ${SCRATCH}/credentials
        [default]
        role_arn = ${ROLE_ARN}
        web_identity_token_file = /var/run/secrets/openshift/serviceaccount/token
      EOF
    2. OADP의 네임스페이스를 생성합니다.

      $ oc create namespace openshift-adp
    3. AWS 시크릿에 Red Hat OpenShift Service를 생성합니다.

      $ oc -n openshift-adp create secret generic cloud-credentials \
        --from-file=${SCRATCH}/credentials
      참고

      AWS 버전 4.15 이상에서 OADP Operator는 OLM(Operator Lifecycle Manager) 및 CCO(Cloud Credentials Operator)를 통해 새로운 표준화된 STS 워크플로를 지원합니다. 이 워크플로우에서는 웹 콘솔을 사용하여 OperatorHub에서 설치를 참조하십시오. 자세한 내용은 AWS 웹 콘솔에서 Red Hat OpenShift Service를 사용하여 OLM 관리 Operator 설치 중에 위의 시크릿을 생성할 필요가 없습니다.

      이전 시크릿은 CCO에 의해 자동으로 생성됩니다.

  2. OADP Operator를 설치합니다.

    1. AWS 웹 콘솔의 Red Hat OpenShift Service에서 Operator OperatorHub 로 이동합니다.
    2. OADP Operator 를 검색합니다.
    3. role_ARN 필드에 이전에 생성한 role_arn을 붙여넣고 설치를 클릭합니다.
  3. 다음 명령을 입력하여 AWS 인증 정보를 사용하여 AWS 클라우드 스토리지를 생성합니다.

    $ cat << EOF | oc create -f -
      apiVersion: oadp.openshift.io/v1alpha1
      kind: CloudStorage
      metadata:
        name: ${CLUSTER_NAME}-oadp
        namespace: openshift-adp
      spec:
        creationSecret:
          key: credentials
          name: cloud-credentials
        enableSharedConfig: true
        name: ${CLUSTER_NAME}-oadp
        provider: aws
        region: $REGION
    EOF
  4. 다음 명령을 입력하여 애플리케이션의 스토리지 기본 스토리지 클래스를 확인합니다.

    $ oc get pvc -n <namespace>

    출력 예

    NAME     STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    applog   Bound    pvc-351791ae-b6ab-4e8b-88a4-30f73caf5ef8   1Gi        RWO            gp3-csi        4d19h
    mysql    Bound    pvc-16b8e009-a20a-4379-accc-bc81fedd0621   1Gi        RWO            gp3-csi        4d19h

  5. 다음 명령을 실행하여 스토리지 클래스를 가져옵니다.

    $ oc get storageclass

    출력 예

    NAME                PROVISIONER             RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    gp2                 kubernetes.io/aws-ebs   Delete          WaitForFirstConsumer   true                   4d21h
    gp2-csi             ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   4d21h
    gp3                 ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   4d21h
    gp3-csi (default)   ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   4d21h

    참고

    다음 스토리지 클래스가 작동합니다.

    • gp3-csi
    • gp2-csi
    • gp3
    • gp2

    백업 중인 애플리케이션 또는 애플리케이션이 모두 CSI(Container Storage Interface)를 사용하는 PV(영구 볼륨)를 사용하는 경우 OADP DPA 구성에 CSI 플러그인을 포함하는 것이 좋습니다.

  6. DataProtectionApplication 리소스를 만들어 백업 및 볼륨 스냅샷이 저장되는 스토리지에 대한 연결을 구성합니다.

    1. CSI 볼륨만 사용하는 경우 다음 명령을 입력하여 데이터 보호 애플리케이션을 배포합니다.

      $ cat << EOF | oc create -f -
        apiVersion: oadp.openshift.io/v1alpha1
        kind: DataProtectionApplication
        metadata:
          name: ${CLUSTER_NAME}-dpa
          namespace: openshift-adp
        spec:
          backupImages: true 1
          features:
            dataMover:
              enable: false
          backupLocations:
          - bucket:
              cloudStorageRef:
                name: ${CLUSTER_NAME}-oadp
              credential:
                key: credentials
                name: cloud-credentials
              prefix: velero
              default: true
              config:
                region: ${REGION}
          configuration:
            velero:
              defaultPlugins:
              - openshift
              - aws
              - csi
            restic:
              enable: false
      EOF
      1
      ROSA는 내부 이미지 백업을 지원합니다. 이미지 백업을 사용하지 않으려면 이 필드를 false 로 설정합니다.
  1. CSI 또는 비 CSI 볼륨을 사용하는 경우 다음 명령을 입력하여 데이터 보호 애플리케이션을 배포합니다.

    $ cat << EOF | oc create -f -
      apiVersion: oadp.openshift.io/v1alpha1
      kind: DataProtectionApplication
      metadata:
        name: ${CLUSTER_NAME}-dpa
        namespace: openshift-adp
      spec:
        backupImages: true 1
        features:
          dataMover:
             enable: false
        backupLocations:
        - bucket:
            cloudStorageRef:
              name: ${CLUSTER_NAME}-oadp
            credential:
              key: credentials
              name: cloud-credentials
            prefix: velero
            default: true
            config:
              region: ${REGION}
        configuration:
          velero:
            defaultPlugins:
            - openshift
            - aws
          nodeAgent: 2
            enable: false
            uploaderType: restic
        snapshotLocations:
          - velero:
              config:
                credentialsFile: /tmp/credentials/openshift-adp/cloud-credentials-credentials 3
                enableSharedConfig: "true" 4
                profile: default 5
                region: ${REGION} 6
              provider: aws
    EOF
    1
    ROSA는 내부 이미지 백업을 지원합니다. 이미지 백업을 사용하지 않으려면 이 필드를 false로 설정합니다.
    2
    nodeAgent 속성과 관련된 중요한 노트를 참조하십시오.
    3
    credentialsFile 필드는 Pod에 버킷 인증 정보의 마운트된 위치입니다.
    4
    enableSharedConfig 필드를 사용하면 snapshotLocations 에서 버킷에 대해 정의된 인증 정보를 공유하거나 재사용할 수 있습니다.
    5
    AWS 인증 정보 파일에 설정된 프로필 이름을 사용합니다.
    6
    리전을 AWS 리전 으로 지정합니다. 이는 클러스터 리전과 동일해야 합니다.

    이제 애플리케이션 백업에 설명된 대로 AWS 애플리케이션에서 Red Hat OpenShift Service를 백업하고 복원할 수 있습니다.

중요

OADP가 ROSA 환경에서 Restic을 지원하지 않기 때문에 resticenable 매개변수는 이 구성에서 false 로 설정됩니다.

OADP 1.2를 사용하는 경우 이 구성을 교체합니다.

nodeAgent:
  enable: false
  uploaderType: restic

다음 구성에서는 다음을 수행합니다.

restic:
  enable: false

백업 및 복원을 위해 두 개의 다른 클러스터를 사용하려면 클라우드 스토리지 CR과 OADP DataProtectionApplication 구성 둘 다에 동일한 AWS S3 스토리지 이름이 있어야 합니다.

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.