Internetzugang für Arbeitslast-VMs konfigurieren
Sie konfigurieren den Internetzugriffsnetzwerkdienst für VMware-Arbeitslasten in Google Cloud VMware Engine pro Region. Sie können Internettraffic von Ihren Arbeitslasten-VMware mithilfe der Internet-Edge von Google Cloud oder einer lokalen Verbindung leiten.
Arbeitslast-VMs, die auf das Internet zugreifen können, können auch über den privaten Google-Zugriff auf Google Cloud-Dienste zugreifen. Der Zugriff auf Google Cloud-Dienste mit privatem Google-Zugriff verbleibt in Google Cloud-Netzwerken und geht nicht ins Internet.
Der Netzwerkdienst für den Internetzugang unterstützt Folgendes:
- Bis zu 100 öffentliche IP-Adressen pro Region
- Bis zu 300 Firewallregeln pro Firewalltabelle
- Durchsatz von bis zu 2 Gbit/s bei 128.000 gleichzeitigen Verbindungen für jede Region
- TCP-, UDP- und ICMP-Protokolle
Der Netzwerkdienst für den Internetzugang unterstützt keine ALG-Funktionen (Application Level Gateway).
Hinweise
Um Änderungen an den Einstellungen für den Internetzugriff Ihrer privaten Cloud vorzunehmen, benötigen Sie Administratorzugriff auf VMware Engine.
Um den Internetzugriff zu aktivieren, benötigen Sie einen CIDR-Adressbereich für Edge-Dienste. Wenn Sie den Internetzugang oder öffentliche IP-Netzwerkdienste aktivieren, werden Gateways im Kontext des Dienstmandanten bereitgestellt.
Verwenden Sie den CIDR-Adressbereich für Edge-Dienste für die Adressierung von Internet- und öffentlichen IP-Gateways von VMware Engine. Der Adressbereich muss die folgenden Anforderungen erfüllen:
- Halten Sie RFC 1918 als privaten Bereich ein.
- Sie dürfen sich nicht mit anderen VMware Engine-Adressbereichen überschneiden, wie z. B. dem Adressbereich für Verwaltungsgeräte oder NSX-T-Segmente.
- Sie dürfen sich nicht mit Adressbereichen überschneiden, die in VMware Engine beworben werden, beispielsweise aus VPC-Netzwerk-Subnetzen oder aus lokalen Netzwerken.
- Geben Sie einen IP-Adressbereich mit 26 Subnetzmasken-Bits (/26) an.
Anforderungen an die Google Cloud CLI und API
Wenn Sie das gcloud
-Befehlszeilentool oder die API zum Verwalten Ihrer VMware Engine-Ressourcen verwenden möchten, empfehlen wir, die Tools wie unten beschrieben zu konfigurieren.
gcloud
Legen Sie Ihre Standardprojekt-ID fest:
gcloud config set project PROJECT_ID
Legen Sie eine Standardregion und -zone fest:
gcloud config set compute/region REGION
gcloud config set compute/zone ZONE
Weitere Informationen zum gcloud vmware
-Tool finden Sie in der Cloud SDK-Referenzdokumentation.
API
API-Beispiele in dieser Dokumentation verwenden das cURL
-Befehlszeilentool, um die API abzufragen. Ein gültiges Zugriffstoken ist im Rahmen der cURL
-Anfrage erforderlich. Es gibt viele Möglichkeiten, ein gültiges Zugriffstoken abzurufen. In den folgenden Schritten wird das gcloud
-Tool verwendet, um ein Zugriffstoken zu generieren:
Melden Sie sich in Google Cloud an:
gcloud auth login
Generieren Sie ein Zugriffstoken und exportieren Sie es in TOKEN:
export TOKEN=`gcloud auth print-access-token`
Überprüfen Sie, ob TOKEN ordnungsgemäß festgelegt ist:
echo $TOKEN
Verwenden Sie nun das Autorisierungstoken in Ihren Anfragen an die API. Beispiel:
curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations
Python
In den Python-Codebeispielen in dieser Dokumentation wird die VMware Engine-Bibliothek für die Kommunikation mit der API verwendet. Um diesen Ansatz verwenden zu können, muss die Bibliothek installiert und die Standardanmeldedaten für Anwendungen konfiguriert werden.
Laden Sie die Python-Bibliothek herunter und installieren Sie sie:
pip install google-cloud-vmwareengine
Konfigurieren Sie die ADC-Informationen, indem Sie diese Befehle in Ihrer Shell ausführen:
gcloud auth application-default login
Alternativ können Sie eine Dienstkonto-Schlüsseldatei verwenden:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
Weitere Informationen zur Bibliothek finden Sie auf der Referenzseite oder in den Codebeispielen auf GitHub.
Internetzugriffsdienst konfigurieren
Sie können Ihren Arbeitslast-VMs Zugriff auf das Internet gewähren, indem Sie eine Netzwerkrichtlinie erstellen oder aktualisieren.
Standardmäßig ist der Netzwerkdienst zum Internetzugriff deaktiviert.
Internetzugriffsdienst in einer Region aktivieren
Console
So aktivieren Sie den Internetzugriffsdienst in einer Region:
- Rufen Sie die Google Cloud Console auf.
- Gehen Sie in der Hauptnavigation zu Netzwerkrichtlinien.
- Klicken Sie auf Erstellen, um eine neue Richtlinie zu erstellen. Wenn Sie eine vorhandene Netzwerkrichtlinie bearbeiten möchten, klicken Sie auf das Symbol Mehr am Ende einer Zeile und wählen Sie Bearbeiten aus.
- Geben Sie die Details Ihrer Netzwerkrichtlinie ein und wählen Sie das Netzwerk und die Region aus, für die die Richtlinie gilt.
Setzen Sie Internetzugriff auf Aktiviert und aktivieren Sie optional den Dienst für externe IP-Adressen.
Geben Sie im Feld CIDR für Edge-Dienste den Adressbereich ein, der beim Adressieren des VMware Engine-Internetgateways verwendet werden soll (/26-Adressbereich).
Klicken Sie auf Erstellen.
Wenn der Vorgang abgeschlossen ist, ändert sich der Status des Dienstes in Aktiviert (in der Regel nach einigen Minuten).
gcloud
Führen Sie mit dem gcloud
-Tool den folgenden Befehl aus, um eine Netzwerkrichtlinie zu erstellen:
gcloud vmware network-policies create NETWORK_POLICY_NAME \ --vmware-engine-network projects/PROJECT_ID/locations/LOCATIONS/vmwareEngineNetworks/NETWORK_ID \ --edge-services-cidr=IP_RANGE \ --location=LOCATION \ --internet-access
Ersetzen Sie Folgendes:
NETWORK_POLICY_NAME
ist der Name dieser Netzwerkrichtlinie.NETWORK_ID
: das Netzwerk, für das diese Netzwerkrichtlinie giltIP_RANGE
: der für Internetzugriff und externe IP-Zugriffsgateways zu verwendende CIDR-Bereich in CIDR-Notation. Ein CIDR-Block nach RFC 1918 mit dem Präfix „/26“ ist erforderlich.LOCATION
:global
für Legacy-Netzwerke oder die Region eines Standardnetzwerks
API
curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies?networkPolicyId=NETWORK_POLICY_NAME '{ "vmwareEngineNetwork":"projects/PROJECT_ID/locations/LOCATION/vmwareEngineNetworks/NETWORK_ID", "edgeServiceCidr":IP_RANGE, "internetAccess: { "enabled": true }, "externalIp": { "enabled": true } }"
Ersetzen Sie Folgendes:
NETWORK_POLICY_NAME
ist der Name dieser Netzwerkrichtlinie. Er muss das FormatREGION-default
haben.PROJECT_ID
ist die Projekt-ID für diese Anfrage.LOCATION
:global
für Legacy-Netzwerke oder die Region eines StandardnetzwerksIP_RANGE
: der für Internetzugriff und externe IP-Zugriffsgateways zu verwendende CIDR-Bereich in CIDR-Notation. Ein CIDR-Block nach RFC 1918 mit dem Präfix „/26“ ist erforderlich.NETWORK_ID
: das Netzwerk für diese Netzwerkrichtlinie
Python
Internetzugriffsdienst in einer Region deaktivieren
So deaktivieren Sie den Internetzugriffsdienst in einer Region:
Console
- Rufen Sie die Google Cloud Console auf.
- Gehen Sie in der Hauptnavigation zu Netzwerkrichtlinien.
- Klicken Sie in der Zeile für die entsprechende Netzwerkrichtlinie auf das Symbol Mehr .
Ändern Sie die Einstellung für Internetzugriff auf Deaktiviert.
- Sie müssen den öffentlichen IP-Dienst deaktivieren, bevor Sie den Internetzugriff deaktivieren können.
- Sie müssen alle zugewiesenen öffentlichen IP-Adressen und Point-to-Site-VPN-Gateways löschen, bevor Sie den öffentlichen IP-Dienst deaktivieren können.
Klicken Sie auf Speichern.
Wenn der Vorgang abgeschlossen ist, ändert sich der Status des Dienstes in Deaktiviert (in der Regel nach einigen Minuten).
gcloud
Führen Sie mit dem gcloud
-Tool den folgenden Befehl aus, um die Netzwerkrichtlinie zu aktualisieren:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --location LOCATION
Ersetzen Sie Folgendes:
NETWORK_POLICY_NAME
: der Name dieser NetzwerkrichtlinieLOCATION
:global
für Legacy-Netzwerke oder die Region eines Standardnetzwerks
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled -d "{ "internetAccess: { "enabled": false }, "externalIp": { "enabled": false } }"
Ersetzen Sie Folgendes:
PROJECT_ID
ist die Projekt-ID für diese Anfrage.LOCATION
:global
für Legacy-Netzwerke oder die Region eines StandardnetzwerksNETWORK_POLICY_NAME
: der Name dieser Netzwerkrichtlinie
Python
Lokale Verbindung für den Arbeitslast-Internetzugriff verwenden
Optional können Sie Internet-Traffic von Ihren Arbeitslast-VMs in VMware Engine über eine lokale Verbindung weiterleiten. Der Traffic wird anhand des Status der folgenden Elemente weitergeleitet:
- Standardmäßiges Route Advertisement (
0.0.0.0/0
) aus lokaler Umgebung - Öffentlicher IP-Dienst von VMware Engine
- Internetzugriffsdienst von VMware Engine
- VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und der VMware Engine
Routing von Internettraffic über eine lokale Verbindung aktivieren
Für den Zugriff auf das Internet von Ihren Arbeitslast-VMs über eine lokale Verbindung müssen Sie zwei Schritte ausführen:
- Bieten Sie die Standardroute (
0.0.0.0/0
) lokal von einer lokalen Verbindung (Cloud VPN oder Cloud Interconnect) an. Prüfen Sie das Cloud VPN-Gateway oder den Cloud Router, in dem die lokale Verbindung zu Ihrem VPN endet. - Deaktivieren Sie den Internetzugriff und den öffentlichen IP-Dienst für das VMware Engine-Netzwerk.
Console
- Rufen Sie die Google Cloud Console auf.
- Gehen Sie in der Hauptnavigation zu Netzwerkrichtlinien.
- Klicken Sie in der Zeile für die entsprechende Netzwerkrichtlinie auf das Symbol Mehr .
Ändern Sie die Option Öffentliche IP-Adresse auf Deaktiviert.
Ändern Sie die Einstellung für Internetzugriff auf Deaktiviert.
Klicken Sie auf Speichern.
Bei Verwendung eines Legacy-VMware Engine-Netzwerks:Aktivieren Sie mit dem Befehl
gcloud services vpc-peerings enable-vpc-service-controls
die VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und VMware Engine:gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
gcloud
Führen Sie mit dem gcloud
-Tool den folgenden Befehl aus, um die Netzwerkrichtlinie zu aktualisieren:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --no-external-ip-address \ --location LOCATION
Ersetzen Sie Folgendes:
NETWORK_POLICY_NAME
: der Name dieser NetzwerkrichtlinieLOCATION
:global
für Legacy-Netzwerke oder die Region eines Standardnetzwerks
Bei Verwendung eines VMware Engine-Legacy-Netzwerks:Aktivieren Sie mit dem Befehl gcloud services vpc-peerings enable-vpc-service-controls
die VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und VMware Engine:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled "{ "internetAccess: { "enabled": false }, "externalIp: { "enabled": false } }"
Bei Verwendung eines VMware Engine-Legacy-Netzwerks:Aktivieren Sie mit dem Befehl gcloud services vpc-peerings enable-vpc-service-controls
die VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und VMware Engine:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
Python
Legen Sie internet_access und external_ip auf False
fest.
Bei Verwendung eines VMware Engine-Legacy-Netzwerks:Aktivieren Sie mit dem Befehl gcloud services vpc-peerings enable-vpc-service-controls
die VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und VMware Engine:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
Das Aktivieren von VPC Service Controls ist wichtig, um Internettraffic entweder über eine lokale Verbindung oder eine VPC in Ihrem Projekt weiterzuleiten.
Wenn VPC Service Controls aktiviert ist, nimmt Google Cloud im VPC-Netzwerk des Diensterstellers (in diesem Fall das Dienstmandantenprojekt, das über Peering mit der VMware Engine verbunden ist) die folgenden Routingänderungen vor:
- Entfernt die IPv4-Standardroute (Ziel
0.0.0.0/0
, Standard-Internetgateway für den nächsten Hop). - Leitet Internettraffic über die VPC-Peering-Standardroute weiter.
Beispiel:
Verwenden Sie den Befehl gcloud services vpc-peerings enable-vpc-service-controls
, um VPC Service Controls für das Verbindungs-Peering eines Netzwerks mit dem Namen „my-network“ im aktuellen Projekt zu aktivieren:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=my-network \ --service=servicenetworking.googleapis.com
Routing von Internet-Traffic über eine lokale Verbindung deaktivieren
Wenn Sie das Routing des Internettraffics von Ihren Arbeitslast-VMs über eine lokale Verbindung deaktivieren möchten, beenden Sie das Advertising der Standardroute (0.0.0.0/0
) und deaktivieren Sie VPC Service Controls für die VPC-Peering-Verbindung.
Bei Verwendung eines VMware Engine-Legacy-Netzwerks:Deaktivieren Sie VPC Service Controls für die VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und VMware Engine. Verwenden Sie dazu den Befehl gcloud services vpc-peerings disable-vpc-service-controls
:
gcloud services vpc-peerings disable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
Nächste Schritte
- Informationen zum Zuweisen einer öffentlichen IP-Adresse für eine VM in Ihrer privaten Cloud.
- Informationen zum Filtern des Netzwerkverkehrs zu und von privaten Cloud-Ressourcen mit Firewalltabellen und Firewallregeln