Logging und Monitoring verwenden

Logging

Cloud NAT-Logging ermöglicht das Logging von NAT-Verbindungen und Fehlern. Wenn Cloud NAT-Logging aktiviert ist, kann für jedes der folgenden Szenarien ein Logeintrag erstellt werden:

  • Wenn eine Netzwerkverbindung mit NAT erstellt wird.
  • Wenn ein Paket verworfen wird, weil kein Port für NAT verfügbar war.

Sie können entweder beide Arten von Ereignissen oder nur eines der beiden Ereignisse protokollieren.

Erstellte Logs werden an Cloud Logging gesendet.

Spezifikationen

Für NAT-Logging gelten die folgenden Spezifikationen:

  • Cloud NAT-Logging verarbeitet nur TCP- und UDP-Traffic.

  • Cloud NAT-Logging protokolliert nur Pakete für Pakete, die ausgehende (ausgehende) TCP- und UDP-Pakete sind. Eingegangene Pakete werden nicht protokolliert. Wenn beispielsweise eine eingehende Antwort auf eine ausgehende Anfrage aus einem beliebigen Grund gelöscht wird, wird kein Fehler protokolliert.

Jede VM-Instanz kann nur eine bestimmte Anzahl von Logeinträgen pro Zeiteinheit proportional zu ihrer Anzahl von vCPUs generieren. Die VM kann 50–100 Logeinträge pro Sekunde und vCPU generieren.

  • Dieser Schwellenwert gilt für die Anzahl der Ereignisse, die protokolliert werden können. Auch wenn einige Ereignisse herausgefiltert werden, wird ihr Vorkommen auf die Anzahl möglicher Logeinträge angerechnet. Das Einschränken von Logs auf Fehler oder Verbindungen zur Netzwerkadressübersetzung erhöht nicht zwangsläufig die Anzahl der angezeigten Logeinträge. Wenn Sie beispielsweise nur erfolgreiche Verbindungen protokollieren, können übermäßig viele fehlgeschlagene Verbindungsversuche und NAT-Fehler die Anzahl der erfolgreichen Verbindungslogeinträge einschränken.

  • Beim Cloud NAT-Logging wird nicht jedes einzelne Paket protokolliert. Selbst wenn der Ratengrenzwert der VM nicht erreicht wurde, können einige Bedingungen dazu führen, dass Ereignisse aus dem Log ausgelassen werden. Sie sollten sich auf Einträge im Cloud NAT-Logging verlassen, um fundierte Entscheidungen treffen zu können. Sie sollten jedoch nicht davon ausgehen, dass ein Ereignis nicht stattgefunden hat.

Logs konfigurieren

Führen Sie die folgenden Schritte aus, um das Cloud NAT-Logging zu konfigurieren.

Logging aktivieren

Wenn das Logging aktiviert ist, werden alle erfassten Logs standardmäßig an Cloud Logging gesendet. Sie können diese so filtern, dass nur bestimmte Logs gesendet werden.

Sie können diese Werte auch angeben, wenn Sie ein NAT-Gateway erstellen oder bearbeiten. In der folgenden Anleitung wird gezeigt, wie Sie das Logging für ein vorhandenes NAT-Gateway aktivieren.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud NAT auf.

    Zur Seite "Cloud NAT"

  2. Klicken Sie auf Ihr NAT-Gateway.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Logging, Mindestanzahl an Ports, Zeitlimit, um diesen Abschnitt zu öffnen.

  5. Wählen Sie unter Stackdriver-Logging eine der folgenden Optionen aus:

    • Kein Logging: Logging wird deaktiviert.
    • Übersetzung und Fehler: Alle Logs werden an Logging gesendet.
    • Nur Übersetzung: Log wird nur dann gesendet, wenn eine Verbindung erstellt wird. Verworfene Pakete werden nicht protokolliert.
    • Nur Fehler: Log wird gesendet, wenn ein Paket gelöscht wird, weil kein Port verfügbar war; neue Verbindungen werden nicht protokolliert.
  6. Klicken Sie auf Speichern.

