Journaux et métriques

Journalisation

La journalisation Cloud NAT vous permet de consigner les connexions et les erreurs NAT. Lorsque la journalisation Cloud NAT est activée, une entrée de journal peut être générée pour chacun des scénarios suivants :

  • Lorsqu'une connexion réseau utilisant la NAT est créée
  • Lorsqu'un paquet est supprimé, car aucun port n'était disponible pour la NAT

Vous pouvez choisir de consigner les deux types d'événements, ou seulement l'un ou l'autre.

Les journaux créés sont envoyés à Cloud Logging.

Spécifications

Les spécifications suivantes s'appliquent à la journalisation Cloud NAT :

  • La journalisation Cloud NAT ne traite que le trafic TCP et UDP.

  • La journalisation Cloud NAT consigne uniquement les paquets supprimés s'il s'agit de paquets TCP et UDP sortants. Les paquets entrants supprimés ne sont pas consignés. Par exemple, si une réponse entrante à une requête sortante est supprimée pour une raison quelconque, aucune erreur n'est consignée.

Chaque instance de VM ne peut générer qu'un certain nombre d'entrées de journal par unité de temps, proportionnellement à son nombre de vCPUs. La VM peut générer entre 50 et 100 entrées de journal par seconde et par processeur virtuel.

  • Ce seuil de fréquence affecte le nombre d'événements pouvant être consignés. Même si certains événements sont filtrés, leur occurrence est comptabilisée dans le nombre d'entrées de journal possibles. Limiter les journaux aux erreurs ou aux connexions de traduction d'adresse réseau n'augmente pas nécessairement le nombre d'entrées de journal consultées. Par exemple, si vous décidez de ne consigner que les connexions réussies, les périodes de tentatives de connexion en échec et d'erreurs NAT excessives peuvent toujours limiter le nombre d'entrées de journal de connexions réussies.

  • La journalisation Cloud NAT ne consigne pas tous les paquets. Même si le seuil de fréquence de la VM n'a pas été atteint, certaines conditions peuvent être omises du journal. Vous devez compter sur la présence d'entrées dans la journalisation Cloud NAT pour prendre des décisions avisées, mais l'absence d'entrées ne signifie pas forcément qu'aucun événement ne s'est produit.

Configurer la journalisation

Pour configurer la journalisation Cloud NAT, procédez comme suit :

Activer la journalisation

Si la journalisation est activée, tous les journaux consignés sont envoyés à Cloud Logging par défaut. Vous pouvez les filtrer, de manière à envoyer uniquement certains de ces journaux.

Vous pouvez également spécifier ces valeurs lorsque vous créez ou modifiez une passerelle NAT. Les instructions suivantes expliquent comment activer la journalisation pour une passerelle NAT existante.

Console

  1. Dans Google Cloud Console, accédez à la page Cloud NAT.

    Accédez à Cloud NAT

  2. Cliquez sur votre passerelle NAT.

  3. Cliquez sur Modifier ().

  4. Cliquez sur Configurations avancées.

  5. Dans la section Journalisation, sélectionnez l'une des options suivantes:

    • Aucune journalisation : désactive la journalisation
    • Traduction et erreurs : envoie tous les journaux à Logging
    • Traduction uniquement : envoie un journal uniquement lorsqu'une connexion est créée. Ne consigne pas les paquets supprimés.
    • Erreurs uniquement : envoie un journal lorsqu'un paquet est supprimé car aucun port n'était disponible. Ne consigne pas les nouvelles connexions.
  6. Cliquez sur Enregistrer.

gcloud

Les commandes suivantes permettent d'activer la journalisation d'une passerelle NAT existante.

Dans chaque commande, remplacez les éléments suivants :

  • NAT_GATEWAY : nom de la passerelle NAT
  • ROUTER_NAME : nom du routeur cloud qui héberge la passerelle NAT
  • REGION : région du routeur cloud

Pour consigner les événements de traduction d'adresse réseau et les erreurs, procédez comme suit :

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

Pour consigner uniquement les événements de traduction d'adresse réseau :

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

Pour consigner uniquement les erreurs :

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

Supprimer les filtres de journaux

Si vous avez défini un ensemble de filtres, vous pouvez le supprimer. Lorsque vous supprimez un filtre de journal, les événements de traduction d'adresse réseau et les erreurs sont consignés, à condition que la journalisation soit activée.

