IBM Cloud Docs
AWS EBS

AWS EBS

해당 위치에서 스토리지 구성을 생성하여 IBM Cloud Satellite® 클러스터에 대해 Amazon Elastic Block Storage(EBS )을 설정하세요. 클러스터에 스토리지 구성을 지정하면 선택한 스토리지 제공자의 스토리지 드라이버가 클러스터에 설치됩니다.

AWS EBS 스토리지 구성을 작성할 때 구성을 지정하는 클러스터에서 Kubernetes 시크릿으로 저장된 AWS 인증 정보를 제공합니다. 시크릿은 CSI 컨트롤러 팟(Pod) 내부에 마운트되므로 IBM 제공 스토리지 클래스 중 하나를 사용하여 PVC를 작성할 때 AWS 인증 정보를 사용하여 EBS 인스턴스를 동적으로 프로비저닝합니다.

앱에 AWS EBS 스토리지를 사용하려면 클러스터의 작업자 노드에 사용하는 Satellite 호스트가 AWS에 있어야 합니다.

사용자 위치의 클러스터에 스토리지 템플리트를 배치하려면 콘솔에서 Satellite 구성에 대한 클러스터 관리 액세스 사용 옵션을 선택하거나 클러스터를 작성할 때 --enable-config-admin 옵션을 포함하여 Satellite 구성을 설정해야 합니다.

Satellite 구성이 변경사항을 겹쳐쓰므로 스토리지 클래스를 사용자 정의할 수 없습니다.

Satellite 스토리지 서비스를 리소스 그룹으로 범위 지정할 수 없습니다. 그러나 위치 및 클러스터와 같은 다른 리소스를 리소스 그룹으로 범위 지정하는 경우에는 계정의 모든 리소스에 대해 Satellite 독자 및 링크 관리자 역할을 추가해야 합니다.

AWS EBS 사용을 위한 전제조건

AWS EBS 스토리지 템플리트를 사용하려면 다음 태스크를 완료하십시오.

  1. Satellite 위치를 작성하십시오.

  2. AWS(Amazon Web Services)의 컴퓨팅 호스트에서 실행되는 Satellite 클러스터를 작성하십시오. 클러스터를 작성할 때 Satellite 구성에 대한 클러스터 관리 액세스 사용 옵션을 선택하는지 확인하십시오. 클러스터를 작성할 때 Satellite 구성에 대해 관리자 (admin) 액세스를 사용하지 않는 경우, 스토리지를 배치하기 전에 클러스터를 다시 작성하고 관리 액세스를 사용해야 합니다. 클러스터에 지정할 수 있도록 AWS의 호스트를 Satellite 위치에 추가하는 방법에 대한 자세한 정보는 Satellite에 AWS 호스트 추가를 참조하십시오.

  3. AWS 로그인 자격 증명을 위한 AWS 액세스 키 ID와 비밀 액세스 키를 생성합니다. 이러한 인증 정보는 계정에 AWS EBS 스토리지를 프로비저닝하는 데 필요합니다. 클러스터에 스토리지 구성을 지정할 때 AWS 액세스 키 ID 및 시크릿 액세스 키는 클러스터의 Kubernetes 시크릿에 저장됩니다.

  4. AWS EBS 스토리지 구성 매개변수를 검토하십시오.

  5. AWS EBS 스토리지 클래스 를 검토하십시오. AWS EBS 스토리지 템플리트는 사용자 정의 스토리지 클래스를 지원하지 않습니다.

콘솔에서 구성 작성 및 지정

  1. 매개변수 참조를 검토하십시오.

  2. 위치 콘솔에서 스토리지 구성을 만들 위치를 선택합니다.

  3. 스토리지 > 스토리지 구성 작성을 선택하십시오.

  4. 구성의 이름을 입력하십시오.

  5. 저장소 유형을 선택합니다.

  6. 버전을 선택하고 다음을 클릭합니다

  7. 선택한 스토리지 유형 이 사용자 정의 매개변수를 허용하는 경우 매개변수 탭에서 이를 입력하십시오.

  8. 선택한 스토리지 유형 에 시크릿이 필요한 경우 시크릿 탭에 시크릿을 입력하십시오.

  9. 스토리지 클래스 탭에서 구성에 의해 배치되는 스토리지 클래스를 검토하거나 사용자 정의 스토리지 클래스를 작성하십시오.

  10. 서비스에 지정 탭에서 구성을 지정할 서비스를 선택하십시오.

  11. 완료를 클릭하여 스토리지 구성을 지정하십시오.