gcloud

Die folgenden Befehle aktivieren Logging für ein vorhandenes NAT-Gateway.

Ersetzen Sie in jedem Befehl Folgendes:

  • NAT_GATEWAY: Name des NAT-Gateways
  • ROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostet
  • REGION: Region des Cloud Routers

So protokollieren Sie Ereignisse und Fehler von Netzwerkadressübersetzungen und -fehler:

gcloud compute routers nats update NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION \
    --enable-logging

So protokollieren Sie nur Ereignisse von Netzwerkadressübersetzungen:

gcloud compute routers nats update NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION \
    --enable-logging \
    --log-filter=TRANSLATIONS_ONLY

So protokollieren Sie nur Fehler:

gcloud compute routers nats update NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION \
    --enable-logging \
    --log-filter=ERRORS_ONLY

Logfilter löschen

Wenn Sie einen Filter haben, können Sie ihn löschen. Das Löschen eines Logfilters bedeutet, dass sowohl Übersetzungsereignisse als auch Fehler im Netzwerk protokolliert werden, sofern Logging aktiviert ist.

Console

  1. Rufen Sie in der Cloud Console die Seite Cloud NAT auf.

    Zur Seite "Cloud NAT"

  2. Klicken Sie auf Ihr NAT-Gateway.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Logging, Mindestanzahl an Ports, Zeitlimit, um diesen Abschnitt zu öffnen.

  5. Wählen Sie unter Stackdriver-Logging die Option Übersetzung und Fehler aus.

  6. Klicken Sie auf Speichern.

gcloud

gcloud compute routers nats update NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION \
    --log-filter=ALL

Ersetzen Sie Folgendes:

  • NAT_GATEWAY: Name des NAT-Gateways
  • ROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostet
  • REGION: Region des Cloud Routers
  • --log-filter=ALL: Legt den Logfilter so fest, dass alle Logs akzeptiert werden.

Logging deaktivieren

So deaktivieren Sie das Logging:

Console

  1. Rufen Sie in der Cloud Console die Seite Cloud NAT auf.

    Zur Seite "Cloud NAT"

  2. Klicken Sie auf Ihr NAT-Gateway.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Logging, Mindestanzahl an Ports, Zeitlimit, um diesen Abschnitt zu öffnen.

  5. Wählen Sie unter Stackdriver-Logging die Option Kein Logging aus.

  6. Klicken Sie auf Speichern.

gcloud

gcloud compute routers nats update NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION \
    --no-enable-logging

Ersetzen Sie Folgendes:

  • NAT_GATEWAY: Name des NAT-Gateways
  • ROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostet
  • REGION: Region des Cloud Routers

Logging-Status wird ermittelt

So ermitteln Sie den Status für Logging:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud NAT auf.

    Zur Seite "Cloud NAT"

  2. Klicken Sie auf Ihr NAT-Gateway.

  3. Sehen Sie sich im Abschnitt Logging, Mindestanzahl an Ports, Zeitlimit die Auswahl unter Stackdriver Logging an.

gcloud

gcloud compute routers nats describe NAT_GATEWAY \
    --router=ROUTER_NAME \
    --region=REGION

Ersetzen Sie Folgendes:

  • NAT_GATEWAY: Name des NAT-Gateways
  • ROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostet
  • REGION: Region des Cloud Routers

Logs ansehen

So rufen Sie NAT-Logs auf:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Loganzeige auf.

    Loganzeige aufrufen

    • Um alle NAT-Logs anzuzeigen, wählen Sie im ersten Drop-down-Menü Cloud NAT-Gateway aus.
    • Wählen Sie zum Ansehen von Logs für nur eine Region im ersten Drop-down-Menü Cloud NAT-Gateway aus und bewegen Sie den Cursor nach rechts, um eine Region auszuwählen.
    • Um Logs für nur ein Gateway anzusehen, wählen Sie im ersten Drop-down-Menü Cloud NAT-Gateway aus und bewegen Sie den Cursor nach rechts, um eine Region auszuwählen. Bewegen Sie dann den Cursor nach rechts, um ein einzelnes Gateway auszuwählen.