Console

  1. Dans Google Cloud Console, accédez à la page Cloud NAT.

    Accédez à Cloud NAT

  2. Cliquez sur votre passerelle NAT.

  3. Cliquez sur Modifier ().

  4. Cliquez sur Configurations avancées.

  5. Dans la section Journalisation, sélectionnez Traduction et erreurs.

  6. Cliquez sur Enregistrer.

gcloud

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

Remplacez les éléments suivants :

  • NAT_GATEWAY : nom de la passerelle NAT
  • ROUTER_NAME : nom du routeur cloud qui héberge la passerelle NAT
  • REGION : région du routeur cloud
  • --log-filter=ALL définit le filtre de journal permettant d'accepter tous les journaux.

Désactiver la journalisation

Pour désactiver la journalisation, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Cloud NAT.

    Accédez à Cloud NAT

  2. Cliquez sur votre passerelle NAT.

  3. Cliquez sur Modifier ().

  4. Cliquez sur Configurations avancées.

  5. Dans la section Journalisation, sélectionnez Aucune journalisation.

  6. Cliquez sur Enregistrer.

gcloud

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

Remplacez les éléments suivants :

  • NAT_GATEWAY : nom de la passerelle NAT
  • ROUTER_NAME : nom du routeur cloud qui héberge la passerelle NAT
  • REGION : région du routeur cloud

Déterminer l'état de la journalisation

Pour déterminer l'état de journalisation, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Cloud NAT.

    Accédez à Cloud NAT

  2. Cliquez sur votre passerelle NAT.

  3. Cliquez sur Modifier ().

  4. Cliquez sur Configurations avancées.

  5. Inspectez les sélections effectuées dans la section Logging (Journalisation).

gcloud

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

Remplacez les éléments suivants :

  • NAT_GATEWAY : nom de la passerelle NAT
  • ROUTER_NAME : nom du routeur cloud qui héberge la passerelle NAT
  • REGION : région du routeur cloud

Afficher les journaux

Pour afficher les journaux NAT, procédez comme suit :

Console

  1. Dans la console Google Cloud, accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

    • Pour afficher tous les journaux NAT, sélectionnez Passerelle Cloud NAT dans le menu Nom du journal.
    • Pour afficher les journaux d'une seule région, sélectionnez Passerelle Cloud NAT dans le menu Nom du journal, puis faites glisser le curseur vers la droite pour sélectionner une région.
    • Pour afficher les journaux d'une seule passerelle, dans le menu Nom du journal, sélectionnez Passerelle Cloud NAT, puis faites glisser le curseur vers la droite pour sélectionner une région. Faites à nouveau glisser le curseur vers la droite pour sélectionner une seule passerelle.

Vous pouvez également saisir l'expression suivante dans l'éditeur de requête :

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

Où :

  • resource.type=nat_gateway : limite la sortie à vos passerelles NAT
  • --limit=10 : limite la sortie à 10 entrées. Vous pouvez saisir une valeur différente pour afficher plus d'entrées, ou l'omettre complètement pour faire défiler les journaux de façon continue.
  • --format=json : affiche le résultat au format JSON

Plus d'options sont disponibles dans la section Lire les entrées de journal.

Vous pouvez configurer l'exportation de métriques basées sur les journaux pour les journaux de ressources.

Contenu consigné

Les entrées de journal Cloud NAT contiennent des informations utiles pour surveiller et déboguer votre trafic NAT. Il s'agit des types d'informations suivants :

  • Informations générales figurant dans la plupart des journaux Google Cloud, telles que la gravité, l'ID de projet, le numéro de projet et l'horodatage.
  • Informations spécifiques liées à Cloud NAT. Certains champs de journal contiennent des entrées qui sont elles-mêmes des champs multiples. Ces entrées et descriptions de champs sont affichées dans les tableaux suivants.

Champs de journal

