Migration von VPC Block Storage von HPCS zu Key Protect
Migrieren Sie Ihre Hyper Protect Crypto Services (HPCS) Verschlüsselung für VPC Block Storage Volumes und verwenden Sie stattdessen IBM Key Protect ( Key Protect ).
Vorbereitende Schritte
Wenn Sie dies noch nicht getan haben, lesen Sie die Informationen in der Migrationsübersicht, um festzustellen, ob Sie Ihre VPC-Blockspeicher-Volumes auf Key Protect statt auf HPCS migrieren müssen.
Voraussetzungen für die Migration
Führen Sie diese Schritte aus, bevor Sie mit der Migration beginnen.
-
Erstellen Sie eine neue oder verwenden Sie eine vorhandene IBM Key Protect Dedicated-Instanz.
-
Notieren Sie sich in der Instanz Key Protect die CRN des Zielkundenstammschlüssels (CRK).
ibmcloud kp keys -i KP-INSTANCE-ID -
Stellen Sie sicher, dass VPC Block Storage Lesezugriff auf die Instanz Key Protect hat. Möglicherweise müssen Sie den Zugriff mit Hilfe von IAM zuweisen. Dieser Zugang kann kontoübergreifend sein und muss korrekt konfiguriert werden, bevor Sie fortfahren.
-
Falls Sie dies noch nicht getan haben, laden Sie die Migrationswerkzeuge herunter, die Sie in der Migrationsübersicht finden.
Migrationsschritte
Folgen Sie diesen Schritten, um Ihre VPC Block Storage Volumes von HPCS nach Key Protect zu migrieren.
-
Erstellen Sie eine Datei CSV, die Ihre HPCS-Quell-CRK auf die Ziel-CRK Key Protect abbildet.
- Ermitteln Sie die CRN Ihres HPCS-Root-Schlüssels.
ibmcloud resource service-instance <hpcs-instance-name> ``` 2. Ermitteln Sie die CRN Ihres Key Protect Root-Schlüssels. ```sh {: pre} ibmcloud resource service-instance <kp-instance-name> ``` 3. Erstellen Sie eine Datei CSV (z. B. `hpcs-kms-migration.csv`) mit folgendem Format: ```csv {: codeblock} <source-hpcs-crk-crn>,<destination-kp-crk-crn> ``` Beispiel: ```csv {: codeblock} crn:v1:staging:public:hs-crypto:us-south:a/1152aa1c1ec54274ac42b807c90c:0ce92f39-69fd-4200-ba53-5ed555689:key:43eb6a-5451-4ea1-8080-0ca2d6cc7,crn:v1:staging:public:kms:us-south:a/1152aa1c1ec54274ac4ad8507c90c:b2ee9d-b658-4939-bb63-ffb6e7442:key:8cf424f4-bd6a-4de9-8ad5-5c60332de ``` -
Richten Sie die erforderlichen Umgebungsvariablen für das Migrationstool ein.
Wenn Sie über mehrere KMS-Instanzen verfügen, stellen Sie sicher, dass die in diesem Schritt verwendeten Endpunkte mit der Instanz übereinstimmen, die Sie migrieren möchten.
- Exportieren Sie die erforderlichen Umgebungsvariablen. Ersetzen Sie die Platzhalterwerte durch Ihre tatsächlichen Endpunkte und API-Schlüssel.
export HPCS_API_ENDPOINT=https://<hpcs-instance-id>.api.<region>.hs-crypto.appdomain.cloud export KP_ST_ENDPOINT=https://<kp-instance-id>.api.<region>.kms.appdomain.cloud export IBMCLOUD_API_KEY=<api-key-with-access-to-kms-and-hpcs> export IBMCLOUD_API_KEY_KP_ST=$IBMCLOUD_API_KEY ``` Für Staging-Umgebungen, auch einstellen: ```sh {: pre} export IBMCLOUD_STAGE=true export DEBUG_MODE=true ``` -
Validieren Sie die Datei CSV und überprüfen Sie den aktuellen Migrationsstatus. Beachten Sie, dass die Datei „ CSV “ mehrere Einträge enthalten kann, wenn mehrere Schlüssel verwendet werden.
- Führen Sie den Befehl „status“ aus, um Ihre Konfiguration zu überprüfen.
./crk-migration-tool-darwin-arm64-1.1.0 status hpcs-kms-migration.csv ``` 2. Überprüfen Sie die Ausgabe, um sicherzustellen, dass die Quell- und Ziel-CRKs korrekt identifiziert sind. -
Erstellen Sie die CRK-Migrationsabsicht unter Verwendung der Datei CSV.
- Führen Sie den Befehl create aus, um die Migrationsabsicht festzulegen.
./crk-migration-tool-darwin-arm64-1.1.0 create hpcs-kms-migration.csv ``` 2. Überprüfen Sie, ob der Intent erfolgreich erstellt wurde, indem Sie die Befehlsausgabe überprüfen. -
Führen Sie die eigentliche CRK-Migration durch, indem Sie die Absicht synchronisieren. Beachten Sie bitte, dass bei Verwendung desselben Schlüssels in mehreren Clustern auch alle Volumes migriert werden, die diesen Schlüssel in diesen Clustern verwenden.
- Führen Sie den Synchronisierungsbefehl aus, um die Migration durchzuführen.
./crk-migration-tool-darwin-arm64-1.1.0 sync hpcs-kms-migration.csv ``` 2. Warten Sie, bis der Synchronisierungsvorgang abgeschlossen ist. Dieser Prozess migriert die Verschlüsselungsschlüssel für Ihre Volumes. -
Stellen Sie sicher, dass Ihre Datenträger nun auf das Key Protect CRK verweisen.
Sie müssen lediglich die Volumes überprüfen, die Sie migriert haben. Wenn Sie das Erkennungsskript verwendet haben, um aufzulisten, welche Volumes den HPCS-Schlüssel verwenden, überprüfen Sie die in der Ausgabe aufgeführten Volumes.
- Listen Sie Ihre Persistent Volumes auf und notieren Sie die Volume-IDs.
kubectl get pv ``` 2. Beschreiben Sie ein Persistent Volume, um die Volume-ID zu erhalten. ```sh {: pre} kubectl describe pv <pv-name> ``` 3. Überprüfen Sie die Volume-Details mit der IBM Cloud CLI. ```sh {: pre} ibmcloud is volume <volume-id> ``` 4. Vergewissern Sie sich in der Ausgabe, dass das Feld `Encryption Key` jetzt auf die CRK-CRN Ihrer Key Protect-Instanz statt auf die HPCS-Instanz verweist. -
Aktualisieren Sie Ihre Speicherklassen, um sicherzustellen, dass alle zukünftigen PVCs den Key Protect CRK verwenden.
Sie müssen diesen Schritt nur für die Speicherklassen ausführen, die Sie migriert haben. Wenn Sie das Erkennungsskript verwendet haben, um aufzulisten, welche Speicherklassen den HPCS-Schlüssel verwenden, führen Sie diesen Schritt für die in der Ausgabe aufgeführten Klassen durch.
- Listen Sie Ihre bestehenden Speicherklassen auf.
kubectl get storageclass ``` 2. Identifizieren Sie Speicherklassen, die in ihren Parametern auf den HPCS CRK verweisen. 3. Löschen Sie die HPCS-gestützten Speicherklassen. ```sh {: pre} kubectl delete storageclass <storageclass-name> ``` 4. Erstellen Sie neue Speicherklassen mit der Key Protect CRK CRN. Verwenden Sie das folgende Beispiel als Vorlage: ```yaml {: codeblock} apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ibmc-vpc-block-kms provisioner: vpc.block.csi.ibm.io parameters: profile: "general-purpose" encrypted: "true" encryptionKey: "<key-protect-crk-crn>" csi.storage.k8s.io/fstype: "ext4" reclaimPolicy: Delete allowVolumeExpansion: true volumeBindingMode: WaitForFirstConsumer ``` 5. Wenden Sie die neue Speicherklasse an. ```sh {: pre} kubectl apply -f <storageclass-file> ```
Nächste Schritte
- Überprüfen Sie, ob Ihre Anwendungen mit den migrierten Volumes weiterhin korrekt funktionieren.
- Überwachen Sie Ihre Key Protect Instanz auf Zugriffs- oder Verschlüsselungsprobleme.
- Aktualisieren Sie Ihre Dokumentation und Runbooks, um die neue Key Protect Konfiguration zu berücksichtigen.
- Erwägen Sie die Einrichtung von Schlüsselrotationsrichtlinien für Ihre Key Protect Root-Schlüssel.