CLI에서 구성 작성

  1. 사용할 템플리트 버전에 대한 매개변수 참조 를 검토하십시오.

  2. IBM Cloud에 로그인하십시오.

    ibmcloud login
    
  3. Satellite 위치를 나열하고 Managed from 열을 기록하십시오.

    ibmcloud sat location ls
    
  4. Satellite 위치의 Managed from 지역을 대상으로 지정하십시오. 예를 들어 wdc의 경우 us-east를 대상으로 지정하십시오. 자세한 정보는 Satellite 지역을 참조하십시오.

    ibmcloud target -r us-east
    
  5. default 이외의 리소스 그룹을 사용하는 경우 해당 그룹을 대상으로 지정하십시오.

    ibmcloud target -g <resource-group>
    
  6. 사용할 템플리트 버전에 대해 다음 예제 명령 중 하나를 복사하십시오. 명령에 대한 자세한 정보는 명령 참조 에서 ibmcloud sat storage config create 의 내용을 참조하십시오.

    버전 1.1.0 구성을 작성하는 예제 명령입니다.

    ibmcloud sat storage config create --location LOCATION --name NAME --template-name aws-ebs-csi-driver --template-version 1.1.0 --param "aws-access-key=AWS-ACCESS-KEY"  --param "aws-secret-access-key=AWS-SECRET-ACCESS-KEY"
    

    버전 1.5.1 구성을 작성하는 예제 명령입니다.

    ibmcloud sat storage config create --location LOCATION --name NAME --template-name aws-ebs-csi-driver --template-version 1.5.1 --param "aws-access-key=AWS-ACCESS-KEY"  --param "aws-secret-access-key=AWS-SECRET-ACCESS-KEY"
    

    버전 1.12.0 구성을 작성하는 예제 데이터베이스 클릭다.

    ibmcloud sat storage config create --location LOCATION --name NAME --template-name aws-ebs-csi-driver --template-version 1.12.0 --param "aws-access-key=AWS-ACCESS-KEY"  --param "aws-secret-access-key=AWS-SECRET-ACCESS-KEY"
    

    버전 1.31.0 구성을 작성하는 예제 명령입니다.

    ibmcloud sat storage config create --location LOCATION --name NAME --template-name aws-ebs-csi-driver --template-version 1.31.0 --param "aws-access-key=AWS-ACCESS-KEY"  --param "aws-secret-access-key=AWS-SECRET-ACCESS-KEY"
    
  7. 사용하려는 설정에 따라 명령을 사용자 정의하십시오.

  8. 명령을 실행하여 구성을 만듭니다.

  9. 구성이 생성되었는지 확인합니다.

    ibmcloud sat storage config get --config CONFIG
    