Champ Value (Valeur) Signification
connection object(NatIpConnection) Hachage à sept tuples décrivant l'adresse IP et le port source de la VM, l'adresse IP et le port source de la NAT, l'adresse IP et le port de destination, ainsi que le protocole d'adresse IP de cette connexion.
allocation_status énum Indique si cette connexion a été correctement allouée ou supprimée. OK ou DROPPED.
gateway_identifiers object(NatGateway) Configuration de la passerelle NAT utilisée par la connexion.
endpoint object(InstanceDetails) Détails relatifs à l'instance de VM. Dans une configuration de réseau VPC partagé, project_id correspond au projet de service.
vpc object(VpcDetails) Détails du réseau cloud privé virtuel (VPC). Dans une configuration de VPC partagé, project_id correspond à l'ID du projet hôte.
destination object(DestinationDetails) Détails de la destination de la connexion.

Format du champ NatIpConnection

Champ Type Description
src_ip chaîne Adresse IP source
src_port int32 Port source
nat_ip chaîne Adresse IP NAT
nat_port int32 Port NAT attribué
dest_ip chaîne Adresse IP de destination
dest_port int32 Port de destination
protocol int32 Numéro de protocole IANA

Format du champ NatGateway

Champ Type Description
gateway_name chaîne Nom de la passerelle NAT
router_name chaîne Routeur Cloud Router associé à la passerelle NAT
region chaîne Région du routeur Cloud Router

Format de champ InstanceDetails

Champ Type Description
project_id chaîne ID du projet contenant la VM
vm_name chaîne Nom d'instance de la VM
region chaîne Région de la VM
zone chaîne Zone de la VM

Format de champ VpcDetails

Champ Type Description
project_id chaîne ID du projet hébergeant le réseau.
vpc_name chaîne Réseau sur lequel opère la VM.
subnetwork_name chaîne Sous-réseau sur lequel opère la VM.

Format de champ DestinationDetails

Champ Type Description
geo_location object(GeographicDetails) Si la destination de la connexion est externe à Google Cloud, les métadonnées d'emplacement disponibles sont insérées dans ce champ.
instance object(InstanceDetails) Si la destination de la connexion est une instance située dans le même projet que la source, les détails de l'instance de VM sont renseignés dans ce champ.
vpc object(VpcDetails) Si la destination de la connexion se trouve dans le même projet que la source, ce champ contient les détails du réseau VPC de destination. Si la destination est un réseau VPC inter-projets, ce champ affiche une valeur vide.

Format de champ GeographicDetails

Champ Type Description
continent chaîne Continent des points de terminaison externes
country chaîne Pays des points de terminaison externes
region chaîne Région des points de terminaison externes
city chaîne Ville des points de terminaison externes
asn chaîne Numéro ASN (Autonomous System Number) du réseau externe auquel appartient ce point de terminaison

Examples

Exemple 1 : enregistrement d'une connexion NAT-ed TCP à partir d'une instance de VM dans un réseau VPC partagé vers un serveur externe en France.

{
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"
}

Exemple 2 : enregistrement d'un paquet supprimé car aucun port n'est disponible. La VM d'envoi essayait d'atteindre l'adresse IP externe d'une autre VM dans le même projet.

{
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"
}

Tarifs de la journalisation Cloud NAT

Pour en savoir plus, consultez la section Tarifs de journalisation.

Surveillance

Cloud NAT expose des métriques clés à Cloud Monitoring qui vous donnent des insights sur l'utilisation des passerelles NAT par votre parc.

Les métriques sont envoyées automatiquement à Cloud Monitoring. Vous pouvez y créer des tableaux de bord personnalisés, configurer des alertes et interroger les métriques.

Les rôles de gestion de l'authentification et des accès (IAM) suivants sont requis :

  • Pour les utilisateurs de VPC partagé avec des VM et des passerelles NAT définies dans différents projets, l'accès aux métriques au niveau de la VM nécessite le rôle IAM roles/monitoring.viewer pour le projet de chaque VM.

  • Pour la ressource de passerelle NAT, l'accès aux métriques de la passerelle nécessite le rôle IAM roles/monitoring.viewer pour le projet contenant la passerelle.

Afficher les tableaux de bord prédéfinis

Cloud NAT fournit un ensemble de tableaux de bord prédéfinis qui affichent l'activité de votre passerelle :

  • Connexions ouvertes
  • Données de sortie traitées par NAT (débit)
  • Données d'entrée traitées par NAT (débit)
  • Utilisation du port
  • Erreurs d'allocation NAT
  • Taux de paquets envoyés supprimés
  • Taux de paquets reçus supprimés

