Configurer des NEG zonaux

Configurer des groupes de points de terminaison du réseau et ajouter des points de terminaison

Ce document contient des instructions relatives à la configuration des groupes de points de terminaison du réseau (NEG) zonaux. Avant de configurer des NEG zonaux, consultez la page Présentation des groupes de points de terminaison du réseau.

Créer des groupes de points de terminaison de réseau zonaux

Console

Pour créer un groupe de points de terminaison de réseau zonal :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur CRÉER UN GROUPE DE POINTS DE TERMINAISON DU RÉSEAU.
  3. Pour le type de groupe de points de terminaison du réseau, sélectionnez Type de groupe de points de terminaison du réseau : zonal.
  4. Saisissez le nom du groupe de points de terminaison du réseau.
  5. Sélectionnez l'emplacement du réseau VPC.
  6. Sélectionnez le réseau VPC.
  7. Sélectionnez le sous-réseau.
  8. Sélectionnez la zone.
  9. Sélectionnez le type de point de terminaison du réseau.
  10. Saisissez le port par défaut du point de terminaison du réseau.
  11. Cliquez sur Créer.

gcloud

Pour créer un groupe de points de terminaison de réseau zonal :

gcloud compute network-endpoint-groups create NEG_NAME \
    --zone=ZONE \
    --network=NETWORK
    [--subnet=SUBNET]
    [--default-port=DEFAULT_PORT]

Dans cette commande, les indicateurs sont définis comme suit :

  • NEG_NAME est le nom du nouveau groupe de points de terminaison du réseau. Le nom doit être unique dans l'espace de noms.
  • ZONE est le nom de la zone dans laquelle le NEG est créé.
  • NETWORK est le nom du réseau dans lequel le NEG est créé. En cas d'omission, Google Cloud utilise un réseau appelé default.
  • SUBNET est le nom du sous-réseau auquel appartiennent les points de terminaison du réseau. Cet indicateur est facultatif si le réseau est en mode automatique. S'il est omis, le groupe de points de terminaison du réseau se trouve dans le sous-réseau créé automatiquement de la région de la zone sélectionnée. L'indicateur est obligatoire si le réseau est en mode personnalisé ou si vous devez spécifier un sous-réseau créé manuellement.
  • DEFAULT_PORT est le port par défaut associé au NEG. Cette option est facultative. S'il est absent, tous les points de terminaison doivent être spécifiés par IP:Port. Si elle est incluse, la partie port peut être omise de la spécification du point de terminaison et le port par défaut est utilisé.

Exemple :

gcloud compute network-endpoint-groups create my-lb-neg \
    --network=my-network \
    --subnet=my-subnet \
    --default-port=80  \
    --zone=asia-southeast1-a

Ajouter des points de terminaison à un groupe de points de terminaison du réseau

Console

Pour ajouter des points de terminaison à un groupe de points de terminaison du réseau, procédez comme suit :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau auquel vous souhaitez ajouter des points de terminaison. La page Détails du groupe de points de terminaison du réseau s'affiche.
  3. Dans la section Points de terminaison du réseau de ce groupe, cliquez sur Ajouter un point de terminaison du réseau. La page Ajouter un point de terminaison du réseau s'affiche.
  4. Sélectionnez une instance de VM pour ajouter ses adresses IP internes en tant que points de terminaison du réseau, puis cliquez sur Ajouter. L'interface réseau, la zone et le sous-réseau de la VM s'affichent.
  5. Saisissez l'adresse IP ou la plage du nouveau point de terminaison du réseau.
  6. Sélectionnez le type de port.
    1. Si vous sélectionnez Par défaut, le point de terminaison utilise le port par défaut pour tous les points de terminaison du groupe de points de terminaison du réseau.
    2. Si vous sélectionnez Personnalisé, saisissez le numéro de port du point de terminaison à utiliser.
  7. Pour ajouter d'autres points de terminaison, cliquez sur Ajouter un point de terminaison du réseau, puis répétez les étapes 5 et 6.
  8. Après avoir ajouté tous les points de terminaison dont vous avez besoin, cliquez sur Ajouter.

gcloud

Pour ajouter des points de terminaison à un groupe de points de terminaison du réseau, procédez comme suit :

gcloud compute network-endpoint-groups update NEG_NAME \
    [--zone=ZONE] \
    --add-endpoint 'instance=INSTANCE_NAME,[ip=IP_ADDRESS],[port=PORT]' \
    [--add-endpoint ...]

