5.2. 永続ボリュームの暗号化のためのストレージクラスの作成
前提条件
ユースケースに基づいて、以下のいずれかの KMS へのアクセスを確実に設定する必要があります。
-
vaulttokensの使用:vaulttokensを使用したアクセス権の設定 の説明に従って、アクセスを確実に設定してください。 -
vaulttenantsaの使用 (テクノロジープレビュー):vaulttenantsaを使用したアクセス権の設定 の説明に従って、アクセスを確実に設定してください。 - Thales CipherTrust Manager の使用 (KMIP を使用): Thales CipherTrust Manager を使用した KMS へのアクセスの設定 の説明に従って、アクセスを設定してください。
手順
-
OpenShift Web コンソールで、Storage
Storage Classes に移動します。 - Create Storage Class をクリックします。
- ストレージクラスの Name および Description を入力します。
- Reclaim Policy について Delete または Retain のいずれかを選択します。デフォルトでは、Delete が選択されます。
- Immediate または WaitForFirstConsumer を Volume binding モード として選択します。WaitForConsumer はデフォルトオプションとして設定されます。
-
永続ボリュームをプロビジョニングするために使用されるプラグインである RBD Provisioner
openshift-storage.rbd.csi.ceph.comを選択します。 - ボリュームデータが保存される Storage Pool をリストから選択するか、新規プールを作成します。
Enable encryption チェックボックスを選択します。KMS 接続の詳細を設定するオプションは 2 つあります。
既存の KMS 接続の選択: ドロップダウンリストから既存の KMS 接続を選択します。このリストは、
csi-kms-connection-detailsConfigMap で利用可能な接続の詳細から設定されます。- ドロップダウンから Provider を選択します。
- リストから特定のプロバイダーの Key service を選択します。
Create new KMS connection: これは、
vaulttokenとThales CipherTrust Manager (using KMIP)にのみ適用されます。- Key Management Service Provider を選択します。
Key Management Service Provider として
Vaultが選択されている場合は、次の手順に従います。- Vault サーバーの一意の 接続名、ホスト アドレス、ポート番号および トークン を入力します。
Advanced Settings をデプロイメントして、
Vault設定に基づいて追加の設定および証明書の詳細を入力します。- OpenShift Data Foundation 専用かつ特有のキーと値のシークレットパスを Backend Path に入力します。
- オプション: TLS Server Name および Vault Enterprise Namespace を入力します。
- PEM でエンコードされた、該当の証明書ファイルをアップロードし、CA Certificate、Client Certificate、および Client Private Key を指定します。
- Save をクリックします。
Key Management Service Provider として
Thales CipherTrust Manager (using KMIP)が選択されている場合は、次の手順に従います。- 一意の Connection Name を入力します。
- Address および Port セクションで、Thales CipherTrust Manager の IP と、KMIP インターフェイスが有効になっているポートを入力します。たとえば、Address: 123.34.3.2、Port: 5696 などです。
- Client Certificate、CA certificate、および Client Private Key をアップロードします。
- 上記で生成された暗号化および復号化に使用する鍵の Unique Identifier を入力します。
-
TLS Server フィールドはオプションであり、KMIP エンドポイントの DNS エントリーがない場合に使用します。たとえば、
kmip_all_<port>.ciphertrustmanager.localなどです。
- Save をクリックします。
- Create をクリックします。
HashiCorp Vault 設定により、バックエンドパスによって使用されるキー/値 (KV) シークレットエンジン API バージョンの自動検出が許可されない場合は、ConfigMap を編集して
vaultBackendパラメーターを追加します。注記vaultBackendは、バックエンドパスに関連付けられた KV シークレットエンジン API のバージョンを指定するために configmap に追加されるオプションのパラメーターです。値がバックエンドパスに設定されている KV シークレットエンジン API バージョンと一致していることを確認します。一致しない場合には、永続ボリューム要求 (PVC) の作成時に失敗する可能性があります。新規に作成されたストレージクラスによって使用されている encryptionKMSID を特定します。
-
OpenShift Web コンソールで、Storage
Storage Classes に移動します。 -
Storage class 名
YAML タブをクリックします。 ストレージクラスによって使用されている encryptionKMSID を取得します。
以下に例を示します。
encryptionKMSID: 1-vault
encryptionKMSID: 1-vaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
OpenShift Web コンソールで、Storage
-
OpenShift Web コンソールで Workloads
ConfigMaps に移動します。 - KMS 接続の詳細を表示するには、csi-kms-connection-details をクリックします。
ConfigMap を編集します。
-
アクションメニュー (⋮)
Edit ConfigMap をクリックします。 以前に特定した
encryptionKMSIDに設定されるバックエンドに応じて、vaultBackendパラメーターを追加します。KV シークレットエンジン API バージョン 1 の場合は
kvを、KV シークレットエンジン API バージョン 2 の場合はkv-v2を、それぞれ割り当てることができます。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 保存をクリックします。
-
アクションメニュー (⋮)
次のステップ
ストレージクラスを使用して、暗号化された永続ボリュームを作成できます。詳細は、永続ボリューム要求の管理 を参照してください。
重要Red Hat はテクノロジーパートナーと連携して、本書をお客様へのサービスとして提供します。ただし、Red Hat では、HashiCorp 製品のサポートを提供していません。この製品に関するテクニカルサポートについては、HashiCorp にお問い合わせください。