Kundenverwaltete Verschlüsselungsschlüssel für Managed Lustre

Google Cloud Managed Lustre verschlüsselt ruhende Kundeninhalte standardmäßig. Die Verschlüsselung wird von Managed Lustre übernommen. Weitere Maßnahmen Ihrerseits sind nicht erforderlich. Diese Option heißt Google-Standardverschlüsselung.

Wenn Sie Ihre Verschlüsselungsschlüssel selbst verwalten möchten, können Sie kundenverwaltete Verschlüsselungsschlüssel (CMEKs, Customer-Managed Encryption Keys) in Cloud KMS mit CMEK-integrierten Diensten wie Managed Lustre verwenden. Mit Cloud KMS-Schlüsseln haben Sie die Kontrolle über Schutzlevel, Speicherort, Rotationszeitplan, Nutzungs- und Zugriffsberechtigungen sowie über kryptografische Grenzen. Mit Cloud KMS können Sie außerdem die Schlüsselnutzung verfolgen, Audit-Logs aufrufen und den Lebenszyklus von Schlüsseln steuern. Statt es Google zu überlassen, die symmetrischen Schlüsselverschlüsselungsschlüssel (Key Encryption Keys, KEKs) zum Schutz Ihrer Daten zu besitzen und zu verwalten, können Sie diese auch über Cloud KMS steuern und verwalten.

Nachdem Sie Ihre Ressourcen mit CMEKs eingerichtet haben, ähnelt der Zugriff auf Ihre Managed Lustre-Ressourcen der Verwendung der Google-Standardverschlüsselung. Weitere Informationen zu Ihren Verschlüsselungsoptionen finden Sie unter Kundenverwaltete Verschlüsselungsschlüssel (CMEK).

Die folgenden verwalteten Lustre-Daten sind durch CMEK geschützt:

  • Dateidaten
  • Dateisystemmetadaten wie Dateinamen

Wenn Sie CMEK in Managed Lustre verwenden, können Ihre Projekte Kontingente für kryptografische Cloud KMS-Anfragen verbrauchen. Bei CMEK-verschlüsselten Instanzen werden Kontingente beim Lesen oder Schreiben von Daten in Managed Lustre verbraucht. Ver- und Entschlüsselungsvorgänge über CMEK-Schlüssel wirken sich nur dann auf Cloud KMS-Kontingente aus, wenn Sie Hardware- (Cloud HSM) oder externe Schlüssel (Cloud EKM) verwenden. Weitere Informationen finden Sie unter Cloud KMS-Kontingente.

Beschränkungen

Die dynamische Bereitstellung von CMEK-geschützten verwalteten Lustre-Instanzen wird in Google Kubernetes Engine nicht unterstützt, die statische Bereitstellung jedoch schon.

Das Cluster Toolkit unterstützt keine CMEK-geschützten verwalteten Lustre-Instanzen.

VPC Service Controls unterstützt keine CMEK-geschützten verwalteten Lustre-Instanzen. Wenn Sie versuchen, eine CMEK-geschützte Instanz innerhalb eines VPC Service Controls-Perimeters zu erstellen, schlägt der Vorgang zum Erstellen der Instanz fehl.

Cloud KMS-Schlüssel erstellen

Bevor Sie eine CMEK-fähige Lustre-Instanz erstellen, benötigen Sie einen Cloud KMS-Schlüsselbund und einen Cloud KMS-Schlüssel.

Managed Lustre unterstützt drei Schutzstufen:

  • Software (SOFTWARE)
  • Hardware (HSM)
  • Extern über das Internet (EXTERNAL)

Wir empfehlen, den Cloud KMS-Schlüssel in einem anderen Projekt als dem Projekt zu erstellen, das Ihre Managed Lustre-Instanz enthält. Weitere Informationen finden Sie unter Aufgabentrennung.

Der Cloud KMS-Schlüssel muss in derselben Region wie die Managed Lustre-Instanz erstellt werden, die Sie erstellen.