Dans la commande ci-dessus :

  • NEG_NAME est le nom du groupe de points de terminaison du réseau.
  • ZONE est le nom de la zone dans laquelle se trouve le NEG.
  • INSTANCE_NAME est le nom de la VM à laquelle appartient l'adresse IP.
  • IP_ADDRESS est l'adresse IP du point de terminaison du réseau qui est ajouté.
  • PORT est le port du point de terminaison du réseau qui est ajouté. Le port est facultatif si le port par défaut est spécifié dans le NEG.

Exemple :

gcloud compute network-endpoint-groups update my-lb-neg \
    --zone=asia-southeast1-a
    --add-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80' \

Ajouter un groupe de points de terminaison du réseau zonal à un service backend

Console

Pour ajouter un groupe de points de terminaison du réseau à un service de backend, procédez comme suit :

  1. Accédez à la page Équilibrage de charge dans Google Cloud Console.
    Accéder à la page Équilibrage de charge
  2. Cliquez sur le nom de l'équilibreur de charge dont vous souhaitez modifier le service de backend.
  3. Sur la page Détails de l'équilibreur de charge, cliquez sur Modifier .
  4. Sur la page Modifier l'équilibreur de charge, cliquez sur Configuration du backend.
  5. Sur la page Configuration du backend, cliquez sur Modifier .
  6. Cliquez sur +Ajouter un backend.
  7. Sélectionnez un groupe de points de terminaison du réseau zonal, puis cliquez sur OK.
  8. Cliquez sur Mettre à jour.

gcloud

Pour ajouter un NEG à un service de backend, procédez comme suit :

gcloud compute backend-services add-backend BACKEND_SERVICE \
    [--network-endpoint-group=NETWORK_ENDPOINT_GROUP] \
    [--network-endpoint-group-zone=ZONE]

Exemple :

gcloud compute backend-services add-backend my-lb \
   --network-endpoint-group my-lb-neg \
   --network-endpoint-group-zone=asia-southeast1-a \
   --global \
   --balancing-mode=RATE \
   --max-rate-per-endpoint=5

Supprimer un groupe de points de terminaison du réseau d'un service backend

Console

  1. Accédez à la page Équilibrage de charge dans Google Cloud Console.
    Accéder à la page Équilibrage de charge
  2. Cliquez sur le nom de l'équilibreur de charge dont vous souhaitez modifier le service de backend.
  3. Sur la page Détails de l'équilibreur de charge, cliquez sur Modifier .
  4. Sur la page Modifier l'équilibreur de charge, cliquez sur Configuration du backend.
  5. Sur la page Configuration du backend, cliquez sur Modifier pour le service de backend à partir duquel vous souhaitez supprimer le NEG.
  6. Dans la section Backend, recherchez le NEG que vous souhaitez supprimer, puis cliquez sur l'icône de corbeille de ce NEG.
  7. Cliquez sur Mettre à jour.

gcloud

Pour supprimer un NEG d'un service de backend, procédez comme suit :

gcloud compute backend-services remove-backend BACKEND_SERVICE \
    --network-endpoint-group=NETWORK_ENDPOINT_GROUP \
    --network-endpoint-group-zone=NETWORK_ENDPOINT_GROUP_ZONE

Exemple :

gcloud compute backend-services remove-backend my-lb \
    --network-endpoint-group=my-lb-neg \
    --network-endpoint-group-zone=asia-southeast1-a

Supprimer des points de terminaison d'un groupe de points de terminaison du réseau

Lorsqu'un point de terminaison du réseau est supprimé d'un NEG d'équilibrage de charge, l'opération déclenche une perte de connexion en fonction des paramètres de drainage spécifiés dans le service de backend. Si plusieurs services de backend font référence au même NEG, l'intervalle de drainage maximal de l'ensemble des services de backend est appliqué.

Console

Pour supprimer des points de terminaison d'un groupe de points de terminaison du réseau, procédez comme suit :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau dont vous souhaitez répertorier les points de terminaison. La page Détails du groupe de points de terminaison du réseau s'affiche.
  3. Sélectionnez les points de terminaison du réseau que vous souhaitez supprimer, puis cliquez sur Supprimer le point de terminaison.

gcloud

Pour supprimer des points de terminaison d'un groupe de points de terminaison du réseau, procédez comme suit :

gcloud compute network-endpoint-groups update NEG_NAME \
[--zone=ZONE] \
--remove-endpoint 'instance=INSTANCE_NAME,[ip=IP],[port=PORT]' \
--remove-endpoint ...

Exemple :

gcloud compute network-endpoint-groups update my-lb-neg \
     --remove-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80' \
     --zone=asia-southeast1-a

Répertorier les groupes de points de terminaison du réseau

Console

Pour afficher la liste des groupes de points de terminaison du réseau, accédez à la page Groupes de points de terminaison du réseau dans Google Cloud Console.
Accéder à la page Groupes de points de terminaison du réseau

