In diesem Dokument wird beschrieben, wie Sie die Netzwerkleistung von Tier 1 für bestimmte VM-Instanzen in Google Distributed Cloud (GDC) Air-Gapped konfigurieren. VMs mit Tier 1-Netzwerkkonfigurationen sind besonders nützlich für große, verteilte Computing-Arbeitslasten mit einer massiven Kommunikation zwischen Knoten, wie Hochleistungs-Computing (HPC, High Performance Computing), maschinelles Lernen (ML) und Deep Learning (DL).
Hinweise
Wenn Sie die Befehle der gdcloud-Befehlszeile (Command-Line Interface, CLI) verwenden möchten, müssen Sie die gdcloud-CLI heruntergeladen, installiert und konfiguriert haben.
Für alle Befehle für Distributed Cloud wird die CLI gdcloud oder kubectl verwendet. Außerdem ist eine Betriebssystemumgebung erforderlich.
Pfad der kubeconfig-Datei abrufen
Damit Sie Befehle für den Management API-Server ausführen können, benötigen Sie die folgenden Ressourcen:
Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Management API-Server, falls Sie noch keine haben.
Verwenden Sie den Pfad zur kubeconfig-Datei des Management API-Servers, um
MANAGEMENT_API_SERVERin dieser Anleitung zu ersetzen.
Berechtigungen und Zugriff anfordern
Zum Ausführen der auf dieser Seite aufgeführten Aufgaben benötigen Sie die Rolle „ProjectVirtualMachine Admin“. Führen Sie die Schritte aus, um zu prüfen, ob Sie die Rolle „Project VirtualMachine Admin“ (project-vm-admin) im Namespace des Projekts haben, in dem sich die VM befindet.
Für VM-Vorgänge über die GDC-Konsole oder die gdcloud-CLI bitten Sie Ihren Projekt-IAM-Administrator, Ihnen sowohl die Rolle „Project VirtualMachine Admin“ als auch die Rolle „Project Viewer“ (project-viewer) zuzuweisen.
Beschränkungen
Das Netzwerk der Stufe 1 wird für N2-, N3-, N4-, A2- und A3-Maschinentypen mit mindestens 4 vCPUs unterstützt.
Bandbreitenstufen
Das Bandbreitenlimit für eingehenden und ausgehenden Traffic stellt die maximal mögliche Datenmenge pro Zeiteinheit dar, z. B. Gigabit pro Sekunde (Gbit/s), die GDC einer VM-Instanz erlaubt, über ihre Netzwerkschnittstellen (NICs) zu übertragen oder zu empfangen. Die Bandbreite umfasst Daten, die zwischen VM-Instanzen und Objektspeicher übertragen werden.
Für GDC gelten die folgenden Bandbreitenbeschränkungen:
- Das Standardlimit für die Bandbreite beträgt 10 Gbit/s.
- Tier 1-Netzwerke erhöhen das maximale Limit für die Bandbreite für ausgehenden Traffic für Compute-Instanzen. Die maximale Bandbreite für ausgehenden Traffic reicht von 16 Gbit/s bis 25 Gbit/s, je nach Größe und Maschinentyp Ihrer Instanz.
- Die tatsächliche Bandbreite für ausgehenden Traffic ist immer kleiner oder gleich dem Limit für die Bandbreite für ausgehenden Traffic.
Um die höchstmögliche Bandbreite für ausgehenden Traffic zu erreichen, müssen alle folgenden Punkte gegeben sein:
- Die Compute-Instanzen für das Senden und Empfangen müssen sich in derselben Zone befinden.
- Pakete, die zwischen den Instanzen gesendet werden, müssen interne IP-Adressziele verwenden.
- Die Anzahl der TCP-Flows muss zwischen 4 und 128 Flows liegen.
- Auf den sendenden Instanzen muss TSO (TCP Segmentation Offload) aktiviert sein und auf den empfangenden Instanzen GRO (Generic Receive Offload).
N2- und N3-VMs
| vCPUs | Interne IP-Adresse | Interne Tier 1-IP |
|---|---|---|
| 2 | 10 Gbit/s | Nicht zutreffend |
| 4 | 10 Gbit/s | Nicht zutreffend |
| 8 | 10 Gbit/s | 16 Gbit/s |
| 12 | 10 Gbit/s | 25 Gbit/s |
| 16 | 10 Gbit/s | 25 Gbit/s |
| 32 | 10 Gbit/s | 25 Gbit/s |
| 64 | 10 Gbit/s | 25 Gbit/s |
N4-VMs
| vCPUs | Interne IP-Adresse | Interne Tier 1-IP |
|---|---|---|
| 4 | 10 Gbit/s | Nicht zutreffend |
| 8 | 10 Gbit/s | Nicht zutreffend |
| 16 | 10 Gbit/s | 25 Gbit/s |
| 32 | 10 Gbit/s | 25 Gbit/s |
| 48 | 10 Gbit/s | 25 Gbit/s |
| 64 | 10 Gbit/s | 25 Gbit/s |
| 80 | 10 Gbit/s | 25 Gbit/s |
| 160 | 10 Gbit/s | 25 Gbit/s |
A2-VMs
| vCPUs | Interne IP-Adresse | Interne Tier 1-IP |
|---|---|---|
| 12 | 10 Gbit/s | 18 Gbit/s |
| 24 | 10 Gbit/s | 25 Gbit/s |
A3-VMs
| vCPUs | Interne IP-Adresse | Interne Tier 1-IP |
|---|---|---|
| 28 | 10 Gbit/s | 25 Gbit/s |
| 56 | 10 Gbit/s | 25 Gbit/s |
| 112 | 10 Gbit/s | 25 Gbit/s |
VM mit Tier 1-Netzwerk konfigurieren
VMs und Container erstellen, die Tier 1-Netzwerke verwenden:
gdcloud
gdcloud compute instances create VM_NAME \
--machine-type=MACHINE_TYPE \
--image=BOOT_DISK_IMAGE_NAME --image-project=vm-system \
--boot-disk-size=BOOT_DISK_SIZE \
--network-performance-tier=tier_1
Ersetzen Sie Folgendes:
| Variable | Definition |
|---|---|
VM_NAME |
Der Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. |
MACHINE_TYPE |
Der vordefinierte Maschinentyp für die neue VM. Wählen Sie einen verfügbaren Maschinentyp aus:
gdcloud compute machine-types list
|
BOOT_DISK_IMAGE_NAME |
Der Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. |
BOOT_DISK_SIZE |
Die Größe des Bootlaufwerks, z. B. 20GB.Dieser Wert muss immer größer oder gleich dem minimumDiskSize des Bootlaufwerk-Images sein. |
API
kubectl --kubeconfig MANAGEMENT_API_SERVER \
apply -n PROJECT -f - <<EOF
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineDisk
metadata:
name: VM_BOOT_DISK_NAME
spec:
source:
image:
name: BOOT_DISK_IMAGE_NAME
namespace: vm-system
size: BOOT_DISK_SIZE
---
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachine
metadata:
name: VM_NAME
spec:
compute:
virtualMachineType: MACHINE_TYPE
disks:
- virtualMachineDiskRef:
name: VM_BOOT_DISK_NAME
boot: true
autoDelete: BOOT_DISK_AUTO_DELETE
network:
networkPerformanceTier: Tier_1
EOF
Ersetzen Sie Folgendes:
| Variable | Definition |
|---|---|
MANAGEMENT_API_SERVER |
Die kubeconfig-Datei des Management-API-Servers. |
PROJECT |
Das Distributed Cloud-Projekt, in dem die VM erstellt werden soll. |
VM_BOOT_DISK_NAME |
Der Name des neuen VM-Bootlaufwerks. |
BOOT_DISK_IMAGE_NAME |
Der Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. |
BOOT_DISK_SIZE |
Die Größe des Bootlaufwerks, z. B. 20Gi.Dieser Wert muss immer größer oder gleich dem minimumDiskSize des Bootlaufwerk-Images sein. |
VM_NAME |
Der Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. |
MACHINE_TYPE |
Der vordefinierte Maschinentyp für die neue VM. Wählen Sie einen verfügbaren Maschinentyp aus:
kubectl --kubeconfig MANAGEMENT_API_SERVER
get virtualmachineimage.virtualmachine.gdc.goog --namespace PROJECT
|
BOOT_DISK_AUTO_DELETE |
Entweder true oder false, je nachdem, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird. |