Pour afficher les tableaux de bord prédéfinis à partir de la page des détails d'une passerelle spécifique, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Cloud NAT.

    Accédez à Cloud NAT

  2. Cliquez sur une passerelle existante.

  3. Cliquez sur l'onglet Surveillance.

  4. Faites défiler la page vers le bas pour afficher tous les tableaux de bord. Vous pouvez modifier l'affichage sur une période allant d'une heure à 30 jours à l'aide du menu situé en haut de la page. Passez la souris sur un point du graphique pour afficher les informations correspondantes.

Définir des tableaux de bord personnalisés

Pour créer un tableau de bord personnalisé afin d'afficher les métriques d'instance de VM ou les métriques de passerelle NAT, procédez comme suit :

Console

  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Monitoring, puis  Tableaux de bord :

    Accéder à la page Tableaux de bord

  2. Cliquez sur Créer un tableau de bord.
  3. Facultatif : Mettez à jour le titre du tableau de bord avec un nom descriptif pour votre tableau de bord.
  4. Cliquez sur Add Widget (Ajouter un widget), puis sélectionnez Metric (Métrique).
  5. Développez le menu Métrique, saisissez Cloud NAT Gateway ou VM Instance dans la barre de filtre, puis utilisez les sous-menus pour sélectionner un type de ressource et une métrique spécifiques :
    1. Dans le menu Ressources actives, sélectionnez Passerelle Cloud NAT ou Instance de VM.
    2. Dans le menu Catégories de métriques actives, sélectionnez NAT.
    3. Dans le menu Métriques actives, sélectionnez la métrique que vous souhaitez afficher.
    4. Cliquez sur Appliquer.
  6. Combiner les séries temporelles :
    • Pour afficher chaque série temporelle, dans l'élément Aggregation (Agrégation), assurez-vous que le premier menu est défini sur Unaggregated (Non agrégé) et que le deuxième menu est défini sur None (Aucun).
    • Pour combiner des séries temporelles, dans l'élément Agrégation, utilisez le premier menu pour sélectionner une fonction et le second pour sélectionner les libellés. Si le deuxième menu est défini sur None (Aucune), le graphique affiche une série temporelle.

      Par exemple, pour afficher la valeur moyenne des séries temporelles après le regroupement par zone, définissez le premier menu sur Mean (Moyenne) et le second sur zone.

    Pour en savoir plus sur la combinaison de séries temporelles, consultez Choisir le mode d'affichage des données représentées graphiquement.

  7. Pour chaque widget supplémentaire que vous souhaitez ajouter à votre tableau de bord, cliquez sur Ajouter un widget, renseignez les champs de la boîte de dialogue, puis sélectionnez Appliquer.

    Pour plus d'informations sur l'ajout de widgets, consultez les pages suivantes:

Définir des règles d'alerte

Pour créer une règle d'alerte basée sur les métriques, procédez comme suit :

Console

Vous pouvez créer des règles d'alerte pour surveiller les valeurs des métriques et être informé lorsqu'elles ne respectent pas une condition.

  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Monitoring, puis  Alertes :

    Accéder à l'interface des alertes

  2. Si vous n'avez pas créé vos canaux de notification et que vous souhaitez être averti, cliquez sur Modifier les canaux de notification et ajoutez vos canaux de notification. Revenez à la page Alertes après avoir ajouté vos canaux.
  3. Sur la page Alertes, cliquez sur Créer une règle.
  4. Pour sélectionner la métrique, développez le menu Sélectionner une métrique, puis procédez comme suit :
    1. Pour limiter le menu aux entrées pertinentes, saisissez Cloud NAT gateway ou VM Instance dans la barre de filtre. Si aucun résultat ne s'affiche après avoir filtré le menu, désactivez l'option Afficher seulement les ressources et les métriques actives.
    2. Pour le champ Type de ressource, sélectionnez Passerelle Cloud NAT ou Instance de VM.
    3. Sélectionnez une Catégorie de métrique et une Métrique, puis cliquez sur Appliquer.
  5. Cliquez sur Suivant.
  6. Les paramètres de la page Configurer le déclencheur d'alerte déterminent le moment où l'alerte se déclenche. Sélectionnez un type de condition et, si nécessaire, spécifiez un seuil. Pour plus d'informations, consultez la page Créer des règles d'alerte basées sur un seuil de métrique.
  7. Cliquez sur Suivant.
  8. Facultatif : Pour ajouter des notifications à votre règle d'alerte, cliquez sur Canaux de notification. Dans la boîte de dialogue, sélectionnez un ou plusieurs canaux de notification dans le menu, puis cliquez sur OK.
  9. (Facultatif) Mettez à jour la durée de fermeture automatique de l'incident. Ce champ détermine à quel moment Monitoring ferme les incidents en l'absence de données de métriques.
  10. Facultatif : Cliquez sur Documentation, puis ajoutez les informations à inclure dans le message de notification.
  11. Cliquez sur Nom de l'alerte et saisissez un nom pour la règle d'alerte.
  12. Cliquez sur Créer une stratégie.