Alternativ können Sie die Seite Loganzeige aufrufen und Folgendes in das Feld Nach Label oder Textsuche filtern einfügen:

resource.type="nat_gateway"
logName="projects/{#project_id}/logs/compute.googleapis.com%2Fnat_flows"

gcloud

gcloud logging read 'resource.type=nat_gateway' \
    --limit=10 \
    --format=json

Wobei:

  • resource.type=nat_gateway begrenzt die Ausgabe auf Ihre NAT-Gateways.
  • --limit=10 beschränkt die Ausgabe auf 10 Einträge. Sie können einen anderen Wert festlegen, um mehr oder weniger Einträge anzuzeigen, oder ihn vollständig weglassen, um ein kontinuierliches Scrollen der Logs zu sehen.
  • --format=json zeigt die Ausgabe im JSON-Format an.

Weitere Optionen finden Sie unter Logeinträge lesen.

Sie können den Export von logbasierten Messwerten für Ressourcenlogs konfigurieren.

Was wird protokolliert?

Cloud NAT-Logeinträge enthalten Informationen, die für das Monitoring und die Fehlerbehebung Ihres NAT-Traffics nützlich sind. Folgende Informationen sind in Ihnen enthalten:

  • Allgemeine Informationen, die in Google Cloud-Logs angezeigt werden, wie Wichtigkeit, Projekt-ID, Projektnummer und Zeitstempel.
  • Spezifische Informationen zu Cloud NAT. Einige Log-Felder enthalten Einträge, die selbst mehrere Felder sind. Diese Einträge und Feldbeschreibungen werden in den folgenden Tabellen dargestellt.

Logfelder

Feld Wert Bedeutung
connection object(NatIpConnection) 7-Tupel, das die Quell-VM-IP-Adresse und -Port, die NAT-Quell-IP-Adresse und -Port, die Ziel-IP-Adresse und -Port sowie das IP-Adressprotokoll dieser Verbindung beschreibt.
allocation_status enum Gibt an, ob diese Verbindung erfolgreich zugewiesen oder verworfen wurde. Entweder OK oder DROPPED.
gateway_identifiers object(NatGateway) Die NAT-Gateway-Konfiguration, die von der Verbindung verwendet wurde.
endpoint object(InstanceDetails) Details zur VM-Instanz: In einer freigegebenen VPC-Konfiguration entspricht project_id dem Dienstprojekt.
vpc object(VpcDetails) Details zum VPC-Netzwerk: In der Konfiguration einer freigegebenen VPC entspricht project_id der ID des Hostprojekts.
destination object(DestinationDetails) Details zum Ziel der Verbindung.

Feldformat von NatIpConnection

Feld Typ Beschreibung
src_ip String IP-Adresse der Quelle
src_port int32 Quellport
nat_ip String NAT-IP-Adresse
nat_port int32 NAT-zugewiesener Port
dest_ip String IP-Adresse des Ziels
dest_port int32 Zielport
protocol int32 IANA-Protokollnummer

Feldformat von NatGateway

Feld Typ Beschreibung
gateway_name String Name des NAT-Gateways
router_name String Cloud Router, der dem NAT-Gateway zugeordnet ist
region String Region des Cloud Routers

Feldformat von InstanceDetails

Feld Typ Beschreibung
project_id String ID des Projekts, das die VM enthält
vm_name String Instanzname der VM
region String Region des Cloud Routers
zone String Zone der VM

Feldformat von VpcDetails

Feld Typ Beschreibung
project_id String ID des Projekts, das das Netzwerk enthält
vpc_name String Netzwerk, in dem die VM ausgeführt wird
subnetwork_name String Subnetz, in dem die VM ausgeführt wird

