Sie können das Volume eines nichtflüchtigen SSD-Speichers im Modus für mehrere Autoren gleichzeitig an zwei N2-VM-Instanzen anhängen, damit beide VMs auf dem Laufwerk lesen und schreiben können. Wenn Sie den Schreibmodus für mehrere Autoren für neue Persistent Disk-Volumes aktivieren möchten, erstellen Sie ein neues Persistent Disk-Volume und geben Sie das Flag --multi-writer
in der gcloud-Befehlszeile oder das Attribut multiWriter
in der Compute Engine-API an.
Persistent Disk-Volumes im Modus für mehrere Autoren bieten eine gemeinsame Blockspeicherfunktion und stellen eine infrastrukturelle Grundlage für das Erstellen verteilter Speichersysteme und ähnlicher hochverfügbarer Dienste dar. Wenn Sie Persistent Disk-Volumes im Modus für mehrere Autoren verwenden, sollten Sie ein Speichersoftwaresystem mit horizontaler Skalierung verwenden, das den Zugriff auf nichtflüchtige Speichergeräte über mehrere VMs koordiniert. Beispiele für diese Speichersysteme sind Lustre und IBM Spectrum Scale. Die meisten Dateisysteme mit einzelner VM wie EXT4, XFS und NTFS sind nicht für die Verwendung mit einem gemeinsamen Blockspeicher vorgesehen. Weitere Informationen finden Sie in diesem Dokument unter Best Practices. Wenn Sie einen vollständig verwalteten Dateispeicher benötigen, können Sie eine Filestore-Dateifreigabe auf Ihren Compute Engine-VMs bereitstellen.
Persistent Disk-Volumes im Modus für mehrere Autoren unterstützen eine Teilmenge von SCSI-3 Persistent Reservations-Befehlen (SCSI PR). Anwendungen mit hoher Verfügbarkeit können diese Befehle für E/A-Komponenten und Failover-Konfigurationen verwenden.
Die folgenden SCSI-PR-Befehle werden unterstützt:
- IN {REPORT CAPABILITIES, READ FULL STATUS, READ RESERVATION, READ KEYS}
- OUT {REGISTER, REGISTER AND IGNORE EXISTING KEY, RESERVE, PREEMPT, CLEAR, RELEASE}
Hinweise
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft.
Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Nur für Persistent Disk-Volumes vom Typ SSD verfügbar.
- Sie können ein Persistent Disk-Volume im Modus für mehrere Autoren in jeder Zone erstellen. Sie können dieses Laufwerk jedoch nur an VMs an folgenden Speicherorten anhängen:
australia-southeast1
europe-west1
us-central1
(nur in den Zonenus-central1-a
undus-central1-c
)us-east1
(nur in der Zoneus-east1-d
)us-west1
(nur in den Zonenus-west1-b
undus-west1-c
)
- Angehängten VMs muss der N2-Maschinentyp zugewiesen sein.
- Mindestgröße: 10 GB
- Maximale Anzahl von angehängten VMs: 2
- Persistent Disk-Volumes im Modus für mehrere Autoren unterstützen keine Messwerte zu Persistent Disk.
- Laufwerke im Modus für mehrere Autoren können nicht in den Lesemodus Modus wechseln.
- Sie können keine Laufwerk-Images oder Snapshots verwenden, um Persistent Disk-Volumes im Modus für mehrere Autoren zu erstellen.
- Im Modus für mehrere Autoren können keine Snapshots oder Images von Persistent Disk-Volumes erstellt werden.
- Niedrigere IOPS-Limits. Weitere Informationen finden Sie unter Laufwerkleistung.
- Sie können die Größe eines Persistent Disk-Volumes mit mehreren Autoren nicht ändern.
- Wenn Sie eine VM mit der Google Cloud CLI erstellen, können Sie mit dem Flag
--create-disk
kein Persistent Disk-Volume mit mehreren Autoren erstellen. - E/A-Komponenten, die SCSI PR-Befehle verwenden, führen zu einem Absturz mit einheitlichem Persistent Disk-Daten. Einige Dateisysteme haben keine Absturzkonsistenz und können daher beschädigt werden, wenn Sie SCSI PR-Befehle verwenden.
- Viele Dateisysteme wie EXT4, XFS und NTFS sind nicht für die gemeinsame Nutzung mit Blockspeicher ausgelegt und haben keine Synchronisierungs- oder Ausführungsvorgänge für Prozesse von mehreren VM-Instanzen.
- Bevor Sie Persistent Disk-Volumes im Modus für mehrere Autoren verwenden, stellen Sie sicher, dass Sie Ihr Dateisystem verstehen und wissen, wie es sicher mit freigegebenem Blockspeicher und gleichzeitigem Zugriff von mehreren VMs verwendet werden kann.
- VMs mit Cloud Storage verbinden
- Verbinden Sie Ihre VMs mit Filestore
- Erstellen eines Netzwerkdateiservers in Compute Engine
- Erstellen Sie ein Persistent Disk-Volume mit aktiviertem Modus für mehrere Autoren und hängen Sie es an bis zu zwei VMs an.
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie in der Liste der VMs in Ihrem Projekt auf den Namen der VM, der Sie das Laufwerk hinzufügen möchten. Die Seite VM-Instanzdetails wird geöffnet.
Klicken Sie auf der Seite "Instanzdetails" auf Bearbeiten.
Klicken Sie im Bereich Zusätzliche Laufwerke auf eine der folgenden Optionen:
- Neues Laufwerk hinzufügen, um der VM ein Laufwerk im schreibgeschützten Modus hinzuzufügen.
- Vorhandenes Laufwerk hinzufügen, um ein vorhandenes Laufwerk auszuwählen und es im schreibgeschützten Modus an Ihre VM anzuhängen.
Legen Sie weitere Optionen für das Laufwerk fest.
Klicken Sie auf Fertig, um die Änderungen zu übernehmen.
Klicken Sie auf Speichern, um Ihre Änderungen für die VM zu übernehmen.
Stellen Sie eine Verbindung zur VM her und stellen Sie das Laufwerk bereit.
Wiederholen Sie diesen Vorgang, um das Laufwerk anderen VMs im Lesemodus hinzuzufügen.
INSTANCE_NAME
: Name der VM, an die Sie das zonale Persistent Disk-Volume anhängen möchten.DISK_NAME
: durch den Namen des Laufwerks, das Sie anhängen möchten.INSTANCE_NAME
: Name der VM, an die Sie das zonale Persistent Disk-Volume anhängen möchten.PROJECT_ID
: Ihre Projekt-ID.ZONE
: Zone, in der sich das Laufwerk befindetDISK_NAME
: Name des Laufwerks, das Sie anhängenVerwenden Sie den Befehl
gcloud beta compute disks create
, um ein zonales Persistent Disk-Volume zu erstellen. Fügen Sie das Flag--multi-writer
ein, um anzugeben, dass das Laufwerk für die VMs im Modus für mehrere Autoren freigegeben werden muss.gcloud beta compute disks create DISK_NAME \ --size DISK_SIZE \ --type pd-ssd \ --multi-writer
Ersetzen Sie Folgendes:
DISK_NAME
: Name des neuen LaufwerksDISK_SIZE
: die Größe des neuen Laufwerks in GB. Die zulässigen Größen reichen von 1 GB bis 65.536 GB für Volumes nichtflüchtiger SSD-Speicher oder 200 GB bis 65.536 GB für Standard-Persistent Disk-Volumes im Modus für mehrere Autoren.
Nachdem Sie das Laufwerk erstellt haben, hängen Sie es an eine laufende oder gestoppte VM mit einem N2-Maschinentyp an. Führen Sie folgenden
gcloud compute instances attach-disk
-Befehl aus:gcloud compute instances attach-disk INSTANCE_NAME \ --disk DISK_NAME
Ersetzen Sie Folgendes:
INSTANCE_NAME
: Name der N2-VM, der Sie das neue zonale Persistent Disk-Volume hinzufügenDISK_NAME
: Name des neuen Laufwerks, das Sie an die VM anhängen.
Wiederholen Sie den Befehl
gcloud compute instances attach-disk
. Ersetzen Sie dabei INSTANCE_NAME durch den Namen der zweiten VM.Senden Sie mit der API eine
POST
-Anfrage zum Erstellen eines zonalen Persistent Disk-Volumes mithilfe der Methodedisks.insert
. Fügen Sie die Attributename
,sizeGb
undtype
hinzu. Wenn Sie das neue Laufwerk leer, unformatiert und ohne Startfunktion erstellen möchten, geben Sie weder ein Quell-Image noch einen Quell-Snapshot für dieses Laufwerk an. Fügen Sie das AttributmultiWriter
mit dem WertTrue
ein, um anzugeben, dass das Laufwerk zwischen den VMs im Modus für mehrere Autoren gemeinsam nutzbar sein muss.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/disks { "name": "DISK_NAME", "sizeGb": "DISK_SIZE", "type": "zones/ZONE/diskTypes/pd-ssd", "multiWriter": "True" }
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
ist die Zone, in der sich Ihre VM und das neue Laufwerk befindenDISK_NAME
: Name des neuen LaufwerksDISK_SIZE
: die Größe des neuen Laufwerks in GB. Die zulässigen Größen reichen von 1 GB bis 65.536 GB für Volumes nichtflüchtiger SSD-Speicher oder 200 GB bis 65.536 GB für Standard-Persistent Disk-Volumes im Modus für mehrere Autoren.
Erstellen Sie eine
POST
-Anfrage an die Methodecompute.instances.attachDisk
und fügen Sie die URL dem zonalen Persistent Disk-Volume hinzu, das Sie gerade erstellt haben.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk { "source": "/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME" }
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
ist die Zone, in der sich Ihre VM und das neue Laufwerk befindenINSTANCE_NAME
: Name der VM, der Sie das neue Persistent Disk-Volume hinzufügen.DISK_NAME
: Name des neuen Laufwerks
Wiederholen Sie den Befehl
disks.insert
, aber geben Sie stattdessen die zweite VM an.
Java
Wenn Sie die Java Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
Weitere Informationen unter Set up authentication for a local development environment.
Python
Wenn Sie die Python Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
Weitere Informationen unter Set up authentication for a local development environment.
REST
Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.
Einschränkungen
Best Practices
Leistung
Persistent Disk-Volumes, die im Modus für mehrere Autoren erstellt werden, haben bestimmte IOPS- und Durchsatzlimits.
Modus für mehrere Autoren mit zonalem nichtflüchtigem SSD-Speicher Maximale IOPS (kontinuierlich) Lese-IOPS pro GB 30 Schreib-IOPS pro GB 30 Lese-IOPS pro Instanz 15.000–100.000* Schreibe-IOPS pro Instanz 15.000–100.000* Maximaler Durchsatz (kontinuierlich, MB/s) Lesedurchsatz pro GB 0,48 Schreibdurchsatz pro GB 0,48 Lesedurchsatz pro Instanz 240–1.200* Schreibdurchsatz pro Instanz 240–1.200* * Die IOPS- und Durchsatzleistung nichtflüchtiger Speicher ist neben anderen Faktoren von der Laufwerkgröße, der Anzahl der Instanz-vCPUs und der E/A-Blockgröße abhängig.Das Anhängen eines Laufwerks mit mehreren Autoren zu mehreren VM-Instanzen hat keine Auswirkungen auf die Gesamtleistung oder die Kosten. Jede Maschine erhält innerhalb des Leistungslimits des Speichers einen bestimmten Anteil.
Informationen zum Freigeben nichtflüchtiger Speicher zwischen mehreren VMs finden Sie unter Nichtflüchtige Speicher zwischen VMs freigeben.Zonales Persistent Disk-Volume mit VM-Instanzen teilen
In diesem Abschnitt werden die verschiedenen Methoden zur Freigabe zonaler Persistent Disk-Volumes zwischen mehreren VMs erläutert.
Laufwerk im Lesemodus für mehrere VMs freigeben
Sie können ein Persistent Disk-Volume ohne Startfunktion an mehrere VMs im Lesemodus anhängen und damit statische Daten zwischen mehreren VMs freigeben. Das Freigeben von statischen Daten zwischen mehreren VMs eines Persistent Disk-Volumes ist kostengünstiger als die Replikation Ihrer Daten auf individuelle Laufwerke für einzelne VMs.
Wenn Sie dynamischen Speicherplatz zwischen mehreren VMs freigeben müssen, haben Sie folgende Möglichkeiten:
Console
gcloud
Verwenden Sie in der gcloud CLI den Befehl
compute instances attach-disk
und geben Sie das Flag--mode
mit der Optionro
an.gcloud compute instances attach-disk INSTANCE_NAME \ --disk DISK_NAME \ --mode ro
Ersetzen Sie Folgendes:
Nachdem Sie das Laufwerk angehängt haben, verbinden Sie die VM und stellen Sie das Laufwerk bereit.
Wiederholen Sie diesen Befehl für jede VM, der Sie dieses Laufwerk im Lesemodus hinzufügen möchten.
Java
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Java in der Compute Engine-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Compute Engine Java API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Compute Engine zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Python in der Compute Engine-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Compute Engine Python API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Compute Engine zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
REST
Erstellen Sie mit der API eine
POST
-Anfrage an die Methodecompute.instances.attachDisk
. Legen Sie im Anfragetext den Parametermode
alsREAD_ONLY
fest.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk { "source": "zones/ZONE/disks/DISK_NAME", "mode": "READ_ONLY" }
Ersetzen Sie Folgendes:
Nachdem Sie das Laufwerk angehängt haben, verbinden Sie die VM und stellen Sie das Laufwerk bereit.
Wiederholen Sie diese Anfrage für jede VM, der Sie dieses Laufwerk im Lesemodus hinzufügen möchten.
Volume eines nichtflüchtigen SSD-Speichers im Modus für mehrere Autoren für VMs freigeben
Sie können das Volume eines nichtflüchtigen SSD-Speichers im Modus für mehrere Autoren zwischen N2-VMs in derselben Zone freigeben. Weitere Informationen zur Funktionsweise dieses Modus finden Sie unter Modus für mehrere Autoren für Persistent Disk. So können Sie Persistent Disk-Volumes mit mehreren Autoren erstellen und anhängen:
gcloud
Führen Sie die folgenden Schritte aus, um ein zonales Persistent Disk-Volume mit der gcloud CLI zu erstellen und anzuhängen:
Nachdem Sie ein neues Laufwerk erstellt und an die VM angehängt haben, formatieren Sie das Laufwerk und stellen Sie es mit einem freigegebenen Laufwerksdateisystem bereit. Die meisten Dateisysteme können freigegebenen Speicher nicht nutzen. Prüfen Sie, ob Ihr Dateisystem diese Funktionen unterstützt, bevor Sie es mit einer Persistent Disk für mehrere Autoren verwenden. Sie können das Laufwerk nicht für mehreren VMs bereitstellen, indem Sie genauso vorgehen wie beim Bereitstellen des Laufwerks für einer einzelnen VM.
REST
Mit der Compute Engine API können Sie einen nichtflüchtigen SSD-Speicher erstellen und an N2-VMs im Modus für mehrere Autoren anhängen.
Nachdem Sie ein neues Laufwerk erstellt und an die VM angehängt haben, formatieren Sie das Laufwerk und stellen Sie es mit einem freigegebenen Laufwerksdateisystem bereit. Die meisten Dateisysteme können freigegebenen Speicher nicht nutzen. Prüfen Sie, ob Ihr Dateisystem diese Funktionen unterstützt, bevor Sie es mit einer Persistent Disk für mehrere Autoren verwenden.
Nächste Schritte
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2024-11-25 (UTC).
-