Pour en savoir plus, consultez la page Règles d'alerte.

Fréquence et conservation des rapports sur les métriques

Les métriques pour Cloud NAT sont regroupées et exportées vers Monitoring toutes les minutes. Les données de surveillance sont conservées pendant six semaines. Le tableau de bord fournit une analyse des données à des intervalles par défaut d'une heure, de six heures, d'un jour, d'une semaine et de six semaines. Vous pouvez demander manuellement une analyse à un intervalle compris entre une minute et six semaines.

Métriques sur l'instance de VM

Les chaînes "Type de métrique" de ce tableau doivent être précédées du préfixe compute.googleapis.com/. Ce préfixe a été omis dans les entrées du tableau.

Type de métriqueÉtape de lancement
Nom à afficher
Genre, type, unité
Ressources surveillées
Description
Libellés
nat/allocated_ports GA
Ports alloués
GAUGEINT64{port}
gce_instance
Nombre de ports alloués à une VM via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
nat_ip : adresse IP NAT allouée à la passerelle NAT.
nat/closed_connections_count GA
Nombre de connexions fermées
DELTAINT64{connection}
gce_instance
Nombre de connexions fermées via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/dropped_received_packets_count GA
Nombre de paquets reçus supprimés
DELTAINT64{packet}
gce_instance
Nombre de paquets reçus et supprimés par la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/dropped_sent_packets_count GA
Nombre de paquets envoyés supprimés
DELTAINT64{packet}
gce_instance
Nombre de paquets envoyés et supprimés par la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
reason : raison de la suppression de paquets. Voici des valeurs possibles : "OUT_OF_RESOURCES", "ENDPOINT_INDEPENDENCE_CONFLICT".
nat/new_connections_count GA
Nombre de nouvelles connexions
DELTAINT64{connection}
gce_instance
Nombre de connexions créées sur la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/open_connections GA
Connexions ouvertes
GAUGEINT64{connection}
gce_instance
Nombre de connexions actuellement ouvertes sur la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/port_usage GA
Utilisation du port
GAUGEINT64{port}
gce_instance
Nombre maximal de connexions entre une VM et un seul point de terminaison de destination (IP:port). Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/received_bytes_count GA
Nombre d'octets reçus
DELTAINT64By
gce_instance
Nombre d'octets reçus (destination -> source) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/received_packets_count GA
Nombre de paquets reçus
DELTAINT64{packet}
gce_instance
Nombre de paquets reçus (destination -> source) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/sent_bytes_count GA
Nombre d'octets envoyés
DELTAINT64By
gce_instance
Nombre d'octets envoyés (source -> destination) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/sent_packets_count GA
Nombre de paquets envoyés
DELTAINT64{packet}
gce_instance
Nombre de paquets envoyés (source -> destination) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 165 secondes.
nat_project_number : numéro du projet auquel appartient la passerelle NAT.
router_id : ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name : nom de la passerelle NAT.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.

Dimensions de filtrage de l'instance de VM

label_key Type Description
project_id STRING ID de projet de l'instance de VM.
instance_id STRING ID de l'instance de VM.
zone STRING Zone de l'instance de VM.
nat_project_number STRING Numéro du projet auquel appartient la passerelle NAT.
router_id STRING ID du routeur Cloud Router auquel appartient la passerelle NAT.
nat_gateway_name STRING Nom de la passerelle NAT.
nat_ip STRING Adresse IP NAT allouée à la passerelle NAT. Valable pour la métrique allocated_ports.
ip_protocol STRING Protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP. Valide pour toutes les métriques sauf allocated_ports.
reason STRING