Feldformat von DestinationDetails

Feld Typ Beschreibung
geo_location object(GeographicDetails) Wenn das Ziel der Verbindung außerhalb von Google Cloud lag, wird dieses Feld mit verfügbaren Standortmetadaten gefüllt.
instance object(InstanceDetails) Wenn das Ziel der Verbindung eine Instanz innerhalb desselben Projekts wie die Quelle ist, enthält dieses Feld VM-Instanzdetails.

Feldformat von GeographicDetails

Feld Typ Beschreibung
continent String Kontinent für externe Endpunkte
country String Land für externe Endpunkte
region String Region für externe Endpunkte
city String Stadt für externe Endpunkte
asn String Die Nummer des autonomen Systems (Autonomous System Number, ASN) des externen Netzwerks, zu dem der Endpunkt gehört.

Beispiele

Beispiel 1: Per NAT übersetzter TCP-Verbindungsdatensatz von einer VM-Instanz in einem freigegebenen VPC-Netzwerk, das zu einem externen Server in Frankreich führt.

{
insertId: "1the8juf6vab1t"
jsonPayload: {
       connection: {
            Src_ip: "10.0.0.1"
            Src_port: 45047
            Nat_ip: "203.0.113.17"
            Nat_port: 34889
            dest_ip : "198.51.100.142"
            Dest_port: 80
            Protocol: "tcp"
       }
       allocation_status: "OK"
       Gateway_identifiers: {
             Gateway_name: "my-nat-1"
             router_name: "my-router-1"
             Region: "europe-west1"
       }
       Endpoint: {
             Project_id: "service-project-1"
             Vm_name: "vm-1"
             Region: "europe-west1"
             Zone: "europe-west1-b"
       }
       Vpc: {
             Project_id: "host-project"
             Vpc_name: "network-1"
             Subnetwork_name: "subnetwork-1"
       }
       Destination: {
             Geo_location: {
                   Continent: "Europe"
                   Country: "France"
                   Region: "Nouvelle-Aquitaine"
                   City: "Bordeaux"
             }
       }
}
logName: "projects/host-project/logs/compute.googleapis.com%2Fnat_flows"
receiveTimestamp: "2018-06-28T10:46:08.123456789Z"
resource: {
      labels: {
            region: "europe-west1-d"
            project_id: "host-project"
            router_id: "987654321123456"
            gateway_name: "my-nat-1"
      }
      type: "nat_gateway"
}
labels: {
      nat.googleapis.com/instance_name: "vm-1"
      nat.googleapis.com/instance_zone: "europe-west1-b"
      nat.googleapis.com/nat_ip: "203.0.113.17"
      nat.googleapis.com/network_name: "network-1"
      nat.googleapis.com/router_name: "my-router-1"
      nat.googleapis.com/subnetwork_name: "subnetwork-1"
}
timestamp: "2018-06-28T10:46:00.602240572Z"
}

Beispiel 2: Datensatz für ein Paket, das verworfen wurde, weil keine Ports verfügbar waren. Die sendende VM hat versucht, die externe IP-Adresse einer anderen VM im selben Projekt zu erreichen.

{
insertId: "1the8juf6vab1l"
jsonPayload: {
       connection: {
            Src_ip: "10.0.128.1"
            Src_port: 45047
            dest_ip : "192.0.2.87"
            Dest_port: 80
            Protocol: "tcp"
       }
       allocation_status: "DROPPED"
       Gateway_identifiers: {
             Gateway_name: "my-nat-2"
             Cloud_router: "my-router-1"
             Region: "europe-west1"
       }
       Endpoint: {
             Project_id: "service-project-1"
             Vm_name: "vm-1"
             Region: "europe-west1"
             Zone: "europe-west1-b"
       }
       Vpc: {
             Project_id: "host-project"
             Vpc_name: "network-1"
             Subnetwork_name: "subnetwork-1"
       }
       Destination: {
             Instance: {
                   Project_id: "service-project-1"
                   Vm_name: "vm-2"
                   Region: "asia-east1"
                   Zone: "asia-east1-b"
             }
       }
}
logName: "projects/host-project/logs/compute.googleapis.com%2Fnat_flows"
receiveTimestamp: "2018-06-28T10:46:09.123456789Z"
resource: {
       labels: {
              region: "europe-west1-d"
              project_id: "host-project"
              router_id: "987654321123456"
              gateway_name: "my-nat-2"
       }
       type: "nat_gateway"
}
timestamp: "2018-06-28T10:46:01.602240572Z"
}