gcloud

Pour répertorier les groupes de points de terminaison du réseau, procédez comme suit :

gcloud compute network-endpoint-groups list

Décrire un groupe de points de terminaison du réseau spécifique

Console

Pour obtenir les détails d'un groupe de points de terminaison du réseau spécifique, procédez comme suit :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau dont vous souhaitez afficher les détails.

gcloud

Pour obtenir les détails d'un groupe de points de terminaison du réseau spécifique, procédez comme suit :

gcloud compute network-endpoint-groups describe NEG_NAME \
    [--zone=ZONE]

Dans la commande ci-dessus :

  • NEG_NAME est le nom du groupe de points de terminaison du réseau.
  • ZONE, qui est facultative, est le nom de la zone dans laquelle le NEG a été créé.

Par exemple, la commande gcloud suivante affiche les informations sur le groupe de points de terminaison du réseau my-lb-neg.

gcloud compute network-endpoint-groups describe my-lb-neg \
    --zone=asia-southeast1-a

Le résultat de la commande est le suivant :

    creationTimestamp: '2018-04-09T14:51:34.381-07:00'
    id: '5260475207627726473'
    kind: compute#networkEndpointGroup
    loadBalancer:
      defaultPort: 80
      network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/default
      zone: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/asia-southeast1-a

Supprimer des groupes de points de terminaison du réseau

Un groupe de points de terminaison du réseau ne peut pas être supprimé s'il est associé à un service de backend. Avant de supprimer un NEG, assurez-vous qu'il est dissocié du service de backend.

La suppression immédiate d'une VM entraîne la suppression de tous les points de terminaison du réseau de la VM inclus dans le NEG, ainsi que la fermeture de toutes les connexions. La suppression d'un NEG après la suppression d'un service de backend supprime également tous les points de terminaison de ce NEG, sans drainer la connexion.

Console

Pour supprimer un groupe de points de terminaison du réseau d'un service de backend, procédez comme suit :

  1. Accédez à la page Équilibrage de charge dans Google Cloud Console.
    Accéder à la page Équilibrage de charge
  2. Cliquez sur le nom de l'équilibreur de charge dont vous souhaitez modifier le service de backend.
  3. Sur la page Détails de l'équilibreur de charge, cliquez sur Modifier .
  4. Sur la page Modifier l'équilibreur de charge, cliquez sur Configuration du backend.
  5. Sur la page Configuration du backend, cliquez sur Modifier pour le service de backend à partir duquel vous souhaitez supprimer le NEG.
  6. Dans la section Backend, recherchez le NEG que vous souhaitez supprimer, puis cliquez sur l'icône de corbeille de ce NEG.
  7. Cliquez sur Mettre à jour.

Pour supprimer un groupe de points de terminaison du réseau, procédez comme suit :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Recherchez le groupe de points de terminaison du réseau que vous souhaitez supprimer.
  3. Cliquez sur l'icône de corbeille de cette ligne.

gcloud

Pour supprimer un groupe de points de terminaison du réseau d'un service de backend, procédez comme suit :

gcloud compute backend-services remove-backend BACKEND_SERVICE \
    [--network-endpoint-group=NETWORK_ENDPOINT_GROUP] \
    [--network-endpoint-group-zone=ZONE]

Pour supprimer un groupe de points de terminaison du réseau, procédez comme suit :

gcloud compute network-endpoint-groups delete NEG_NAME \
    --zone=ZONE

Exemple :

gcloud compute backend-services remove-backend my-neg-backend \
    --network-endpoint-group=my-lb-neg \
    --network-endpoint-group-zone=southeast1-a
gcloud compute network-endpoint-groups delete my-lb-neg \
    --zone=asia-southeast1-a

Répertorier les points de terminaison dans un groupe de points de terminaison du réseau

Console

Pour afficher la liste des points de terminaison dans un groupe de points de terminaison du réseau, procédez comme suit :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau dont vous souhaitez répertorier les points de terminaison. La page Détails du groupe de points de terminaison du réseau, qui répertorie les points de terminaison du groupe de points de terminaison, s'affiche.
  3. Pour filtrer les points de terminaison, créez des paires clé/valeur dans le champ de texte sous Points de terminaison du réseau de ce groupe.

gcloud

Pour répertorier tous les points de terminaison d'un groupe de points de terminaison du réseau, procédez comme suit :

gcloud compute network-endpoint-groups list-network-endpoints NEG_NAME \
    [--zone=ZONE]

Filtrage personnalisé lorsque vous répertoriez les points de terminaison d'un groupe de points de terminaison du réseau

Le filtrage personnalisé est une fonctionnalité bêta.

