In diesem Dokument wird beschrieben, wie Sie die Netzwerklatenz zwischen Ihren VM-Instanzen (virtuellen Maschinen) reduzieren, indem Sie Richtlinien für kompakte Platzierung erstellen und auf sie anwenden. Weitere Informationen zu Platzierungsrichtlinien, einschließlich unterstützter Gerätereihen, Einschränkungen und Preisen, finden Sie unter Übersicht über Platzierungsrichtlinien.
In einer Richtlinie für kompakte Platzierungen ist angegeben, dass Ihre VMs physisch näher beieinander platziert werden sollen. Dies kann die Leistung verbessern und die Netzwerklatenz zwischen Ihren VMs verringern, wenn Sie beispielsweise Hochleistungs-Computing (HPC), maschinelles Lernen (ML) oder Datenbankserver-Arbeitslasten ausführen.
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 bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Compute-Instanzadministrator (Version 1) (
roles/compute.instanceAdmin.v1
) -
So erstellen Sie eine Reservierung:
Compute Admin (
roles/compute.admin
) - Zur Erstellung von Platzierungsrichtlinien:
compute.resourcePolicies.create
für das Projekt -
Zur Anwendung einer Platzierungsrichtlinie auf vorhandene VMs an:
compute.instances.addResourcePolicies
für das Projekt -
Zum Erstellen von VMs:
compute.instances.create
für das Projekt- Zur Erstellung der VM mit einem benutzerdefinierten Image:
compute.images.useReadOnly
für das Image - Zur Erstellung der VM mithilfe eines Snapshots:
compute.snapshots.useReadOnly
für den Snapshot - Zur Erstellung der VM mithilfe einer Instanzvorlage:
compute.instanceTemplates.useReadOnly
für die Instanzvorlage - Um der VM ein Legacy-Netzwerk zuzuweisen:
compute.networks.use
für das Projekt - Zum Festlegen einer statische IP-Adresse für die VM:
compute.addresses.use
für das Projekt - Zur Zuweisung einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks:
compute.networks.useExternalIp
für das Projekt - Um ein Subnetz für die VM anzugeben:
compute.subnetworks.use
für das Projekt oder für das ausgewählte Subnetz - Um der VM eine externe IP-Adresse zuzuweisen, wenn Sie ein VPC-Netzwerk verwenden:
compute.subnetworks.useExternalIp
für das Projekt oder für das ausgewählte Subnetz - Um die Metadaten der VM-Instanz für die VM festzulegen:
compute.instances.setMetadata
für das Projekt - Um Tags für die VM festzulegen:
compute.instances.setTags
für die VM - Um Labels für die VM festzulegen:
compute.instances.setLabels
für die VM - Um ein Dienstkonto festzulegen, das die VM verwenden soll:
compute.instances.setServiceAccount
für die VM - Um ein neues Laufwerk für die VM zu erstellen:
compute.disks.create
für das Projekt - Um ein vorhandenes Laufwerk im Lese- oder Lese‑/Schreibmodus anzuhängen:
compute.disks.use
für das Laufwerk - Um ein vorhandenes Laufwerk im Lesemodus anzuhängen:
compute.disks.useReadOnly
für das Laufwerk
-
So erstellen Sie eine Reservierung:
compute.reservations.create
für das Projekt - Um eine Instanzvorlage zu erstellen:
compute.instanceTemplates.create
für das Projekt -
So erstellen Sie eine verwaltete Instanzgruppe (MIG):
compute.instanceGroupManagers.create
für das Projekt -
So rufen Sie die Details einer VM auf:
compute.instances.get
im Projekt Wenn Sie die Richtlinie für kompakte Platzierung auf N2- oder N2D-VMs anwenden möchten, erstellen Sie die Richtlinie mit dem Befehl
gcloud compute resource-policies create group-placement
und dem Flag--collocation=collocated
.gcloud compute resource-policies create group-placement POLICY_NAME \ --collocation=collocated \ --region=REGION
Ersetzen Sie Folgendes:
POLICY_NAME
: Der Name der Richtlinie für kompakte Platzierung.REGION
: Die Region, in der die Platzierungsrichtlinie erstellt werden soll.
Wenn Sie die Richtlinie für kompakte Platzierung auf andere unterstützte VMs anwenden möchten, erstellen Sie die Richtlinie mit dem Befehl
gcloud beta compute resource-policies create group-placement
und den Flags--collocation=collocated
und--max-distance
.gcloud beta compute resource-policies create group-placement POLICY_NAME \ --collocation=collocated \ --max-distance=MAX_DISTANCE \ --region=REGION
Ersetzen Sie Folgendes:
POLICY_NAME
: Der Name der Richtlinie für kompakte Platzierung.MAX_DISTANCE
: die maximale Entfernungskonfiguration für Ihre VMs. Der Wert muss zwischen1
, was bedeutet, dass die VMs für eine möglichst geringe Netzwerklatenz im selben Rack platziert werden, und3
liegen, was bedeutet, dass die VMs in benachbarten Clustern platziert werden sollen. Wenn Sie die Richtlinie für kompakte Platzierung auf eine Reservierung anwenden möchten, können Sie keinen Wert von1
angeben.REGION
: Die Region, in der die Platzierungsrichtlinie erstellt werden soll.
Wenn Sie die Richtlinie für kompakte Platzierung auf N2- oder N2D-VMs anwenden möchten, erstellen Sie sie mit einer
POST
-Anfrage an die MethoderesourcePolicies.insert
. Fügen Sie im Anfragetext das Feldcollocation
ein und legen Sie es aufCOLLOCATED
fest.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "POLICY_NAME", "groupPlacementPolicy": { "collocation": "COLLOCATED" } }
Ersetzen Sie Folgendes:
PROJECT_ID
: Die ID des Projekts, in dem Sie die Platzierungsrichtlinie erstellen möchten.REGION
: Die Region, in der die Platzierungsrichtlinie erstellt werden soll.POLICY_NAME
: Der Name der Richtlinie für kompakte Platzierung.
Wenn Sie die Richtlinie für kompakte Platzierung auf andere unterstützte VMs anwenden möchten, erstellen Sie sie mit einer
POST
-Anfrage an die Methodebeta.resourcePolicies.insert
. Geben Sie im Anfragetext Folgendes an:Das Feld
collocation
ist aufCOLLOCATED
gesetzt.Das Feld
maxDistance
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "POLICY_NAME", "groupPlacementPolicy": { "collocation": "COLLOCATED", "maxDistance": MAX_DISTANCE } }
Ersetzen Sie Folgendes:
PROJECT_ID
: Die ID des Projekts, in dem Sie die Platzierungsrichtlinie erstellen möchten.REGION
: Die Region, in der die Platzierungsrichtlinie erstellt werden soll.POLICY_NAME
: Der Name der Richtlinie für kompakte Platzierung.MAX_DISTANCE
: die maximale Entfernungskonfiguration für Ihre VMs. Der Wert muss zwischen1
, was bedeutet, dass die VMs für eine möglichst geringe Netzwerklatenz im selben Rack platziert werden, und3
liegen, was bedeutet, dass die VMs in benachbarten Clustern platziert werden sollen. Wenn Sie die Richtlinie für kompakte Platzierung auf eine Reservierung anwenden möchten, können Sie keinen Wert von1
angeben.
- Richtlinie auf eine vorhandene VM anwenden
- Richtlinie beim Erstellen einer VM anwenden
- Richtlinie beim Erstellen von VMs im Bulk anwenden
- Richtlinie beim Erstellen einer Reservierung anwenden
- Richtlinie beim Erstellen einer Instanzvorlage anwenden
- Richtlinie auf VMs in einer verwalteten Instanzgruppe anwenden
Die VM und die Richtlinie für kompakte Platzierung müssen sich in derselben Region befinden. Beispiel: Wenn sich die Platzierungsrichtlinie in der Region
us-central1
befindet, muss sich die VM in einer Zone inus-central1
befinden. Wenn Sie eine VM in eine andere Region migrieren müssen, finden Sie weitere Informationen in VM zwischen Zonen oder Regionen verschieben.Die VM muss eine unterstützte Maschinenreihe und eine Hostwartungsrichtlinie verwenden. Wenn Sie Änderungen an der VM vornehmen müssen, führen Sie einen oder beide der folgenden Schritte aus:
Verwenden Sie den Befehl
gcloud compute instances add-resource-policies
, um eine Richtlinie für kompakte Platzierung auf eine vorhandene VM anzuwenden.gcloud compute instances add-resource-policies VM_NAME \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ersetzen Sie Folgendes:
VM_NAME
: Der Name einer vorhandenen VM.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.ZONE
ist die Zone, in der sich die VM befindet.
Senden Sie eine
POST
-Anfrage an die Methodeinstances.addResourcePolicies
, um eine Richtlinie für kompakte Platzierung auf eine vorhandene VM anzuwenden.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/addResourcePolicies { "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ] }
Ersetzen Sie Folgendes:
PROJECT_ID
: Die ID des Projekts, in dem sich die Richtlinie für kompakte Platzierung und die VM befinden.ZONE
ist die Zone, in der sich die VM befindet.VM_NAME
: Der Name einer vorhandenen VM.REGION
: die Region, in der sich die Richtlinie für kompakte Platzierung befindet.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.
VM_NAME
: der Name der zu erstellenden VM.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den Wert „max-distance“ von1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.ZONE
: die Zone, in der die VM-Instanz erstellt werden soll.PROJECT_ID
: Die ID des Projekts, in dem sich die Richtlinie für kompakte Platzierung befindet.ZONE
: Die Zone, in der die VM erstellt werden soll und in der sich der Maschinentyp befindet. Sie können nur eine Zone innerhalb der Region der Richtlinie für kompakte Platzierung angeben.VM_NAME
: der Name der zu erstellenden VM.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.IMAGE_PROJECT
: das Image-Projekt, das das Image enthält, z. B.debian-cloud
. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.IMAGE
: Wählen Sie eine der folgenden Optionen aus:Eine bestimmte Version des Betriebssystem-Images; Beispiel:
debian-12-bookworm-v20240617
.Eine Image-Familie, die als
family/IMAGE_FAMILY
formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Siefamily/debian-12
angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.
REGION
: Die Region, in der sich die Richtlinie für kompakte Platzierungen befindet.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den maximalen Abstand1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.COUNT
: Die Anzahl der zu erstellenden VMs. Diese darf nicht höher sein als die maximal unterstützte Anzahl von VMs der angegebenen Richtlinie für kompakte Platzierung.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den Wert „max-distance“ von1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.NAME_PATTERN
ist das Namensmuster für die VMs. Verwenden Sie eine Abfolge von Hash-Zeichen (#
), um eine Zahlenfolge in einem VM-Namen zu ersetzen. Wenn Sie z. B.vm-#
für das Namensmuster verwenden, werden VMs mit den Namenvm-1
,vm-2
usw. bis zu der durchCOUNT
angegebenen Anzahl von VMs erzeugt.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.ZONE
: Zone, in der die VMs im Bulk erstellt werden sollen.PROJECT_ID
: Die ID des Projekts, in dem sich die Richtlinie für kompakte Platzierung befindet.ZONE
: Zone, in der die VMs im Bulk erstellt werden sollen.COUNT
: Die Anzahl der zu erstellenden VMs. Diese darf nicht höher sein als die maximal unterstützte Anzahl von VMs der angegebenen Richtlinie für kompakte Platzierung.NAME_PATTERN
ist das Namensmuster für die VMs. Verwenden Sie eine Abfolge von Hash-Zeichen (#
), um eine Zahlenfolge in einem VM-Namen zu ersetzen. Wenn Sie z. B.vm-#
für das Namensmuster verwenden, werden VMs mit den Namenvm-1
,vm-2
usw. bis zu der durchCOUNT
angegebenen Anzahl von VMs erzeugt.with names starting with `vm-1`, `vm-2`, and continuing up to the number
der von
COUNT
angegebenen VMs.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.IMAGE_PROJECT
: das Image-Projekt, das das Image enthält, z. B.debian-cloud
. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.IMAGE
: Wählen Sie eine der folgenden Optionen aus:Eine bestimmte Version des Betriebssystem-Images; Beispiel:
debian-12-bookworm-v20240617
.Eine Image-Familie, die als
family/IMAGE_FAMILY
formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Siefamily/debian-12
angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.
REGION
: Die Region, in der sich die Richtlinie für kompakte Platzierungen befindet.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den maximalen Abstand1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.Für die VMs muss dieselbe Richtlinie für kompakte Platzierung angegeben werden, die auch auf die Reservierung angewendet wird.
Die VMs müssen speziell auf die Reservierung abzielen, um sie nutzen zu können. Weitere Informationen finden Sie unter VMs aus einer bestimmten Reservierung nutzen.
Erstellen Sie die Reservierung, indem Sie die Attribute wie in diesem Abschnitt beschrieben direkt angeben.
Wenden Sie die Richtlinie beim Erstellen einer Instanzvorlage an, wie in diesem Dokument beschrieben, und erstellen Sie dann eine Reservierung für ein einzelnes Projekt, indem Sie die neu erstellte Instanzvorlage angeben.
RESERVATION_NAME
: Der Name der Reservierung.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.NUMBER_OF_VMS
: Die Anzahl der zu reservierenden VMs. Diese darf nicht höher sein als die unterstützte maximale Anzahl von VMs der angegebenen Richtlinie für kompakte Platzierung.ZONE
: die Zone, in der VMs reserviert werden sollen. Sie können VMs nur in einer Zone innerhalb der Region der angegebenen Richtlinie für kompakte Platzierungen reservieren.PROJECT_ID
: Die ID des Projekts, in dem sich die Richtlinie für kompakte Platzierung befindet.ZONE
: die Zone, in der VMs reserviert werden sollen. Sie können VMs nur in einer Zone innerhalb der Region der angegebenen Richtlinie für kompakte Platzierungen reservieren.RESERVATION_NAME
: Der Name der Reservierung.REGION
: Die Region, in der sich die Richtlinie für kompakte Platzierungen befindet.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.NUMBER_OF_VMS
: Die Anzahl der zu reservierenden VMs. Diese darf nicht höher sein als die unterstützte maximale Anzahl von VMs der angegebenen Richtlinie für kompakte Platzierung.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.INSTANCE_TEMPLATE_NAME
ist der Name der Instanzvorlage.MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den Wert „max-distance“ von1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.So erstellen Sie eine globale Instanzvorlage:
instanceTemplates.insert
-MethodeZum Erstellen einer regionalen Instanzvorlage:
regionInstanceTemplates.insert
-Methode.PROJECT_ID
: Die ID des Projekts, in dem sich die Richtlinie für kompakte Platzierung befindet.INSTANCE_TEMPLATE_NAME
ist der Name der Instanzvorlage.IMAGE_PROJECT
: das Image-Projekt, das das Image enthält, z. B.debian-cloud
. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.IMAGE
: Wählen Sie eine der folgenden Optionen aus:Eine bestimmte Version des Betriebssystem-Images; Beispiel:
debian-12-bookworm-v20240617
.Eine Image-Familie, die als
family/IMAGE_FAMILY
formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Siefamily/debian-12
angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.
MACHINE_TYPE
: Ein unterstützter Maschinentyp für Richtlinien für kompakte Platzierung.POLICY_NAME
: Der Name einer vorhandenen Richtlinie für kompakte Platzierung.MAINTENANCE_POLICY
: Die Hostwartungsrichtlinie der VM. Wenn die von Ihnen angegebene Richtlinie für kompakte Platzierung den Wert „max-distance“ von1
oder2
verwendet, können Sie nurTERMINATE
angeben. Andernfalls können Sie entwederMIGRATE
oderTERMINATE
angeben.INSTANCE_GROUP_NAME
: Name der MIG, die erstellt werden soll.SIZE
: die Größe der MIG.INSTANCE_TEMPLATE_NAME
: Name einer vorhandenen globalen Instanzvorlage, die eine Richtlinie für kompakte Platzierungen angibt.ZONE
: Die Zone, in der die MIG erstellt werden soll. Sie muss sich in der Region befinden, in der sich die Richtlinie für kompakte Platzierungen befindet.Verwenden Sie für eine zonale MIG die Methode
instanceGroupManagers.insert
.So erstellen Sie eine regionale MIG:
regionInstanceGroupManagers.insert
-Methode.PROJECT_ID
: Die Projekt-ID des Projekts, in dem sich die Richtlinie für kompakte Platzierungen und die Instanzvorlage, die die Platzierungsrichtlinie angibt, befinden.ZONE
: Zone, in der die MIG erstellt werden soll. Sie muss sich in der Region befinden, in der sich die Richtlinie für kompakte Platzierung befindet.INSTANCE_GROUP_NAME
: Name der MIG, die erstellt werden soll.INSTANCE_TEMPLATE_NAME
: Name einer vorhandenen globalen Instanzvorlage, die eine Richtlinie für kompakte Platzierungen angibt.SIZE
: die Größe der MIG.MIG_NAME
: der Name einer vorhandenen MIG.INSTANCE_TEMPLATE_NAME
: Name einer vorhandenen globalen Instanzvorlage, die eine Richtlinie für kompakte Platzierungen angibt.ZONE
: Die Zone, in der sich die MIG befindet. Sie können die Richtlinie für kompakte Platzierung nur auf eine verwaltete Instanzgruppe anwenden, die sich in derselben Region wie die Platzierungsrichtlinie befindet.Verwenden Sie zum Aktualisieren einer zonalen MIG die Methode
instanceGroupManagers.insert
.Verwenden Sie zum Aktualisieren einer regionalen MIG die Methode
regionInstanceGroupManagers.insert
.PROJECT_ID
: Die ID des Projekts, in dem sich die MIG, die Richtlinie für kompakte Platzierungen und die Instanzvorlage, die die Platzierungsrichtlinie angibt, befinden.ZONE
: Die Zone, in der sich die MIG befindet. Sie können die Richtlinie für kompakte Platzierung nur auf eine verwaltete Instanzgruppe anwenden, die sich in derselben Region wie die Platzierungsrichtlinie befindet.MIG_NAME
: der Name einer vorhandenen MIG.INSTANCE_TEMPLATE_NAME
: Name einer vorhandenen globalen Instanzvorlage, die eine Richtlinie für kompakte Platzierungen angibt.Prüfen Sie, ob die Richtlinie erfolgreich angewendet wurde.
Identifizieren Sie, welche VMs am nächsten beieinander liegen.
VM_NAME
: Der Name einer vorhandenen VM, die eine Richtlinie für kompakte Platzierung angibt.ZONE
ist die Zone, in der sich die VM befindet./CCCCCCC/xxxxxx/xxxx
: Die beiden VMs werden im selben Cluster platziert, was einem maximalen Abstand von2
entspricht. VMs, die im selben Cluster platziert sind, haben eine geringe Netzwerklatenz./CCCCCCC/BBBBBB/xxxx
: Die beiden VMs werden im selben Rack platziert, was einem maximalen Abstand von1
entspricht. VMs, die im selben Rack platziert sind, haben eine geringere Netzwerklatenz als VMs, die im selben Cluster platziert sind./CCCCCCC/BBBBBB/AAAA
: Die beiden VMs teilen sich denselben Host. VMs, die im selben Host platziert sind, minimieren die Netzwerklatenz so weit wie möglich.PROJECT_ID
: die Projekt-ID des Projekts, in dem sich die VM befindet.ZONE
ist die Zone, in der sich die VM befindet.VM_NAME
: Der Name einer vorhandenen VM, die eine Richtlinie für kompakte Platzierung angibt./CCCCCCC/xxxxxx/xxxx
: Die beiden VMs werden im selben Cluster platziert, was einem maximalen Abstand von2
entspricht. VMs, die im selben Cluster platziert sind, haben eine geringe Netzwerklatenz./CCCCCCC/BBBBBB/xxxx
: Die beiden VMs werden im selben Rack platziert, was einem maximalen Abstand von1
entspricht. VMs, die im selben Rack platziert sind, haben eine geringere Netzwerklatenz als VMs, die im selben Cluster platziert sind./CCCCCCC/BBBBBB/AAAA
: Die beiden VMs teilen sich denselben Host. VMs, die im selben Host platziert sind, minimieren die Netzwerklatenz so weit wie möglich.Informationen zum Ersetzen, Entfernen oder Löschen von Platzierungsrichtlinien
Weitere Informationen dazu, wie Sie mit einer VM, die eine Platzierungsrichtlinie angibt:
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.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Anwenden einer Richtlinie für kompakte Platzierung auf VMs benötigen:
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Erstellen und Anwenden einer Richtlinie für kompakte Platzierung auf VMs erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um eine Richtlinie für kompakte Platzierung zu erstellen und auf VMs anzuwenden:
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Kompakte Platzierungsrichtlinie erstellen
Sofern Sie keine Richtlinie für kompakte Platzierung auf N2- oder N2D-VMs anwenden möchten, empfiehlt Google Cloud, beim Erstellen der Richtlinie einen maximalen Abstand anzugeben. Weitere Informationen finden Sie unter Funktionsweise von Richtlinien für kompakte Platzierung.
Wählen Sie eine der folgenden Optionen aus, um eine Richtlinie für kompakte Platzierung zu erstellen:
gcloud
REST
Richtlinie für kompakte Platzierung anwenden
Sie können eine Richtlinie für kompakte Platzierung auf eine vorhandene VM oder verwaltete Instanzgruppe anwenden, oder wenn Sie VMs, Instanzvorlagen, verwaltete Instanzgruppen oder Reservierungen von VMs erstellen.
Wählen Sie eine der folgenden Methoden aus, um eine Richtlinie für kompakte Platzierung auf eine Compute Engine-Ressource anzuwenden:
Nachdem Sie eine Richtlinie für kompakte Platzierung auf eine VM angewendet haben, können Sie den physischen Standort der VM in Bezug auf andere VMs prüfen, die dieselbe Platzierungsrichtlinie angeben.
Richtlinie auf eine vorhandene VM anwenden
Bevor Sie eine Richtlinie für kompakte Platzierung auf eine vorhandene VM anwenden, achten Sie auf Folgendes:
Andernfalls schlägt das Anwenden der Richtlinie für kompakte Platzierung auf die VM fehl. Wenn die VM bereits eine Platzierungsrichtlinie vorgibt und Sie diese ersetzen möchten, lesen Sie stattdessen den Abschnitt Platzierungsrichtlinie in einer VM ersetzen.
Wählen Sie eine der folgenden Optionen aus, um eine Richtlinie für kompakte Platzierungen auf eine vorhandene VM anzuwenden:
gcloud
REST
Richtlinie beim Erstellen einer VM anwenden
Sie können eine VM, die eine Richtlinie für kompakte Platzierung angibt, nur in der Region erstellen, in der sich die Platzierungsrichtlinie befindet.
Wählen Sie eine der folgenden Optionen aus, um eine VM zu erstellen, die eine Richtlinie für kompakte Platzierungen angibt:
gcloud
Verwenden Sie zum Erstellen einer VM mit einer Richtlinie für kompakte Platzierung den Befehl
gcloud compute instances create
mit den Flags--maintenance-policy
und--resource-policies
.gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --maintenance-policy=MAINTENANCE_POLICY \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ersetzen Sie Folgendes:
REST
Senden Sie zum Erstellen einer VM, die eine Richtlinie für kompakte Platzierung angibt, eine
POST
-Anfrage an die Methodeinstances.insert
. Geben Sie im Anfragetext die FelderonHostMaintenance
undresourcePolicies
an.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ], "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY" } }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Erstellen einer VM finden Sie unter VM-Instanz erstellen und starten
Richtlinie beim Erstellen von VMs im Bulk anwenden
Sie können VMs im Bulk mit Richtlinien für kompakte Platzierungen nur in der Region erstellen, in der sich die Platzierungsrichtlinie befindet.
Wählen Sie eine der folgenden Optionen aus, um VMs im Bulk zu erstellen, die eine Richtlinie für kompakte Platzierung angeben:
gcloud
Wenn Sie VMs im Bulk erstellen möchten, die eine Richtlinie für kompakte Platzierung angeben, verwenden Sie den Befehl
gcloud compute instances bulk create
mit den Flags--maintenance-policy
und--resource-policies
.Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die VMs angeben möchten, führen Sie den folgenden Befehl aus:
gcloud compute instances bulk create \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --maintenance-policy=MAINTENANCE_POLICY \ --name-pattern=NAME_PATTERN \ --resource-policies=POLICY_NAME \ --zone=ZONE
Ersetzen Sie Folgendes:
REST
Wenn Sie VMs im Bulk erstellen möchten, die eine Richtlinie für kompakte Platzierungen angeben, erstellen Sie eine
POST
-Anfrage an die Methodeinstances.bulkInsert
. Geben Sie im Anfragetext die FelderonHostMaintenance
undresourcePolicies
an.Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die VMs angeben möchten, stellen Sie eine
POST
-Anfrage wie unten beschrieben:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": "COUNT", "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ], "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY" } } }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Erstellen von VMs im Bulk finden Sie unter VMs im Bulk erstellen
Richtlinie beim Erstellen einer Reservierung anwenden
Wenn Sie eine On-Demand-Reservierung für ein einzelnes Projekt erstellen möchten, für die eine Richtlinie für kompakte Platzierungen festgelegt ist, müssen Sie eine Reservierung mit gezielter Ausrichtung erstellen. Beachten Sie beim Erstellen von VMs, die die Reservierung nutzen sollen, Folgendes:
Wählen Sie eine der folgenden Methoden aus, um eine Reservierung für ein einzelnes Projekt mit einer Richtlinie für kompakte Platzierung zu erstellen:
Wenn Sie eine Reservierung für ein einzelnes Projekt mit einer Richtlinie für kompakte Platzierung erstellen möchten, indem Sie Attribute direkt angeben, wählen Sie eine der folgenden Optionen aus:
gcloud
Wenn Sie eine Reservierung für ein einzelnes Projekt mit einer Richtlinie für kompakte Platzierung erstellen möchten, indem Sie Attribute direkt angeben, verwenden Sie den Befehl
gcloud compute reservations create
mit den Flags--require-specific-reservation
und--resource-policies=policy
.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --require-specific-reservation \ --resource-policies=policy=POLICY_NAME \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Ersetzen Sie Folgendes:
REST
Wenn Sie eine Reservierung für ein einzelnes Projekt mit einer Richtlinie für kompakte Platzierung erstellen möchten, indem Sie Attribute direkt angeben, senden Sie eine
POST
-Anfrage an die Methodereservations.insert
. Geben Sie im Anfragetext das FeldresourcePolicies
und das FeldspecificReservationRequired
an, das auftrue
gesetzt ist.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "resourcePolicies": { "policy" : "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" }, "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE", } }, "specificReservationRequired": true }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Erstellen von Reservierungen für einzelne Projekte finden Sie unter Reservierung für ein einzelnes Projekt erstellen.
Richtlinie beim Erstellen einer Instanzvorlage anwenden
Wenn Sie eine regionale Instanzvorlage erstellen möchten, müssen Sie die Vorlage in der Region erstellen, in der sich auch die Richtlinie für kompakte Platzierungen befindet. Andernfalls schlägt das Erstellen der Instanzvorlage fehl.
Nachdem Sie eine Instanzvorlage erstellt haben, die eine Richtlinie für kompakte Platzierung angibt, können Sie mit der Vorlage Folgendes tun:
Wählen Sie eine der folgenden Optionen aus, um eine Instanzvorlage zu erstellen, die eine Richtlinie für kompakte Platzierung angibt:
gcloud
Verwenden Sie zum Erstellen einer Instanzvorlage, die eine Richtlinie für kompakte Platzierungen angibt, den Befehl
gcloud compute instance-templates create
mit den Flags--maintenance-policy
und--resource-policies
.Beispiel: Führen Sie folgenden Befehl aus, um eine globale Instanzvorlage zu erstellen, die eine Richtlinie für kompakte Platzierungen angibt:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --maintenance-policy=MAINTENANCE_POLICY \ --resource-policies=POLICY_NAME
Ersetzen Sie Folgendes:
REST
Wenn Sie eine Instanzvorlage mit einer Richtlinie für kompakte Platzierungen erstellen möchten, senden Sie eine
POST
-Anfrage an eine der folgenden Methoden:Geben Sie im Anfragetext die Felder
onHostMaintenance
undresourcePolicies
an.Wenn Sie beispielsweise eine globale Instanzvorlage erstellen möchten, die eine Richtlinie für kompakte Platzierungen angibt, stellen Sie eine
POST
-Anfrage wie hier beschrieben:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "network": "global/networks/default" } ], "resourcePolicies": [ "POLICY_NAME" ], "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY" } } }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Erstellen einer Instanzvorlage finden Sie unter Instanzvorlagen erstellen.
Richtlinie auf VMs in einer verwalteten Instanzgruppe anwenden
Nachdem Sie eine Instanzvorlage erstellt haben, die eine Richtlinie für kompakte Platzierung angibt, können Sie mit der Vorlage Folgendes tun:
Richtlinie beim Erstellen einer MIG anwenden
Sie können VMs, die eine Richtlinie für kompakte Platzierung angeben, nur erstellen, wenn sich die VMs in derselben Region wie die Platzierungsrichtlinie befinden.
Wählen Sie eine der folgenden Optionen aus, um eine verwaltete Instanzgruppe mit einer Instanzvorlage zu erstellen, die eine Richtlinie für die kompakte Platzierung angibt:
gcloud
Verwenden Sie den Befehl
gcloud compute instance-groups managed create
, um eine verwaltete Instanzgruppe mit einer Instanzvorlage zu erstellen, die eine Richtlinie für die kompakte Platzierung angibt.Beispiel: Führen Sie folgenden Befehl aus, um eine zonale MIG mit einer globalen Instanzvorlage zu erstellen, die eine Richtlinie für kompakte Platzierungen angibt:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --size=SIZE \ --template=INSTANCE_TEMPLATE_NAME \ --zone=ZONE
Ersetzen Sie Folgendes:
REST
Wenn Sie eine MIG mit einer Instanzvorlage erstellen möchten, die eine Richtlinie für kompakte Platzierungen angibt, senden Sie eine
POST
-Anfrage an eine der folgenden Methoden:Wenn Sie beispielsweise eine zonale MIG mit einer globalen Instanzvorlage erstellen möchten, die eine Richtlinie für kompakte Platzierungen angibt, stellen Sie eine
POST
-Anfrage wie hier beschrieben:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "name": "INSTANCE_GROUP_NAME", "targetSize": SIZE, "versions": [ { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" } ] }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Erstellen von MIGs finden Sie unter Grundlegende Szenarien zum Erstellen von MIGs.
Richtlinie auf eine vorhandene verwaltete Instanzgruppe anwenden
Sie können eine Richtlinie für kompakte Platzierungen nur auf eine vorhandene verwaltete Instanzgruppe (MIG, Managed Instance Group) anwenden, wenn sich die MIG in derselben Region oder (bei zonalen MIGs) in einer Zone innerhalb derselben Region wie die Platzierungsrichtlinie befindet.
Wählen Sie eine der folgenden Optionen aus, um eine MIG so zu aktualisieren, dass sie eine Instanzvorlage verwendet, die eine Richtlinie für kompakte Platzierung angibt:
gcloud
Verwenden Sie den Befehl
gcloud compute instance-groups managed rolling-action start-update
, um eine MIG so zu aktualisieren, dass sie eine Instanzvorlage nutzt, die eine Richtlinie für kompakte Platzierung angibt.Wenn Sie beispielsweise eine zonale MIG so aktualisieren möchten, dass sie eine Instanzvorlage verwendet, die eine Richtlinie für kompakte Platzierungen angibt, und die vorhandenen VMs aus der MIG durch neue VMs ersetzen möchten, die die Attribute der Vorlage angeben, führen Sie den folgenden Befehl aus:
gcloud compute instance-groups managed rolling-action start-update MIG_NAME \ --version=template=INSTANCE_TEMPLATE_NAME \ --zone=ZONE
Ersetzen Sie Folgendes:
REST
Wenn Sie eine MIG so aktualisieren möchten, dass eine Instanzvorlage verwendet wird, die eine Richtlinie für kompakte Platzierung angibt, und Sie die Attribute der Vorlage und der Platzierungsrichtlinie automatisch auf vorhandene VMs in der MIG anwenden möchten, senden Sie eine
PATCH
-Anfrage an die folgende Methode.Wenn Sie beispielsweise eine zonale MIG so aktualisieren möchten, dass sie eine globale Instanzvorlage verwendet, die eine Richtlinie für kompakte Platzierungen angibt, und die vorhandenen VMs aus der MIG durch neue VMs ersetzen möchten, die die Attribute der Vorlage angeben, stellen Sie die folgende Anfrage
PATCH
:PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" }
Ersetzen Sie Folgendes:
Weitere Informationen zu den Konfigurationsoptionen zum Aktualisieren der VMs in einer MIG finden Sie unter Neue Konfigurationen auf VMs in einer MIG aktualisieren und anwenden.
Physischen Standort einer VM prüfen
Nachdem Sie eine Richtlinie für kompakte Platzierung auf eine VM angewendet haben, können Sie den physischen Standort der VM in Bezug auf andere VMs aufrufen. Dieser Vergleich ist auf VMs in Ihrem Projekt beschränkt, für die dieselbe Richtlinie für kompakte Platzierung angegeben ist. Wenn Sie den physischen Standort einer VM aufrufen, haben Sie folgende Möglichkeiten:
Wählen Sie eine der folgenden Optionen aus, um den physischen Standort einer VM in Bezug auf andere VMs aufzurufen, die dieselbe Richtlinie für kompakte Platzierung angeben:
gcloud
Verwenden Sie den Befehl
gcloud compute instances describe
mit dem Flag--format
, um den physischen Standort einer VM aufzurufen, die eine Richtlinie für kompakte Platzierung angibt.gcloud compute instances describe VM_NAME \ --format="table[box,title=VM-Position](resourcePolicies.scope():sort=1,resourceStatus.physicalHost:label=location)" \ --zone=ZONE
Ersetzen Sie Folgendes:
Die Ausgabe sieht in etwa so aus:
VM-Position RESOURCE_POLICIES: us-central1/resourcePolicies/example-policy'] PHYSICAL_HOST: /CCCCCCC/BBBBBB/AAAA
Der Wert für das Feld
PHYSICAL_HOST
besteht aus drei Teilen. Diese Teile stellen jeweils den Cluster, Rack und Host dar, auf dem sich die VM befindet.Beim Vergleich der Position von zwei VMs, die dieselbe Richtlinie für kompakte Platzierungen in Ihrem Projekt verwenden, gilt: Je mehr Teile des Felds
PHYSICAL_HOST
die VMs teilen, desto näher sind sie physisch beieinander. Angenommen, zwei VMs geben für das FeldPHYSICAL_HOST
jeweils einen der folgenden Beispielwerte an:REST
Führen Sie eine
GET
-Anfrage an die Methodeinstances.get
aus, um den physischen Standort einer VM aufzurufen, die eine Richtlinie für kompakte Platzierungen angibt.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Ersetzen Sie Folgendes:
Die Ausgabe sieht in etwa so aus:
{ ... "resourcePolicies": [ "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-policy" ], "resourceStatus": { "physicalHost": "/xxxxxxxx/xxxxxx/xxxxx" }, ... }
Der Wert für das Feld
physicalHost
besteht aus drei Teilen. Diese Teile stellen jeweils den Cluster, Rack und Host dar, auf dem sich die VM befindet.Beim Vergleich der Position von zwei VMs, die dieselbe Richtlinie für kompakte Platzierungen in Ihrem Projekt verwenden, gilt: Je mehr Teile des Felds
physicalHost
die VMs teilen, desto näher sind sie physisch beieinander. Angenommen, zwei VMs geben für das FeldphysicalHost
jeweils einen der folgenden Beispielwerte an: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-12-22 (UTC).
-