So erstellen Sie einen Schlüssel:

  1. Erstellen Sie einen Schlüsselbund, falls Sie noch keinen haben.
  2. Cloud KMS-Schlüssel erstellen

Dem Managed Lustre-Dienst-Agent IAM-Berechtigungen erteilen

Managed Lustre verwendet einen Dienst-Agent, um auf Ihre Ressourcen zuzugreifen und Aktionen in Ihrem Namen auszuführen. Sie weisen dem Dienst-Agent IAM-Rollen zu, um den Zugriff zu verwalten. Der Managed Lustre-Dienst-Agent wird automatisch erstellt, wenn Sie eine Managed Lustre-Instanz erstellen.

Die Dienst-Agent-Identität hat das Format service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com.

Google Cloud Console-Nutzer

Wenn Sie Ihr CMEK-geschütztes Managed Lustre-Dateisystem mit der Google Cloud -Konsole erstellen, können Sie diesen Abschnitt überspringen. In der Google Cloud -Konsole werden die erforderlichen Berechtigungen im Rahmen des Instanzerstellungsprozesses gewährt.

CMEK-fähige Managed Lustre-Instanz erstellen

Dienst-Agent erstellen oder abrufen

Wenn Sie noch keinen Managed Lustre-Dienst-Agent haben

Wenn Sie noch nie eine verwaltete Lustre-Instanz im Projekt erstellt haben, führen Sie den folgenden Befehl aus, um den Dienst-Agent manuell zu erstellen:

gcloud beta services identity create \
  --service=lustre.googleapis.com \
  --project=PROJECT_NUMBER_OR_ID

Ersetzen Sie PROJECT_NUMBER_OR_ID durch die Projektnummer oder ID des Projekts, in dem Sie die Managed Lustre-Instanz erstellen möchten. Die Ausgabe sieht etwa so aus:

Service identity created: service-1234567890@gcp-sa-lustre.iam.gserviceaccount.com

Kopieren Sie den Wert der Dienst-Agent-Identität, der im nächsten Schritt verwendet werden soll.

Wenn Sie bereits eine Managed Lustre-Instanz erstellt haben

  1. Um die Dienst-Agent-Identität zu erstellen, benötigen Sie Ihre Projektnummer. Eine PROJECT_NUMBER ist nicht dasselbe wie eine Projekt-ID:

    • Eine Projekt-ID ist ein eindeutiger String, der eine Kombination aus Buchstaben, Zahlen und Bindestrichen sein kann. Sie geben eine Projekt-ID an, wenn Sie Ihr Projekt erstellen. Beispiel: example-project-123.
    • Die Projektnummer ist eine automatisch generierte eindeutige Kennung für Ihr Projekt, die nur aus Zahlen besteht. Beispiel: 1234567890.

    Verwenden Sie den Befehl gcloud projects describe, um die PROJECT_NUMBER für eine bestimmte Projekt-ID abzurufen:

    gcloud projects describe PROJECT_ID --format="value(projectNumber)"
    
  2. Kopieren Sie die zurückgegebene Projektnummer in die Dienst-Agent-Identität:

    service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com
    
  3. Kopieren Sie die Identität des Service-Agents, um sie im nächsten Schritt zu verwenden.

Berechtigungen für den Dienst-Agent erteilen

Für verwaltete Lustre-Instanzen ist eine Autorisierung erforderlich, um Vorgänge mit Ihrem Schlüssel auszuführen.

Sie müssen dem Managed Lustre-Dienst-Agenten die IAM-Rolle roles/cloudkms.cryptoKeyEncrypterDecrypter für Ihren Cloud KMS-Schlüssel zuweisen.

Führen Sie den Befehl gcloud kms keys add-iam-policy-binding aus:

gcloud kms keys add-iam-policy-binding KEY_NAME \
  --keyring=KEY_RING \
  --location=REGION \
  --project=KMS_PROJECT_ID \
  --member=serviceAccount:service-SERVICE_AGENT_IDENTITY \
  --role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Ersetzen Sie die folgenden Variablen:

  • KEY_NAME: Der Name Ihres Cloud KMS-Schlüssels.
  • KEY_RING: Der Name des Schlüsselbunds, der den Schlüssel enthält.
  • REGION: Die Region, in der sich Ihr Schlüsselbund befindet.
  • KMS_PROJECT_ID: Die ID des Projekts, das Ihren Cloud KMS-Schlüssel enthält.
  • SERVICE_AGENT_IDENTITY: Die Identität des Managed Lustre-Kundenservicemitarbeiters aus dem vorherigen Schritt im Format service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com.

CMEK-fähige Managed Lustre-Instanz erstellen

So erstellen Sie eine Managed Lustre-Instanz, die durch CMEK geschützt ist:

gcloud

Wenn Sie eine CMEK-geschützte Instanz mit gcloud erstellen möchten, folgen Sie der Anleitung unter Instanz erstellen. Geben Sie die Schlüssel-ID als Wert von --kms-key-name an, wie unten dargestellt:

gcloud lustre instance create INSTANCE_ID \
  --filesystem=FILESYSTEM_NAME \
  --per-unit-storage-throughput=PERF_TIER \
  --capacity-gib=CAPACITY_GIB \
  --location=ZONE \
  --network=NETWORK_NAME \
  --project=PROJECT_ID \
  --kms-key-name=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME

Der Cloud KMS-Schlüssel muss in derselben Region wie die Managed Lustre-Instanz vorhanden sein, die Sie erstellen.

REST

Wenn Sie eine CMEK-geschützte Instanz mit der REST API erstellen möchten, folgen Sie der Anleitung unter Instanz erstellen. Geben Sie die Schlüssel-ID als Wert von kmsKey an, wie unten dargestellt:

POST https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances?instanceId=INSTANCE_NAME
Authorization: Bearer AUTH_TOKEN
{
  "filesystem": "FILESYSTEM_NAME",
  "perUnitStorageThroughput": PERF_TIER,
  "capacityGib": CAPACITY_GIB,
  "network": "NETWORK_NAME",
  "kmsKey": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"
}

Der Cloud KMS-Schlüssel muss sich in derselben Region wie die Managed Lustre-Instanz befinden, die Sie erstellen.

Eine vollständige Liste der Felder und ihrer Beschreibungen finden Sie in der Referenzdokumentation zur Instance-Ressource.

Google Cloud Console

Wenn Sie eine CMEK-geschützte Instanz mit der Google Cloud -Konsole erstellen möchten, folgen Sie der Anleitung unter Instanz erstellen. Führen Sie auf der Seite Instanz erstellen der Google Cloud Console die folgenden Schritte aus:

  1. Wählen Sie im Bereich Verschlüsselung die Option Cloud KMS-Schlüssel aus.

  2. Wählen Sie Cloud KMS als Schlüsselverwaltungstyp aus und wählen Sie Ihren Schlüssel aus. Wenn sich Ihr Schlüssel in einem anderen Projekt befindet (empfohlen), klicken Sie auf Projekt wechseln, wählen Sie das Schlüsselprojekt und dann Ihren Schlüssel aus. Der Cloud KMS-Schlüssel muss in derselben Region wie die Managed Lustre-Instanz vorhanden sein, die Sie erstellen.

  3. Wenn Ihr Managed Lustre-Dienst-Agent nicht die erforderlichen Berechtigungen zur Verwendung von CMEK hat, werden Sie aufgefordert, die Rolle cloudkms.cryptoKeyEncrypterDecrypter zu gewähren. Klicken Sie auf Gewähren, um die Rolle anzuwenden.

Wenn der Cloud KMS-Schlüssel nicht verfügbar ist oder Berechtigungsprobleme auftreten, wenn Sie den Erstellungsvorgang starten, schlägt der Vorgang fehl und es wird ein FAILED_PRECONDITION-Fehler zurückgegeben.