Logging-Preise

Siehe Logging-Preise.

Monitoring

Cloud NAT stellt wichtige Messwerte für Cloud Monitoring bereit, die Ihnen Einblicke in die Nutzung von NAT-Gateways durch Ihren Gerätepool geben.

Messwerte werden automatisch an Cloud Monitoring gesendet. Dort können Sie benutzerdefinierte Dashboards erstellen, Benachrichtigungen einrichten und Messwerte abfragen.

Im Folgenden werden die erforderlichen IAM-Rollen (Identity and Access Management) aufgeführt:

  • Für Nutzer der freigegebenen VPC mit VMs und NAT-Gateways, die in verschiedenen Projekten definiert sind, erfordert der Zugriff auf die Messwerte auf VM-Ebene die IAM-Rolle roles/monitoring.viewer für das Projekt jeder VM.

  • Für die NAT-Gateway-Ressource erfordert der Zugriff auf die Gateway-Messwerte die roles/monitoring.viewer-IAM-Rolle für das Projekt, das das Gateway enthält.

Vordefinierte Dashboards ansehen

Cloud NAT bietet eine Reihe vordefinierter Dashboards, die Aktivitäten auf Ihrem Gateway anzeigen:

  • Offene Verbindungen
  • Verarbeitete ausgehende Daten
  • Verarbeitete eingehende Daten
  • Portauslastung
  • Fehler bei NAT-Zuweisung

So rufen Sie vordefinierte Dashboards von der Detailseite eines bestimmten Gateways auf:

Console

  1. Rufen Sie in der Cloud Console die Seite Cloud NAT auf.

    Zur Seite "Cloud NAT"

  2. Klicken Sie auf ein vorhandenes Gateway.

  3. Klicken Sie auf den Tab Monitoring.

  4. Scrollen Sie nach unten, um alle Dashboards anzuzeigen. Mit dem Steuerelement oben auf der Seite können Sie die Ansicht von einer Stunde auf 30 Tage ändern. Wenn Sie den Mauszeiger über einen Punkt in einem Diagramm bewegen, werden Details zur jeweiligen Zeit angezeigt.

Benutzerdefinierte Dashboards definieren

So erstellen Sie benutzerdefinierte Cloud Monitoring-Dashboards über Cloud NAT-Messwerte:

Console

  1. Wechseln Sie in der Cloud Console zu Monitoring:

    Zu Monitoring

  2. Klicken Sie auf Dashboards und dann auf Dashboard erstellen.

  3. Geben Sie einen Namen für das Dashboard ein und klicken Sie auf Bestätigen.

  4. Klicken Sie auf Diagramm hinzufügen.

  5. Geben Sie dem Diagramm einen Namen.

  6. Geben Sie den Ressourcentyp und den Messwert an:

    • Suchen Sie für Cloud NAT-Messwerte nach einer VM mit dem Präfix compute.googleapis.com/nat/.
    • Verwenden Sie für Messwerte für ein NAT-Gateway das Präfix router.googleapis.com/nat/.

    Eine Liste von Messwerten und Filterdimensionen finden Sie unter VM-Instanzmesswerte verwenden und NAT-Gateway-Messwerte verwenden.

  7. Geben Sie beliebige Filterdimensionen an.

  8. Klicken Sie auf Speichern.