API에서 구성 작성

  1. API키를 생성한 후 새로 고치기 토큰을 요청하십시오. 자세한 정보는 API 키를 사용하여 IBM Cloud IAM 토큰 생성을 참조하십시오.

  2. 사용할 템플리트 버전에 대한 매개변수 참조 를 검토하십시오.

  3. 다음 예제 요청 중 하나를 복사하고 사용할 변수를 대체하십시오.

    버전 1.1.0 구성을 작성하기 위한 요청 예제입니다.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"aws-ebs-csi-driver\", \"storage-template-version\": \"1.1.0\", \"update-assignments\": true, \"user-config-parameters\":\"user-secret-parameters\": { \"entry.name\": \"AWS-ACCESS-KEY\",{ \"entry.name\": \"AWS-SECRET-ACCESS-KEY\",}
    

    버전 1.5.1 구성을 작성하는 예제 요청입니다.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"aws-ebs-csi-driver\", \"storage-template-version\": \"1.5.1\", \"update-assignments\": true, \"user-config-parameters\":\"user-secret-parameters\": { \"entry.name\": \"AWS-ACCESS-KEY\",{ \"entry.name\": \"AWS-SECRET-ACCESS-KEY\",}
    

    버전 1.12.0 구성을 작성하기 위한 요청의 예입니다.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"aws-ebs-csi-driver\", \"storage-template-version\": \"1.12.0\", \"update-assignments\": true, \"user-config-parameters\":\"user-secret-parameters\": { \"entry.name\": \"AWS-ACCESS-KEY\",{ \"entry.name\": \"AWS-SECRET-ACCESS-KEY\",}
    

    버전 1.31.0 구성을 작성하기 위한 예제 요청입니다.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createStorageConfigurationByController" -H "accept: application/json" -H "Authorization: TOKEN" -H "Content-Type: application/json" -d "{ \"config-name\": \"string\", \"controller\": \"string\", \"storage-class-parameters\": [ { \"additionalProp1\": \"string\", \"additionalProp2\": \"string\", \"additionalProp3\": \"string\" } ], \"storage-template-name\": \"aws-ebs-csi-driver\", \"storage-template-version\": \"1.31.0\", \"update-assignments\": true, \"user-config-parameters\":\"user-secret-parameters\": { \"entry.name\": \"AWS-ACCESS-KEY\",{ \"entry.name\": \"AWS-SECRET-ACCESS-KEY\",}
    

CLI에서 과제 만들기

  1. 스토리지 구성을 나열하고 클러스터에 할당할 스토리지 구성을 메모합니다.

    ibmcloud sat storage config ls
    
  2. 스토리지를 할당할 클러스터, 클러스터 그룹 또는 서비스의 ID를 가져옵니다.

    클러스터가 Satellite Config에 등록되어 있는지 확인하거나 그룹을 작성하려면 Satellite Config와 사용할 클러스터 설정을 참조하십시오.

    클러스터 그룹을 나열하는 명령 예제입니다.

    ibmcloud sat group ls
    

    클러스터를 나열하는 명령 예제입니다.

    ibmcloud oc cluster ls --provider satellite
    

    Satellite 서비스를 나열하는 예제 명령입니다.

    ibmcloud sat service ls --location <location>
    
  3. 이전에 검색한 클러스터, 그룹 또는 서비스에 스토리지 구성을 지정하십시오. 자세한 정보는 ibmcloud sat storage assignment create 명령을 참조하십시오.

    클러스터 그룹에 구성을 지정하는 예제 명령입니다.

    ibmcloud sat storage assignment create --group GROUP --config CONFIG --name NAME
    

    클러스터에 구성을 지정하는 예제 명령입니다.

    ibmcloud sat storage assignment create --cluster CLUSTER --config CONFIG --name NAME
    

    서비스 클러스터에 구성을 지정하는 예제 명령입니다.

    ibmcloud sat storage assignment create --service-cluster-id CLUSTER --config CONFIG --name NAME
    
  4. 지정이 작성되었는지 확인하십시오.

    ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER)
    

API에서 스토리지 지정 작성

  1. 다음 예제 요청 중 하나를 복사하십시오.

    클러스터에 구성을 지정하기 위한 요청의 다른 연결입니다.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createAssignmentByCluster" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"channelName\": \"CONFIGURATION-NAME\", \"cluster\": \"CLUSTER-ID\", \"controller\": \"LOCATION-ID\", \"name\": \"ASSIGNMENT-NAME\"}"
    

    클러스터 그룹에 구성을 지정하기 위한 요청 예제.

    curl -X POST "https://containers.cloud.ibm.com/global/v2/storage/satellite/createAssignment" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"channelName\": \"CONFIGURATION-NAME\", \"cluster\": \"string\", \"groups\": [ \"CLUSTER-GROUP\" ], \"name\": \"ASSIGNMENT-NAME\"}"
    
  2. 변수를 세부사항으로 대체하고 요청을 실행하십시오.

  3. 지정을 나열하여 지정이 작성되었는지 확인하십시오.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignments" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

콘솔에서 스토리지 지정 업데이트

