In diesem Dokument wird erläutert, wie Sie die Netzwerkleistung pro VM Tier_1 testen. Erstellen Sie dazu zwei VMs und streamen Sie den Traffic, um die Netzwerkleistung zu beobachten. Damit Sie dieses Feature nutzen können, müssen Sie Ihre VM mit Betriebssystemen erstellen, die die Google virtuelle NIC (gVNIC) unterstützen. Die Netzwerkleistung pro VM-Stufe 1 erfordert höhere VM-Größen. Achten Sie daher darauf, dass Ihr CPU-Kontingent ausreicht, um die VMs zu erstellen.
Hinweise
- Stellen Sie sicher, dass Sie in Ihrem Projekt ein öffentliches Image, das gVNIC unterstützt, verwenden, oder erstellen Sie ein benutzerdefiniertes Image.
- Prüfen Sie, ob Sie VPC-Firewallregeln erstellt haben, die eingehenden Traffic über Port TCP:5001 oder einen anderen Port Ihrer Wahl zulassen, um
iperf
-Leistungstests zuzulassen. - Verwenden Sie iPerf Version 2, nicht Version 3, um das Benchmarking durchzuführen.
-
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.
Verwenden Sie zum Erstellen eines Images den Befehl gcloud compute images create.
gcloud compute images create IMAGE_NAME \ --project=PROJECT_ID \ --source-image-family=SOURCE_IMAGE_FAMILY \ --source-image-project=SOURCE_IMAGE_PROJECT \ --guest-os-features=GVNIC
Dabei gilt:
- PROJECT_ID: Name Ihres Projekts
- IMAGE_NAME: Der Name des Images, das Sie erstellen möchten.
- SOURCE_IMAGE_FAMILY ist die erforderliche Version eines öffentlichen Images. Verwenden Sie für diesen Test
ubuntu-2004-lts
. - SOURCE_IMAGE_PROJECT: der Name des Projekts, das das Quell-Image enthält. Verwenden Sie für diesen Test
ubuntu-os-cloud
.
Beispiel
gcloud compute images create benchmark-image-test \ --project=my-project \ --source-image-family=ubuntu-2004-lts \ --source-image-project=ubuntu-os-cloud \ --guest-os-features=GVNIC
Erstellen Sie ein VPC-Netzwerk im automatischen Modus, das die maximale MTU-Einstellung verwendet:
gcloud compute networks create NETWORK_NAME \ --project=PROJECT_ID \ --subnet-mode=AUTO --mtu=8896
Dabei gilt:
- PROJECT_ID: Name Ihres Projekts
- NETWORK_NAME: Ein Name für das Netzwerk.
Erstellen Sie zwei identische Instanzen:
gcloud compute instances create \ VM_NAME_1 VM_NAME_2 \ --project=PROJECT_ID \ --zone=ZONE \ --machine-type=n2-standard-64 \ --image=projects/PROJECT_NAME/global/images/IMAGE_NAME \ --network=NETWORK_NAME \ --network-interface=nic-type=GVNIC \ --network-performance-configs=total-egress-bandwidth-tier=TIER_1
Dabei gilt:
- VM_NAME_1, VM_NAME_2 sind die Namen der VM-Instanzen, die Sie erstellen möchten.
- PROJECT_ID ist der Name Ihres Projekts.
- ZONE ist die Zone Ihrer VM. Beide VMs müssen sich in derselben Zone befinden.
- PROJECT_NAME/global/images/IMAGE_NAME ist Name Ihres Projekts und des Images.
- NETWORK_NAME: Der Name des Netzwerks, das Sie mit der maximalen MTU-Einstellung konfiguriert haben.
Führen Sie im Terminalfenster den folgenden Befehl aus:
/sbin/ifconfig | grep mtu
Die gemeldete MTU sollte 8896 sein.
ens4: flags=4163 mtu 8896 lo: flags=73 mtu 65536
- VM_NAME_1 ist der Name der VM-Instanz, den Sie aufrufen möchten.
- VM_NAME_2 ist der Name der VM-Instanz, den Sie aufrufen möchten.
- PROJECT_ID ist der Name Ihres Projekts.
- ZONE ist die Zone Ihrer VM. Beide VMs müssen sich in derselben Zone befinden.
Führen Sie die Schritte unter VMs für das Benchmarking einrichten aus, falls Sie dies noch nicht getan haben.
Wenn beide VMs ausgeführt werden, stellen Sie eine SSH-Verbindung zu einer der VMs her.
gcloud compute ssh VM_NAME_1 \ --project=PROJECT_ID
Dabei gilt:
- VM_NAME_1 ist der Name Ihrer ersten VM.
- PROJECT_ID ist der Name Ihres Projekts.
Führen Sie auf der ersten VM die folgenden Schritte aus:
Installieren Sie
iperf
.sudo apt-get update && sudo apt-get install iperf
Rufen Sie die interne IP-Adresse für diese VM ab. Notieren Sie sich die interne IP-Adresse für die spätere Verwendung.
ip a
Starten Sie den iPerf-Server.
iperf -s
Dadurch wird ein Server gestartet, der die Verbindungen überwacht, um die Benchmark zu ermitteln. Lassen Sie den iPerf-Server für die Dauer des Tests ausgeführt.
Stellen Sie in einem separaten Clientterminal über SSH eine Verbindung zur zweiten VM her.
gcloud compute ssh VM_NAME_2 \ --project=PROJECT_ID
Dabei gilt:
- VM_NAME_2 ist der Name Ihrer zweiten VM.
- PROJECT_ID ist der Name Ihres Projekts.
Führen Sie auf der zweiten VM die folgenden Schritte aus:
Installieren Sie iPerf.
sudo apt-get update && sudo apt-get install iperf
Führen Sie den iperf-Test aus und geben Sie die IP-Adresse der ersten VM als Ziel an.
iperf -t 30 -c internal_ip_of_instance_1 -P 16
Dadurch wird ein 30-Sekunden-Test durchgeführt. Wenn iPerf die andere VM nicht erreichen kann, müssen Sie gegebenenfalls die Netzwerk- oder Firewall-Einstellungen auf den VMs oder in der Cloud Console anpassen.
Das Ergebnis sollte in etwa so aussehen: Es zeigt das Limit von 75 Gbit/s für ausgehenden Traffic für
n2-standard-64
mit aktiviertem Tier_1-Netzwerk und überschreitet das standardmäßige Bandbreitenlimit von 32 Gbit/s.------------------------------------------------------------ Client connecting to 10.128.0.10, TCP port 5001 TCP window size: 1.59 MByte (default) ------------------------------------------------------------ [ 12] local 10.128.0.11 port 57722 connected with 10.128.0.10 port 5001 [ 11] local 10.128.0.11 port 57720 connected with 10.128.0.10 port 5001 [ 16] local 10.128.0.11 port 57730 connected with 10.128.0.10 port 5001 [ 6] local 10.128.0.11 port 57710 connected with 10.128.0.10 port 5001 [ 13] local 10.128.0.11 port 57724 connected with 10.128.0.10 port 5001 [ 8] local 10.128.0.11 port 57712 connected with 10.128.0.10 port 5001 [ 9] local 10.128.0.11 port 57716 connected with 10.128.0.10 port 5001 [ 14] local 10.128.0.11 port 57726 connected with 10.128.0.10 port 5001 [ 15] local 10.128.0.11 port 57728 connected with 10.128.0.10 port 5001 [ 10] local 10.128.0.11 port 57718 connected with 10.128.0.10 port 5001 [ 4] local 10.128.0.11 port 57706 connected with 10.128.0.10 port 5001 [ 5] local 10.128.0.11 port 57708 connected with 10.128.0.10 port 5001 [ 3] local 10.128.0.11 port 57704 connected with 10.128.0.10 port 5001 [ 17] local 10.128.0.11 port 57732 connected with 10.128.0.10 port 5001 [ 7] local 10.128.0.11 port 57714 connected with 10.128.0.10 port 5001 [ 18] local 10.128.0.11 port 57734 connected with 10.128.0.10 port 5001 [ ID] Interval Transfer Bandwidth [ 12] 0.0-30.0 sec 7.63 GBytes 2.19 Gbits/sec [ 11] 0.0-30.0 sec 17.7 GBytes 5.07 Gbits/sec [ 16] 0.0-30.0 sec 9.15 GBytes 2.62 Gbits/sec [ 6] 0.0-30.0 sec 43.8 GBytes 12.6 Gbits/sec [ 13] 0.0-30.0 sec 23.6 GBytes 6.76 Gbits/sec [ 8] 0.0-30.0 sec 13.3 GBytes 3.80 Gbits/sec [ 9] 0.0-30.0 sec 9.29 GBytes 2.66 Gbits/sec [ 14] 0.0-30.0 sec 19.6 GBytes 5.62 Gbits/sec [ 15] 0.0-30.0 sec 12.5 GBytes 3.58 Gbits/sec [ 10] 0.0-30.0 sec 11.1 GBytes 3.19 Gbits/sec [ 4] 0.0-30.0 sec 19.0 GBytes 5.43 Gbits/sec [ 5] 0.0-30.0 sec 7.32 GBytes 2.10 Gbits/sec [ 3] 0.0-30.0 sec 8.78 GBytes 2.51 Gbits/sec [ 17] 0.0-30.0 sec 17.5 GBytes 5.02 Gbits/sec [ 7] 0.0-30.0 sec 33.4 GBytes 9.57 Gbits/sec [ 18] 0.0-30.0 sec 7.64 GBytes 2.19 Gbits/sec [SUM] 0.0-30.0 sec 261 GBytes 74.9 Gbits/sec
Verwenden Sie den Befehl
gcloud compute instances delete
, um die Instanzen zu entfernen, die Sie für Benchmarktests erstellt haben.gcloud compute instances delete \ VM_NAME_1 VM_NAME_2 \ --project=PROJECT_ID \ --zone=ZONE
Dabei gilt:
- VM_NAME_1, VM_NAME_2 sind die Namen der beiden VM-Instanzen, die Sie löschen möchten.
- PROJECT_ID ist der Name Ihres Projekts.
- ZONE ist die Zone Ihrer VM. Beide VMs sollten sich in derselben Zone befinden.
Verwenden Sie den Befehl
gcloud compute networks delete
, um das Netzwerk zu entfernen, das Sie für Benchmarktests erstellt haben.gcloud compute networks delete NETWORK_NAME \ --project=PROJECT_ID
Dabei gilt:
- NETWORK_NAME: Der Name des Netzwerks, das Sie löschen möchten.
- PROJECT_ID ist der Name Ihres Projekts.
Verwenden Sie den Befehl
gcloud compute images delete
, um das Image zu entfernen, das Sie für Benchmarktests erstellt haben.gcloud compute images delete IMAGE_NAME \ --project=PROJECT_ID
Dabei gilt:
- IMAGE_NAME ist der Name des Images, das Sie löschen möchten.
- PROJECT_ID ist der Name Ihres Projekts.
- Netzwerkpreise der Stufe 1
- Weitere Informationen zu zusätzlichen Maschinentypen finden Sie unter Bandbreitenstufen.
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.
VMs für Benchmarking einrichten
Erstellen Sie zwei
n2-standard-64
-vCPU-Maschinen mit aktivierter VM-Leistung pro VM-Stufe 1 und der höchsten maximalen Übertragungseinheit (MTU). Dadurch erhalten Ihre VMs bis zu 75 Gbit/s maximale Leistung der ausgehenden Bandbreite über interne IP-Adressen.gcloud
Benchmark durchführen
Die beiden VMs müssen sich in derselben Zone und im selben VPC-Netzwerk befinden. Während der Benchmark führen diese beiden VMs bidirektionale Tests des VPC-Netzwerkpfads durch.
MTU-Einstellung prüfen
Prüfen Sie, ob das VPC-Netzwerk (Virtual Private Cloud) die maximale MTU-Einstellung hat, die mit
ifconfig
im Gastbetriebssystem einer der VMs konfiguriert ist.VM-Konfiguration prüfen
Prüfen Sie die virtuellen Maschinenattribute, um zu bestätigen, dass für die virtuellen Maschinen das Tier_1-Netzwerk aktiviert ist.
gcloud
Verwenden Sie zum Aufrufen der Instanzen den Befehl gcloud compute instances describe.
gcloud compute instances describe VM_NAME_1 \ --project=PROJECT_ID \ --zone=ZONE \ --format="text(networkPerformanceConfig)"
gcloud compute instances describe VM_NAME_2 \ --project=PROJECT_ID \ --zone=ZONE \ --format="text(networkPerformanceConfig)"
Dabei gilt:
In der Antwort sollte Folgendes angezeigt werden:
networkPerformanceConfig.totalEgressBandwidthTier: TIER_1
Führen Sie mit iPerf auf Debian-basierten Systemen den Benchmark durch.
gcloud
Ressourcen nach dem Benchmarktest entfernen
Entfernen Sie die Ressourcen, die Sie während des Benchmarktests erstellt haben, um Gebühren für das Image und zusätzliche VMs zu vermeiden.
gcloud
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-10-14 (UTC).
-