Raison de la suppression de paquets. Les valeurs possibles sont les suivantes :

Valable pour la métrique dropped_sent_packets_count.

Métriques de la passerelle NAT

Les chaînes "Type de métrique" de ce tableau doivent être précédées du préfixe router.googleapis.com/. Ce préfixe a été omis dans les entrées du tableau.

Type de métriqueÉtape de lancement
Nom à afficher
Genre, type, unité
Ressources surveillées
Description
Libellés
nat/allocated_ports GA
Ports alloués
GAUGEINT64{port}
nat_gateway
Nombre de ports alloués à toutes les VM via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
nat_ip : adresse IP NAT des ports.
nat/closed_connections_count GA
Nombre de connexions fermées
DELTAINT64{connection}
nat_gateway
Nombre de connexions fermées via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/dropped_received_packets_count GA
Nombre de paquets reçus supprimés
DELTAINT64{packet}
nat_gateway
Nombre de paquets reçus et supprimés par la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/dropped_sent_packets_count GA
Nombre de paquets envoyés supprimés
DELTAINT64{packet}
nat_gateway
Nombre de paquets envoyés et supprimés par la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
reason : raison de la suppression de paquets. Voici des valeurs possibles : "OUT_OF_RESOURCES", "ENDPOINT_INDEPENDENCE_CONFLICT".
nat/nat_allocation_failed GA
Échec de l'allocation NAT
GAUGEBOOL
nat_gateway
Indique si l'allocation d'adresses IP NAT à une VM de la passerelle NAT a échoué. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 120 secondes.
nat/new_connections_count GA
Nombre de nouvelles connexions
DELTAINT64{connection}
nat_gateway
Nombre de connexions créées sur la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/open_connections GA
Connexions ouvertes
GAUGEINT64{connection}
nat_gateway
Nombre de connexions actuellement ouvertes sur la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/port_usage GA
Utilisation du port
GAUGEINT64{port}
nat_gateway
Nombre maximal de connexions entre une VM et un seul point de terminaison de destination (IP:port). Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/received_bytes_count GA
Nombre d'octets reçus
DELTAINT64By
nat_gateway
Nombre d'octets reçus (destination -> source) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/received_packets_count GA
Nombre de paquets reçus
DELTAINT64{packet}
nat_gateway
Nombre de paquets reçus (destination -> source) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/sent_bytes_count GA
Nombre d'octets envoyés
DELTAINT64By
nat_gateway
Nombre d'octets envoyés (source -> destination) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.
nat/sent_packets_count GA
Nombre de paquets envoyés
DELTAINT64{packet}
nat_gateway
Nombre de paquets envoyés (source -> destination) via la passerelle NAT. Échantillonné toutes les 60 secondes. Après échantillonnage, les données ne sont pas visibles pendant un délai pouvant atteindre 225 secondes.
ip_protocol : protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP.

Dimensions de filtrage de la passerelle

label_key Type Description
project_id STRING ID de projet de la passerelle.
region STRING Région de la passerelle.
router_id STRING ID du routeur Cloud Router auquel appartient la passerelle NAT.
gateway_name STRING Nom de la passerelle NAT.
ip_protocol STRING Protocole de la connexion. Il peut s'agir de TCP, UDP ou ICMP. Valable pour toutes les métriques sauf allocated_ports.
nat_ip STRING Adresse IP NAT allouée à la passerelle NAT. Valable pour la métrique allocated_ports.
reason STRING

Raison de la suppression de paquets. Les valeurs possibles sont les suivantes :

Valable pour la métrique dropped_sent_packets_count.

Interroger des métriques à l'aide de l'API Monitoring

Vous pouvez créer des requêtes arbitraires pour les métriques Cloud NAT à l'aide de la requête projects.timeSeries.list de l'API Monitoring v3.

Exemple d'API

Obtention des ports alloués d'une VM, avec des agrégats de 1 min et les paramètres timeSeries.list :

  • nom : projects/PROJECT_ID
  • Filtre : 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"
    },

Tarifs de surveillance Cloud NAT

La surveillance de Cloud NAT est gratuite.

Étapes suivantes