5.2. 영구 볼륨 암호화를 위한 스토리지 클래스 생성

사전 요구 사항

사용 사례에 따라 다음 중 하나에 대해 KMS에 대한 액세스를 구성해야 합니다.

절차

  1. OpenShift 웹 콘솔에서 스토리지 → StorageClasses로 이동 합니다.
  2. 스토리지 클래스 생성을 클릭합니다.
  3. 스토리지 클래스 Name (이름) 및 Description (설명)을 입력합니다.
  4. 회수 정책에 대해 삭제 또는 유지를 선택합니다. 기본적으로 삭제 가 선택됩니다.
  5. 볼륨 바인딩 모드로 Immediate 또는 WaitForFirstConsumer 를 선택합니다. WaitForConsumer 가 기본 옵션으로 설정됩니다.
  6. 영구 볼륨을 프로비저닝하는 데 사용되는 플러그인인 RBD Provisioner openshift-storage.rbd.csi.ceph.com 을 선택합니다.
  7. 볼륨 데이터 가 목록에서 저장되는 스토리지 풀을 선택하거나 새 풀을 생성합니다.
  8. Enable encryption (암호 활성화) 확인란을 선택합니다. KMS 연결 세부 정보를 설정하는 데는 두 가지 옵션이 있습니다.

    • 기존 KMS 연결 선택: 드롭다운 목록에서 기존 KMS 연결을 선택합니다. 목록은 the csi-kms-connection-details ConfigMap에서 사용할 수 있는 연결 세부 사항에서 채워집니다.
    • 새로운 KMS 연결 만들기: 이는 vaulttokens 에만 적용됩니다.

      1. Key Management Service Provider 는 기본적으로 Vault로 설정됩니다.
      2. Vault 서버의 고유한 연결 이름, 호스트 주소 ('https://<hostname 또는 ip>'), 포트 번호 및 토큰을 입력합니다.
      3. 고급 설정을 확장하여 Vault 구성에 따라 추가 설정 및 인증서 세부 정보를 입력합니다.

        1. OpenShift Data Foundation에 고유한 백엔드 경로에 Key Value(키값 ) 시크릿 경로를 입력합니다.
        2. 선택 사항: TLS Server NameVault Enterprise Namespace를 입력합니다.
        3. 각 PEM 인코딩 인증서 파일을 업로드하여 CA 인증서,클라이언트 인증서클라이언트 개인 키를 제공합니다.
        4. 저장을 클릭합니다.
      4. 저장을 클릭합니다.
  9. 생성을 클릭합니다.
  10. HashiCorp Vault 설정에서 백엔드 경로에서 사용하는 KV(Key/Value) 시크릿 엔진 API 버전을 자동으로 탐지하지 못하는 경우 ConfigMap을 편집하여 vaultBackend 매개변수를 추가합니다.

    참고

    vaultBackend 는 백엔드 경로와 연결된 KV 시크릿 엔진 API 버전을 지정하기 위해 configmap에 추가되는 선택적 매개변수입니다. 값이 백엔드 경로에 설정된 KV 시크릿 엔진 API 버전과 일치하는지 확인합니다. 그렇지 않으면 PVC(영구 볼륨 클레임) 생성 중에 실패할 수 있습니다.

    1. 새로 생성된 스토리지 클래스에서 사용 중인 암호화KMSID를 식별합니다.

      1. OpenShift 웹 콘솔에서 스토리지 → 스토리지 클래스로 이동합니다.
      2. 스토리지 클래스 이름 → YAML 탭을 클릭합니다.
      3. 스토리지 클래스에서 사용 중인 encryptionKMSID 를 캡처합니다.

        예제:

        encryptionKMSID: 1-vault
    2. OpenShift 웹 콘솔에서 워크로드ConfigMaps 로 이동합니다.
    3. KMS 연결 세부 정보를 보려면 click csi-kms-connection-details 를 클릭합니다.
    4. ConfigMap을 편집합니다.

      1. 작업 메뉴 (TI)ConfigMap 편집을 클릭합니다.
      2. 이전에 식별된 암호화KMSID 에 대해 구성된 백엔드에 따라 vaultBackend 매개변수를 추가합니다.

        KV 시크릿 엔진 API에 kv, 버전 1 및 kv-v2 를 KV 시크릿 엔진 API 버전 2에 할당할 수 있습니다.

        예제:

         kind: ConfigMap
         apiVersion: v1
         metadata:
           name: csi-kms-connection-details
         [...]
         data:
           1-vault: |-
             {
               "encryptionKMSType": "vaulttokens",
               "kmsServiceName": "1-vault",
               [...]
               "vaultBackend": "kv-v2"
             }
           2-vault: |-
             {
               "encryptionKMSType": "vaulttenantsa",
               [...]
               "vaultBackend": "kv"
             }
      3. 저장을 클릭합니다.

다음 단계

  • 스토리지 클래스를 사용하여 암호화된 영구 볼륨을 만들 수 있습니다. 자세한 내용은 영구 볼륨 클레임 관리를 참조하십시오.

    중요

    Red Hat은 기술 파트너와 협력하여 이 문서를 고객에게 서비스로 제공하고 있습니다. 그러나 Red Hat은 H¢Corp 제품을 지원하지 않습니다. 이 제품에 대한 기술 지원이 필요한 경우 H¢ Corp에 문의하십시오.