Benachrichtigungsrichtlinien definieren

Console

Sie können Benachrichtigungsrichtlinien erstellen, um Messwerte zu beobachten und sich informieren zu lassen, wenn diese gegen eine Bedingung verstoßen. Allgemeine Schritte zum Erstellen einer Benachrichtigungsrichtlinie, die eine oder mehrere Cloud NAT-Gateway- oder Compute Engine-VM-Instanz-Ressourcen überwacht:

  1. Wechseln Sie in der Google Cloud Console zu Monitoring:

    Zu Monitoring

  2. Wählen Sie im Navigationsbereich für das Monitoring Benachrichtigungen und dann Richtlinie erstellen aus.
  3. Klicken Sie auf Add Condition:
    1. Die Einstellungen im Bereich Ziel geben die Ressource und den Messwert an, die überwacht werden sollen. Klicken Sie auf das Textfeld, um ein Menü zu aktivieren, und wählen Sie dann die Ressource Cloud NAT-Gateway oder Compute Engine-VM-Instanz aus. Wählen Sie als Nächstes einen Messwert aus der Messwertliste aus.
    2. Die Einstellungen im Bereich Konfiguration der Benachrichtigungsrichtlinie geben an, wann die Benachrichtigung ausgelöst wird. Die meisten Felder in diesem Bereich sind bereits mit Standardwerten gefüllt. Weitere Informationen zu den Feldern in diesem Bereich finden Sie unter Konfiguration in der Dokumentation zu Benachrichtigungsrichtlinien.
    3. Klicken Sie auf Add.
  4. Klicken Sie auf Weiter, um zum Abschnitt "Benachrichtigungen" zu gelangen.
  5. Optional: Klicken Sie auf Benachrichtigungskanäle, um Benachrichtigungen zu Ihrer Benachrichtigungsrichtlinie hinzuzufügen. Wählen Sie im Dialogfeld mindestens einen Benachrichtigungskanal aus dem Menü aus und klicken Sie auf OK.

    Wenn ein hinzuzufügender Benachrichtigungskanal nicht aufgeführt ist, klicken Sie auf Benachrichtigungskanäle verwalten. Die Seite Benachrichtigungskanäle wird in einem neuen Browsertab angezeigt. Auf dieser Seite können Sie die konfigurierten Benachrichtigungskanäle aktualisieren. Nachdem Sie die Aktualisierungen abgeschlossen haben, kehren Sie zum ursprünglichen Tab zurück, klicken auf Aktualisieren  und wählen dann die Benachrichtigungskanäle aus, die zur Benachrichtigungsrichtlinie hinzugefügt werden sollen.

  6. Klicken Sie auf Weiter, um zum Abschnitt "Dokumentation" zu gelangen.
  7. Klicken Sie auf Name und geben Sie einen Namen für die Benachrichtigungsrichtlinie ein.
  8. Optional: Klicken Sie auf Dokumentation und tragen Sie alle Informationen ein, die in den Benachrichtigungen angezeigt werden sollen.
  9. Klicken Sie auf Speichern.
Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien.

Häufigkeit und Speicherung von Messwertberichten

Die Messwerte für Cloud NAT werden jede Minute zusammengefasst und in Monitoring exportiert. Monitoring-Daten werden sechs (6) Wochen aufbewahrt. Im Dashboard werden Datenanalysen in Standardintervallen von einer Stunde, sechs Stunden, einem Tag, einer Woche und sechs Wochen bereitgestellt. Sie können manuell Analysen in jedem beliebigen Intervall von sechs Wochen bis zu einer Minute anfordern.

Messwerte der VM-Instanz verwenden

Den folgenden Messwerttypnamen muss das Präfix compute.googleapis.com/nat/ vorangestellt werden. Dieses Präfix wurde in den Einträgen der Tabelle weggelassen.