Schlüsselverwaltung

Cloud Key Management Service-Schlüssel können rotiert, deaktiviert, reaktiviert oder gelöscht werden. Sie können aus verschiedenen Gründen nicht mehr verfügbar sein.

Schlüssel rotieren

Sie können Ihren Cloud KMS-Schlüssel rotieren. Beim Rotieren eines Schlüssels wird eine neue Schlüsselversion erstellt.

  • Bei der Rotation eines Schlüssels werden die Daten in Ihrer verwalteten Lustre-Instanz nicht neu verschlüsselt. Managed Lustre unterstützt das Entschlüsseln oder erneute Verschlüsseln von Daten nicht.

  • Die vorhandene Kapazität Ihrer verwalteten Lustre-Instanz wird weiterhin mit der Version des Schlüssels verschlüsselt, die beim Erstellen der Instanz verwendet wurde.

  • Wenn Sie die Speicherkapazität Ihrer Instanz erhöhen, wird die neue Kapazität durch die Schlüsselversion geschützt, die primär ist, wenn Sie die Anfrage zur Erhöhung der Kapazität stellen. Alle Daten, die in diese Kapazität geschrieben werden, sind durch diese Schlüsselversion geschützt.

Das bedeutet, dass mehrere Schlüsselversionen Ihre verwaltete Lustre-Instanz verschlüsseln können, wenn Sie die Kapazität der Instanz nach der Rotation der Schlüsselversion erhöht haben.

Schlüssel deaktivieren

Sie können eine Schlüsselversion deaktivieren. Während eine von Ihrer Managed Lustre-Instanz verwendete Schlüsselversion deaktiviert ist, wird die Instanz gesperrt. Um Ihre Instanz fortzusetzen, müssen Sie alle Schlüsselversionen, die Ihre Instanz schützen, in einen verfügbaren Status zurücksetzen. Informationen zu gesperrten Instanzen finden Sie unter Nicht verfügbare Schlüssel.

Weitere Informationen finden Sie unter Schlüsselversionen aktivieren und deaktivieren.

Schlüssel wieder aktivieren

Wenn eine Schlüsselversion deaktiviert ist, können Sie sie über die Cloud KMS API wieder aktivieren. Weitere Informationen finden Sie unter Schlüsselversionen aktivieren und deaktivieren.

Damit die verwaltete Lustre-Instanz fortgesetzt werden kann, müssen alle Versionen des Schlüssels, mit dem die Speicherkapazität verschlüsselt wird, aktiviert oder wiederhergestellt werden.

Sobald alle erforderlichen Schlüssel wieder den Status ENABLED haben, erkennt Managed Lustre automatisch Schlüsseländerungen und startet die Instanz neu. Der Instanzstatus wird zu ACTIVE und der Managed Lustre-Dienst nimmt den normalen Betrieb wieder auf. Sie können E/A-Vorgänge und alle anderen Vorgänge mit langer Ausführungszeit ausführen.

Schlüssel löschen

Cloud KMS-Schlüsselversionen können gelöscht werden. Das bedeutet, dass das Schlüsselmaterial dauerhaft gelöscht wird.

Cloud KMS-Schlüssel können nicht sofort gelöscht werden. Stattdessen müssen Sie eine Schlüsselversion zum Löschen planen. Während des geplanten Zeitraums können Sie eine Schlüsselversion wiederherstellen, um das Löschen abzubrechen. Weitere Informationen finden Sie unter Schlüsselversionen löschen und wiederherstellen.

Eine Schlüsselversion, die zum Löschen vorgemerkt wurde, ist nicht verfügbar. Alle Managed Lustre-Instanzen, die durch diese Schlüsselversion geschützt sind, werden gesperrt. Informationen zu gesperrten Instanzen finden Sie unter Nicht verfügbare Schlüssel.