Satellite 콘솔 을 사용하여 지정에 최신 패치 업데이트를 적용할 수 있습니다.

  1. Satellite 콘솔위치 페이지에서 위치를 선택하십시오.

  2. 스토리지 탭을 클릭하여 구성을 보십시오.

  3. 업데이트하려는 구성을 클릭합니다.

  4. 최신 개정판 또는 패치를 적용하려면 정보 정보 (i) 아이콘을 클릭하십시오.

  5. 선택사항: 스토리지 지정에 대해 자동 패치 업데이트를 사용으로 설정하십시오. 자동 패치 업데이트를 사용으로 설정하면 지정에 항상 최신 보안 수정사항이 포함됩니다.

자동 패치 업데이트를 사용하는 경우에도 주요 업데이트를 수동으로 적용해야 합니다.

CLI에서 수동으로 지정 업그레이드

최신 스토리지 템플리트 개정을 사용하도록 지정을 업그레이드하십시오.

  1. Satellite 스토리지 지정을 나열하고 업그레이드하려는 Satellite 지정을 기록해 두십시오.

    ibmcloud sat storage assignment ls
    
  2. Satellite 스토리지 템플리트를 나열하여 사용 가능한 최신 버전을 보십시오.

    ibmcloud sat storage template ls
    
  3. Satellite 지정을 업그레이드하십시오.

    지정을 업그레이드하는 예제 명령입니다.

    ibmcloud sat storage assignment upgrade --assignment ASSIGNMENT
    

CLI에서 구성 및 지정에 대한 자동 패치 업데이트 사용

sat storage assignment autopatch enable CLI를 사용하여 지정에 대한 자동 패치 업데이트를 사용으로 설정할 수 있습니다. 자동 패치 업데이트를 사용으로 설정하면 최신 스토리지 템플리트 개정 (패치) 이 자동으로 적용됩니다. 여전히 주요 업데이트를 수동으로 적용해야 합니다.

  1. Satellite 스토리지 구성을 나열합니다. 구성 ID를 기록해 두세요.

    ibmcloud sat storage assignment ls
    
  2. 다음 예제 명령 중 하나를 실행하여 구성 및 연관된 지정에 대한 자동 패치 업데이트를 사용으로 설정하십시오. 이전 단계에서 검색한 구성 ID를 입력합니다.

    지정에 대한 자동 패치 업데이트를 사용으로 설정하는 예제 명령입니다.

    ibmcloud sat storage assignment autopatch enable --config CONFIG  (--all | --assignment ASSIGNMENT-ID [--assignment ASSIGNMENT-ID])
    

    지정된 구성에서 모든 스토리지 지정에 대한 자동 패치 업데이트를 사용으로 설정하는 예제 명령입니다.

    ibmcloud sat storage assignment autopatch enable --config CONFIG --all
    

    특정 구성에서 모든 지정에 대해 자동 패치 업데이트를 사용하지 않도록 설정하는 예제 명령입니다.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --all
    

    단일 지정 및 특정 구성에 대한 자동 패치 업데이트를 사용 안함으로 설정하는 예제 명령입니다.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-ID
    

    다중 지정 및 특정 구성에 대한 자동 패치 업데이트를 사용 안함으로 설정하는 예제 명령입니다.

    ibmcloud sat storage assignment autopatch disable --config CONFIG --assignment ASSIGNMENT-ID --assignment ASSIGNMENT-ID
    

CLI에서 수동으로 구성 업그레이드

동일한 메이저 버전 내에서 최신 저장소 템플릿 개정판을 받으려면 Satellite 저장소 구성을 업그레이드할 수 있습니다.

  1. Satellite 스토리지 구성을 나열하고 업그레이드하려는 Satellite 구성을 기록해 두십시오.

    ibmcloud sat storage config ls
    
  2. Satellite 구성을 업그레이드하십시오. 구성만 업데이트된다는 점을 참고하십시오. 이 구성을 사용하는 지정을 업그레이드하려는 경우에는 --include-assignments 옵션을 지정하거나, assignment update 명령을 사용하여 각 지정을 수동으로 업데이트할 수 있습니다.

    구성을 최신 개정판으로 업그레이드하는 예제 명령입니다.

    ibmcloud sat storage config upgrade --config CONFIG [--include-assignments]
    

    구성을 업그레이드하는 예제 명령 및 최신 개정판에 대한 연관된 지정입니다.

    ibmcloud sat storage config upgrade --config CONFIG --include-assignments
    