metric.type Typ Beschreibung
sent_bytes_count ZÄHLER Anzahl der gesendeten Byte (VM > Internet) über das NAT-Gateway.
sent_packets_count ZÄHLER Anzahl der gesendeten Pakete (VM > Internet) über das NAT-Gateway.
received_bytes_count ZÄHLER Anzahl der empfangenen Byte (Internet -> VM) über das NAT-Gateway.
received_packets_count ZÄHLER Anzahl der empfangenen Pakete (Internet -> VM) über das NAT-Gateway.
new_connections_count ZÄHLER Anzahl der neuen Verbindungen, die über das NAT-Gateway erstellt werden.
open_connections ANZEIGE Anzahl der derzeit auf dem NAT-Gateway geöffneten Verbindungen.
closed_connections_count ZÄHLER Anzahl der Verbindungen, die über das NAT-Gateway geschlossen wurden.
dropped_sent_packets_count ZÄHLER Anzahl der gesendeten Pakete, die vom NAT-Gateway verworfen wurden (aufgrund von Portauslastung oder Portkonflikt bei Endpunkt-unabhängiger Zuordnung).
dropped_received_packets_count ZÄHLER Die Anzahl der empfangenen Pakete, die vom NAT-Gateway verworfen wurden, weil keine Verbindung gefunden wurde.
port_usage ANZEIGE Maximale Anzahl der Verbindungen von einer VM zu einem einzelnen Internetendpunkt (IP:Port).
allocated_ports ANZEIGE Anzahl der Ports, die vom NAT-Gateway einer VM zugewiesen werden.

Filterdimensionen für VM-Instanzen

label_key Typ Beschreibung
project_id STRING Die Projekt-ID der VM-Instanz.
instance_id STRING Die ID der VM-Instanz.
zone STRING Die Zone der VM-Instanz.
nat_project_number STRING Die Projektnummer, zu der das NAT-Gateway gehört.
router_id STRING Die Cloud Router-ID, zu der das NAT-Gateway gehört.
nat_gateway_name STRING Der Name des NAT-Gateways.
nat_ip STRING Die NAT-IP-Adresse, die dem NAT-Gateway zugewiesen ist. Gültig für Messwerte allocated_ports.
ip_protocol STRING Das Protokoll der Verbindung. Kann TCP, UDP oder ICMP sein. Gültig für alle Messwerte außer allocated_ports.
reason STRING

Der Grund für den Paketverlust. Folgende Werte sind möglich:

  • OUT_OF_RESOURCES, wenn Cloud NAT keine NAT-IP-Adressen oder Ports mehr hat.
  • ENDPOINT_INDEPENDENT_CONFLICT, wenn ein Endpunkt-unabhängiger Konflikt auftritt.

Gültig für Messwerte dropped_sent_packets_count.

NAT-Gateway-Messwerte verwenden

Den folgenden Messwerttypnamen muss das Präfix router.googleapis.com/nat/ vorangestellt werden. Dieses Präfix wurde in den Einträgen der Tabelle weggelassen.