Nachdem eine Schlüsselversion gelöscht wurde, kann sie nicht wiederhergestellt werden. Ihre Instanz bleibt dauerhaft gesperrt. Der einzige verfügbare Vorgang für die Managed Lustre-Instanz ist das Löschen der Instanz.

Nicht verfügbare Schlüssel

Ein Schlüssel kann aus folgenden Gründen nicht mehr verfügbar sein:

  • Der Schlüssel ist deaktiviert.
  • Der Schlüssel wurde gelöscht oder ist zum Löschen vorgesehen.
  • Die erforderlichen Berechtigungen werden aus dem Dienst-Agent entfernt.
  • Die Abrechnung ist für das Projekt des Cloud KMS-Schlüssels deaktiviert und bleibt länger als eine Stunde deaktiviert.
  • Ein externer Schlüssel ist seit mehr als einer Stunde nicht erreichbar.

In diesen Fällen wird die verwaltete Lustre-Instanz innerhalb weniger Minuten nach dem Ereignis heruntergefahren und ihr Instanzstatus wird auf SUSPENDED gesetzt.

Eine SUSPENDED-Instanz kann wiederhergestellt werden, indem der Schlüssel wieder verfügbar gemacht wird.

Mögliche Gründe für eine Sperrung:

Aktion bei Tastendruck Instanzstatus Grund für die Sperrung Kann wieder aktiviert werden
Deaktivieren SUSPENDED KEY_DISABLE Ja
Löschen planen SUSPENDED KEY_DESTROY_SCHEDULED Ja
Löschen SUSPENDED KEY_DESTROY Nein
Berechtigung entfernen SUSPENDED PERMISSION_DENIED Ja
Abrechnung für 1 Stunde deaktivieren SUSPENDED BILLING_DISABLED Ja
EKM-Schlüssel seit 1 Stunde nicht erreichbar SUSPENDED EKM_KEY_UNREACHABLE Ja

Wenn eine Instanz angehalten wird:

  • Vorgänge mit langer Ausführungszeit wie Instanzaktualisierungen und Import/Export werden blockiert und geben einen FAILED_PRECONDITION-Fehler zurück.
  • E/A-Vorgänge reagieren nicht mehr, bis die Serverknoten heruntergefahren werden. Dies geschieht innerhalb von 30 Minuten.
  • Der einzige zulässige Vorgang mit langer Ausführungszeit ist DeleteInstance.

Instanzen, die länger als vier Monate ausgesetzt wurden, können möglicherweise nicht reaktiviert werden.

Abrechnung angehaltener Instanzen

Wenn eine Managed Lustre-Instanz aufgrund der Nichtverfügbarkeit von Schlüsseln in den Status SUSPENDED wechselt, fallen weiterhin Kosten für die Instanz an. Durch den Sperrstatus wird die Abrechnung nicht pausiert. Wenn Sie keine Kosten mehr für die Instanz verursachen möchten, müssen Sie sie löschen.

Außerdem werden Ihnen alle verwendeten Schlüsselversionen separat von Cloud KMS in Rechnung gestellt.

Schlüsselnutzung ansehen und Schlüsselversionen auflisten

Sie können die Google Cloud Ressourcen in Ihrer Organisation ansehen, die durch Ihre Cloud KMS-Schlüssel geschützt sind. Weitere Informationen finden Sie unter Schlüsselnutzung ansehen.

Verwenden Sie den Befehl gcloud kms inventory search-protected-resources, um die vollständige Liste der Schlüsselversionen aufzurufen, die von Ihrer verwalteten Lustre-Instanz verwendet werden:

gcloud kms inventory search-protected-resources \
  --keyname=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
  --scope=organizations/ORGANIZATION_ID \
  --filter="name:projects/PROJECT_ID/locations/REGION/instances/INSTANCE_ID" \
  --flatten="cryptoKeyVersions" \
  --format="value(cryptoKeyVersions)"

Wobei:

Sie können auch wichtige Informationen auf der Seite Schlüsselinventar aufrufen.

Schlüsselinventar aufrufen