API에서 구성 및 지정 업그레이드

/v2/storage/satellite/updateAssignment API를 사용하여 새 클러스터 또는 클러스터 그룹으로 지정을 업데이트할 수 있습니다. 개정 업데이트를 적용하려면 updateConfigVersiontrue 로 설정하십시오.

  1. 다음 예제 요청을 복사하고 업데이트할 클러스터 그룹 및 지정의 변수를 대체하십시오.

    curl -X PATCH "https://containers.cloud.ibm.com/global/v2/storage/satellite/updateAssignment" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d "{ \"groups\": [ \"CLUSTER-GROUPS\" ], \"name\": \"ASSIGNMENT-NAME\", \"updateConfigVersion\": true, \"uuid\": \"ASSIGNMENT-ID\"}"
    
  2. 요청을 실행하십시오.

  3. 업데이트를 확인하기 위해 지정 세부사항을 가져오십시오.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

API에서 지정에 대한 자동 패치 업데이트 사용

/v2/storage/satellite/setAssignmentAutoupgrade API를 사용하여 지정에 대한 자동 패치 업데이트를 사용으로 설정할 수 있습니다. 자동 패치 업데이트를 사용으로 설정하면 최신 스토리지 템플리트 개정 (패치) 이 자동으로 적용됩니다. 여전히 주요 업데이트를 수동으로 적용해야 합니다.

  1. 다음 예제 요청을 복사하고 업데이트할 클러스터 그룹 및 지정의 변수를 대체하십시오.

    curl -X PATCH "https://containers.cloud.ibm.com/global/v2/storage/satellite/setAssignmentAutoupgrade" -H "accept: application/json" -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" -d { "config": "string", "controller": "string", "autopatch": boolean,"assignment" : { "all": boolean, "uuid": ["string", "string", ...], } }
    
  2. 요청을 실행하십시오.

  3. 지정 세부사항을 가져와서 업그레이드를 확인하십시오.

    curl -X GET "https://containers.cloud.ibm.com/global/v2/storage/satellite/getAssignment?uuid=ASSIGNMENT-ID" -H "accept: application/json" -H "Authorization: Bearer TOKEN"
    

AWS EBS 스토리지를 사용하는 앱 배치