metric.type Typ Beschreibung
nat_allocation_failed BOOL Gibt "true" an, wenn ein Fehler bei der Zuweisung von NAT-IP-Adressen zu einer beliebigen VM im NAT-Gateway vorliegt, andernfalls "false". Ein häufiger Grund ist, dass im Gateway nicht genügend NAT-IP-Adressen vorhanden sind.
sent_bytes_count ZÄHLER Anzahl der über das NAT-Gateway gesendeten Byte (VMs > Internet).
sent_packets_count ZÄHLER Anzahl der über das NAT-Gateway gesendeten Pakete (VMs > Internet).
received_bytes_count ZÄHLER Anzahl der über das NAT-Gateway empfangenen Byte (Internet > VMs).
received_packets_count ZÄHLER Anzahl der über das NAT-Gateway empfangenen Pakete (Internet > VMs).
new_connections_count ZÄHLER Anzahl der neuen Verbindungen, die über das NAT-Gateway erstellt werden.
open_connections ANZEIGE Anzahl der derzeit auf dem NAT-Gateway geöffneten Verbindungen.
closed_connections_count ZÄHLER Anzahl der Verbindungen, die über das NAT-Gateway geschlossen wurden.
dropped_sent_packets_count ZÄHLER Anzahl der gesendeten Pakete, die vom NAT-Gateway verworfen wurden (aufgrund von Portauslastung oder Portkonflikt bei Endpunkt-unabhängiger Zuordnung).
dropped_received_packets_count ZÄHLER Die Anzahl der empfangenen Pakete, die vom NAT-Gateway verworfen wurden, weil keine Verbindung gefunden wurde.
port_usage ANZEIGE Die Portnutzung für eine einzelne VM ist die maximale Anzahl von Verbindungen von der VM zu einem einzelnen Internetendpunkt (IP:port). Dieses Feld zeigt die höchste Portnutzung unter allen VMs für ein NAT-Gateway.
allocated_ports ANZEIGE Anzahl der Ports, die vom NAT-Gateway allen VMs zugewiesen wurden.

Gateway-Filterdimensionen

label_key Typ Beschreibung
project_id STRING Die Projekt-ID des Gateways.
region STRING Die Region des Gateways.
router_id STRING Die Cloud Router-ID, zu der das NAT-Gateway gehört.
gateway_name STRING Der Name des NAT-Gateways.
ip_protocol STRING Das Protokoll der Verbindung. Kann TCP, UDP oder ICMP sein. Gültig für alle Messwerte außer allocated_ports.
nat_ip STRING Die NAT-IP-Adresse, die dem NAT-Gateway zugewiesen ist. Gültig für Messwerte allocated_ports.
reason STRING

Der Grund für den Paketverlust. Folgende Werte sind möglich:

  • OUT_OF_RESOURCES, wenn Cloud NAT keine NAT-IP-Adressen oder Ports mehr hat.
  • ENDPOINT_INDEPENDENT_CONFLICT, wenn ein Endpunkt-unabhängiger Konflikt auftritt.

Gültig für Messwerte dropped_sent_packets_count.

API verwenden

Sie können beliebige Abfragen über die Cloud NAT-Messwerte mithilfe der v3-projects.timeSeries.list-Anfrage der Monitoring API erstellen.

API-Beispiel

Zugeordnete Ports einer VM mit 1-m-Aggregaten, timeSeries.list-Parametern abrufen:

  • Name: projects/PROJECT_ID
  • Filter: resource.type = "gce_instance" AND metric.name="compute.googleapis.com/nat/allocated_ports" AND metric.labels.nat_gateway_name="nat-1-237227-1569344091-5"
  • interval.start_time: 2019-09-24T16:58:53Z
  • interval.end_time: 2019-09-24T16:58:53Z
  • aggregation.alignmentPeriod: 60s
  • aggregation.crossSeriesReducer: REDUCE_SUM
  • aggregation.perSeriesAligner: ALIGN_SUM
"timeSeries": [
    {
      "resource": {
        "labels": {
          "instance_id": "1406292833167995938",
          "project_id": "PROJECT_ID",
          "zone": "us-west1-c"
        },
        "type": "gce_instance"
      },
      "metric": {
        "labels": {
          "nat_ip": "70.32.157.11",
          "nat_gateway_name": "nat-1-237227-1569344091-5",
          "nat_project_number": "PROJECT_NUMBER",
          "router_id": "1380055590921303155"
        },
        "type": "compute.googleapis.com/nat/allocated_ports"
      },
      "metricKind": "GAUGE",
      "points": [
        {
          "interval": {
            "endTime": "2019-09-24T16:58:53.699Z",
            "startTime": "2019-09-24T16:58:53.699Z"
          },
          "value": {
            "int64Value": "64"
          }
        }
      ],
      "valueType": "INT64"
    },

Monitoring-Preise

Für das Cloud NAT-Monitoring fallen keine Kosten an.

Nächste Schritte