Vous pouvez utiliser un filtre personnalisé pour limiter les points de terminaison dans un groupe de points de terminaison du réseau qui sont répertoriés. Le filtrage personnalisé n'est activé que pour l'API REST. Vous ne pouvez pas utiliser le filtrage personnalisé à partir de Cloud Console ou de l'interface de ligne de commande gcloud.

Pour en savoir plus, consultez la documentation sur la méthode networkEndpointGroups.listNetworkEndpoints.

Vérifier l'état des points de terminaison du réseau

Les services de backend comportant des backends de NEG zonal doivent effectuer une vérification de l'état avec l'une des spécifications de port suivantes :

  • Un port fixe (numéroté) (--port)
  • Un port configuré pour utiliser le port de diffusion du point de terminaison du réseau (--use-serving-port)

L'exemple qui suit crée une vérification d'état qui utilise le port de diffusion du point de terminaison du réseau avec l'option --use-serving-port. Notez que l'option --use-serving-port est implémentée avec gcloud compute health-checks create, mais pas avec gcloud compute health-checks update.

Vous ne pouvez pas utiliser une ancienne vérification d'état avec un backend NEG zonal. Pour en savoir plus, consultez la page Concepts de vérification de l'état.

Exemple de NEG zonal d'équilibrage de charge

L'exemple suivant crée un NEG zonal d'équilibrage de charge, associe trois points de terminaison du réseau au NEG et répertorie les points de terminaison. Dans cet exemple, vous disposez déjà de trois VM avec des services en cours d'exécution sur des ports.

  1. Créez un sous-réseau, des adresses IP d'alias et deux VM.

    gcloud compute networks subnets create subnet-a \
        --network network-a \
        --range 10.128.0.0/16 \
        --secondary-range container-range=192.168.0.0/16
    
    gcloud compute instances create vm1 --zone asia-southeast1-a \
        --network-interface \
        "subnet=subnet-a,aliases=r1:192.168.0.0/24;secondaryrange1:192.168.1.0/24"
    
    gcloud compute instances create vm2 --zone asia-southeast1-a \
        --network-interface \
        "subnet=subnet-a,aliases=r1:192.168.2.0/24"
    
  2. Créez le NEG. Notez que vous pouvez avoir plusieurs NEG dans la même zone.

    gcloud compute network-endpoint-groups create neg1 \
         --zone=asia-southeast1-a \
         --network=network-a --subnet=subnet-a \
         --default-port=80
    
        Created [https://www.googleapis.com/compute/v1/projects/project/zones/asia-southeast1-a/networkEndpointGroups/my-lb-neg].
        NAME       LOCATION       TYPE            ENDPOINT_TYPE   DEFAULT_PORT ENDPOINTS
        neg1  asia-southeast1-a  LOAD_BALANCING  80           0
    
  3. Ajoutez des points de terminaison au NEG.

    gcloud compute network-endpoint-groups update neg1 \
       --zone=asia-southeast1-a
       --add-endpoint 'instance=vm1,ip=192.168.0.1' \
       --add-endpoint 'instance=vm1,ip=192.168.0.1,port=8080' \
       --add-endpoint 'instance=vm1,ip=192.168.1.2,port=8088' \
       --add-endpoint 'instance=vm1,ip=192.168.1.2,port=8080' \
       --add-endpoint 'instance=vm2,ip=192.168.2.1,port=8088' \
       --add-endpoint 'instance=vm2,ip=192.168.2.2,port=8080'
    
  4. Créez une vérification d'état.

    gcloud compute health-checks create http healthcheck1 --use-serving-port
    
  5. Créez le service de backend :

    gcloud compute backend-services create backendservice1 \
        --global \
        --health-checks healthcheck1 \
        --global-health-checks
    
  6. Ajoutez un backend au service de backend :

    gcloud compute backend-services add-backend backendservice1 --global \
       --network-endpoint-group=neg1 \
       --network-endpoint-group-zone=asia-southeast1-a \
       --balancing-mode=RATE --max-rate-per-endpoint=5
    
  7. Créez un mappage d'URL :

    gcloud compute url-maps create urlmap1 --default-service backendservice1
    
  8. Créez le proxy cible.

    gcloud compute target-http-proxies create httpproxy1 --url-map urlmap1
    
  9. Créez la règle de transfert.

    gcloud compute forwarding-rules create forwardingrule1 \
        --ip-protocol TCP --ports=80 --global --target-http-proxy httpproxy1
    
  10. Créez les règles de pare-feu :

    gcloud compute firewall-rules create allow-load-balancer \
        --network network-a \
        --source-ranges 130.211.0.0/22,35.191.0.0/16 \
        --target-tags lb \
        --allow tcp