ebs-csi-driver를 사용하여 클러스터의 앱에 AWS EBS 스토리지를 동적으로 프로비저닝할 수 있습니다.

  1. 사용 가능한 스토리지 클래스를 나열하고 사용할 스토리지 클래스를 선택하십시오.

    oc get sc | grep ebs
    

    스토리지 클래스에 대한 세부사항을 보려면 oc describe sc <sc-name> 명령을 사용하거나 스토리지 클래스 참조를 검토하십시오.

  2. 선택한 스토리지 클래스에 설명된 특성으로 AWS EBS 스토리지 인스턴스를 프로비저닝하는 PVC를 작성하십시오. 다음 예제에서는 sat-aws-block-bronze 스토리지 클래스를 사용하여 125GB 크기의 st1 HDD AWS EBS 스토리지 인스턴스를 작성합니다. 이 볼륨 유형에 대한 자세한 내용은 하드 디스크 드라이브(HDD)를 참조하세요.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: sat-aws-block-bronze
    spec:
      accessModes:
      - ReadWriteOnce
      storageClassName: sat-aws-block-bronze
      resources:
        requests:
          storage: 125Gi
    
  3. 클러스터에 PVC를 작성하십시오.

    oc apply -f pvc.yaml
    
  4. PVC가 작성되었는지 확인하십시오. 모든 IBM 제공 스토리지 클래스는 WaitForFirstConsumer로 구성되므로 PVC를 마운트하는 앱을 프로비저닝할 때까지 PVC의 상태가 Pending으로 유지됩니다.

    oc get pvc
    

    출력 예

    NAME                   STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS           AGE
    sat-aws-block-bronze   Pending                                      sat-aws-block-bronze   17s
    
  5. 작성한 PVC를 마운트하는 팟 (Pod) 을 작성하십시오. 이 팟을 작성하면 AWS EBS 드라이버가 AWS 계정에 AWS EBS 인스턴스를 동적으로 작성하여 스토리지 요청을 이행하기 시작합니다. 다음 예제에서는 현재 날짜와 시간을 AWS EBS 볼륨 마운트 경로의 nginx 파일에 쓰는 test.txt 팟(Pod)을 작성합니다.

    apiVersion: v1
    kind: Pod
    metadata:
      name: app
    spec:
      containers:
      - name: app
        image: nginx
        command: ["/bin/sh"]
        args: ["-c", "while true; do echo $(date -u) >> /test/test.txt; sleep 5; done"]
        volumeMounts:
          - name: persistent-storage
            mountPath: /test
      volumes:
      - name: persistent-storage
        persistentVolumeClaim:
            claimName: sat-aws-block-bronze
    
  6. 클러스터에서 팟(Pod)을 작성하십시오.

    oc apply -f pod.yaml
    
  7. 팟(Pod)이 배치되었는지 확인하십시오. 스토리지 요청이 완료되고 앱이 Running 상태가 되는 데 몇 분 정도 걸릴 수 있습니다.

    oc get pods
    

    출력 예

    NAME                                READY   STATUS    RESTARTS   AGE
    app                                 1/1     Running   0          2m58s
    
  8. PVC 상태가 Bound로 변경되었는지 확인하십시오.

    oc get pvc
    

    출력 예

    NAME                 STATUS  VOLUME                                   CAPACITY   ACCESS MODES   STORAGECLASS           AGE
    sat-aws-block-bronze Bound   pvc-86d2f9f4-78d4-4bb2-ab73-39726d144981 125Gi      RWO            sat-aws-block-bronze   33m
    

    PVC가 Pending 상태로 유지되는 경우 oc describe pvc <pvc_name> 명령을 실행하여 PVC에 대한 세부사항을 가져와 AWS EBS 스토리지 인스턴스를 프로비저닝하는 동안 발생한 오류를 확인하십시오.

  9. 앱이 AWS EBS 인스턴스에 기록할 수 있는지 확인하십시오.

    1. 팟(Pod)에 로그인하십시오.
      oc exec <app_pod_name> -it bash
      
    2. test.txt 파일의 컨텐츠를 표시하여 앱이 지속적 스토리지에 데이터를 쓸 수 있는지 확인하십시오.
      cat /test/test.txt
      
      출력 예
      Tue Mar 2 20:09:19 UTC 2021
      Tue Mar 2 20:09:25 UTC 2021
      Tue Mar 2 20:09:31 UTC 2021
      Tue Mar 2 20:09:36 UTC 2021
      Tue Mar 2 20:09:42 UTC 2021
      Tue Mar 2 20:09:47 UTC 2021
      
    3. 팟(Pod)을 종료하십시오.
      exit
      
  10. 스토리지 인스턴스가 AWS에 작성되었는지 확인하십시오.

  11. PVC에 대해 작성된 PV를 나열하십시오.

    oc get pv
    
  12. PV의 세부사항을 가져오고 source.volumeHandle 필드에 작성된 AWS EBS 인스턴스의 ID를 기록해 두십시오.

    oc describe pv <pv_name>
    
  13. AWS EC2 대시보드에서 Elastic Block Store > 볼륨을 선택합니다.

  14. 앞서 검색한 ID를 사용하여 AWS EBS 볼륨을 찾으십시오.

앱에서 AWS EBS 스토리지 제거

AWS EBS 인스턴스가 더 이상 필요하지 않은 경우 AWS 계정에서 PVC, PV 및 AWS EBS 인스턴스를 제거할 수 있습니다.

AWS EBS 인스턴스를 제거하면 이 인스턴스에 저장된 모든 데이터가 영구적으로 제거됩니다. 이 조치는 실행 취소할 수 없습니다. AWS EBS 인스턴스를 삭제하기 전에 데이터를 백업해야 합니다.

  1. PVC를 나열하고 제거할 PVC의 이름을 기록하십시오.
    oc get pvc
    
  2. PVC를 마운트하는 팟(Pod)을 제거하십시오.
    1. 삭제할 PVC를 현재 마운트하는 모든 팟(Pod)을 나열하십시오. 팟(Pod)이 리턴되지 않으면 현재 PVC를 사용하는 팟(Pod)이 없는 것입니다.
      oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"
      
      출력 예
      app    sat-aws-block-bronze
      
    2. PVC를 사용하는 팟(Pod)을 제거하십시오. 팟(Pod)이 배치의 일부인 경우에는 배치를 제거하십시오.
      oc delete pod <pod_name>
      
      oc delete deployment <deployment_name>
      
    3. 팟(Pod) 또는 배치가 제거되었는지 확인하십시오.
      oc get pods
      
      oc get deployments
      
  3. PVC를 삭제하십시오. 모든 IBM 제공 AWS EBS 스토리지 클래스는 Delete 재확보 정책으로 지정되므로 PVC를 삭제하면 AWS 계정의 PV 및 AWS EBS 인스턴스가 자동으로 삭제됩니다.
    oc delete pvc <pvc_name>
    
  4. 스토리지가 제거되었는지 확인하십시오.
    1. PV가 자동으로 제거되었는지 확인하십시오.
      oc get pv
      
    2. AWS EC2 대시보드에서 Elastic Block Store > 볼륨을 선택하고 AWS EBS 인스턴스가 제거되었는지 확인합니다.

클러스터에서 AWS EBS 스토리지 구성 제거

더 이상 클러스터에서 AWS EBS 스토리지를 사용할 계획이 없는 경우 스토리지 구성에서 클러스터를 지정 해제할 수 있습니다.

스토리지 구성을 삭제하기 전에 스토리지 지정을 삭제해야 합니다.

스토리지 구성을 제거하면 드라이버가 지정된 모든 클러스터에서 설치 제거됩니다. PVC, PV 및 데이터는 제거되지 않습니다. 그러나 클러스터에 드라이버를 다시 설치할 때까지 데이터에 액세스하지 못할 수도 있습니다.

콘솔에서 스토리지 구성 제거하기

  1. Satellite 스토리지 대시보드에서 삭제할 스토리지 구성을 선택하십시오.
  2. 작업 > 삭제를 선택합니다.
  3. 스토리지 구성의 이름을 입력하십시오.
  4. 삭제를 선택하십시오.

CLI에서 AWS EBS 스토리지 구성 제거

CLI를 사용하여 AWS EBS 스토리지 구성을 제거하십시오.

스토리지 구성을 삭제하기 전에 스토리지 지정을 삭제해야 합니다.

  1. 스토리지 지정을 나열하고 클러스터에 사용한 지정을 찾으십시오.
    ibmcloud sat storage assignment ls (--cluster CLUSTER | --config CONFIG | --location LOCATION | --service-cluster-id CLUSTER)
    
  2. 지정을 제거하십시오. 지정이 제거되면 AWS EBS 드라이버 팟(Pod) 및 스토리지 클래스가 스토리지 지정의 파트였던 모든 클러스터에서 제거됩니다.
    ibmcloud sat storage assignment rm --assignment <assignment_ID>
    
  3. AWS EBS 드라이버가 클러스터에서 제거되었는지 확인하십시오.
    1. 클러스터의 스토리지 클래스를 나열하고 AWS EBS 스토리지 클래스가 제거되었는지 확인하십시오.
      oc get sc
      
    2. kube-system 네임스페이스의 팟(Pod)을 나열하고 AWS EBS 스토리지 드라이버 팟(Pod)이 제거되었는지 확인하십시오.
      oc get pods -n kube-system | grep ebs
      
    3. kube-system 네임스페이스에 있는 시크릿을 나열하고 AWS 인증 정보를 저장한 AWS 시크릿이 제거되었는지 확인하십시오.
      oc get secrets -n kube-system | grep aws
      
  4. 선택사항: 스토리지 구성을 제거하십시오.
    1. 스토리지 구성을 나열하십시오.
      ibmcloud sat storage config ls
      
    2. 스토리지 구성을 제거하십시오.
      ibmcloud sat storage config rm --config <config_name>
      

매개변수 참조

1.1.0 매개변수 참조

표 1. 1.1.0 매개변수 참조
표시 이름 CLI 옵션 유형 설명 기본값
AWS 액세스 키 ID aws-access-key 시크릿 AWS 액세스 키 ID. 해당사항 없음
AWS 시크릿 액세스 키 aws-secret-access-key 시크릿 AWS 시크릿 액세스 키. 해당사항 없음

1.5.1 매개변수 참조

표 2. 1.5.1 매개변수 참조
표시 이름 CLI 옵션 유형 설명 기본값
AWS 액세스 키 ID aws-access-key 시크릿 AWS 액세스 키 ID. 해당사항 없음
AWS 시크릿 액세스 키 aws-secret-access-key 시크릿 AWS 시크릿 액세스 키. 해당사항 없음

1.12.0 매개변수 참조

표 3. 1.12.0 매개변수 참조
표시 이름 CLI 옵션 유형 설명 기본값
AWS 액세스 키 ID aws-access-key 시크릿 AWS 액세스 키 ID. 해당사항 없음
AWS 시크릿 액세스 키 aws-secret-access-key 시크릿 AWS 시크릿 액세스 키. 해당사항 없음

1.31.0 매개변수 참조

표 4. 1.31.0 매개변수 참조
표시 이름 CLI 옵션 유형 설명 기본값
AWS 액세스 키 ID aws-access-key 시크릿 AWS 액세스 키 ID. 해당사항 없음
AWS 시크릿 액세스 키 aws-secret-access-key 시크릿 AWS 시크릿 액세스 키. 해당사항 없음

AWS EBS 에 대한 스토리지 클래스 참조

AWS EBS의 Satellite 스토리지 클래스를 검토하십시오. 명령행에서 oc describe sc <storage-class-name> 명령을 사용하여 스토리지 클래스를 설명할 수 있습니다. 데이터 볼륨은 AWS 관리 기본 키를 사용하여 자동으로 암호화됩니다. 자세한 내용은 EBS 암호화를 위한 기본 KMS 키를 참조하세요. AWS EBS 암호화에 대한 자세한 내용은 AWS EBS 암호화 작동 방식을 참조하세요.

AWS EBS 스토리지 클래스 참조
스토리지 클래스 이름 EBS 볼륨 유형 파일 시스템 유형 프로비저너 GB당 기본 IOPS 크기 범위 하드 디스크 암호화 여부 볼륨 바인딩 모드 재확보 정책 자세한 정보
sat-aws-block-gold 기본값 io2 ext4 ebs.csi.aws.com 10 10GiB - 6.25TiB SSD WaitforFirstConsumer 삭제 링크
sat-aws-block-silver gp3 ext4 ebs.csi.aws.com 해당사항 없음 1GiB - 16TiB SSD WaitforFirstConsumer 삭제 링크
sat-aws-block-bronze st1 ext4 ebs.csi.aws.com 해당사항 없음 125GiB - 16TiB HDD WaitforFirstConsumer 삭제 링크
sat-aws-block-bronze-metro st1 ext4 ebs.csi.aws.com 해당사항 없음 125GiB - 16TiB HDD WaitforFirstConsumer 삭제 링크
sat-aws-block-silver-metro gp3 ext4 ebs.csi.aws.com 1GiB - 16TiB SSD WaitforFirstConsumer 삭제 링크
sat-aws-block-gold-metro io2 ext4 ebs.csi.aws.com 10 10GiB - 6.25TiB SSD WaitforFirstConsumer 삭제 링크

AWS EBS 에 대한 도움 및 지원 받기

AWS EBS 스토리지를 사용하는 경우 지원 케이스를 열기 전에 다음 자원을 시도하십시오.

  1. AWS Knowledge Center에서 FAQ를 검토하십시오.
  2. 문제점 해결 문서 를 검토하여 공통 문제를 해결하십시오.
  3. 상태 페이지로 이동하여 IBM Cloud 플랫폼 및 리소스의 상태를 확인하세요.
  4. 스택 오버플로우 를 검토하여 다른 사용자에게 동일한 문제점이 발생했는지 확인하십시오. ibm-cloudAWS-EBS 로 질문에 태그를 지정하십시오.
  5. AWS 지원 센터 는 보다 자세한 지원 옵션을 찾는 AWS 고객이 사용할 수 있는 또 다른 자원입니다.