Configurer un ensemble d’adresses IP pour un groupe de services dans un appel d’API NITRO

Dans Kubernetes, le kube-apiserver envoie le jeu d’adresses IP mis à jour. Les administrateurs ont comparé manuellement les adresses IP de la configuration existante et les adresses IP fournies par le kube-apiserver. Les administrateurs ont lié les adresses IP qui ont été ajoutées et les adresses IP qui ont été supprimées. En outre, les administrateurs ont délié l’adresse IP uniquement après la transition du service à l’état OFS (hors service).

La prise en charge est ajoutée pour configurer un ensemble d’adresses IP pour un groupe de services dans un appel d’API NITRO. Une nouvelle valeur « API » est ajoutée à l’option de mise à l’échelle automatique existante dans l’interface de l’appliance Citrix ADC. Pour les groupes de services avec le type de mise à l’échelle automatique de l’API, les administrateurs peuvent fournir l’ensemble des adresses IP dans un appel NITRO. Lors de la réception de l’appel d’API NITRO, l’appliance Citrix ADC lie automatiquement les adresses IP ajoutées et délie les adresses IP supprimées.

Auparavant, un seul membre du groupe de service pouvait être lié dans un appel NITRO.

Voici un exemple d’appel d’API NITRO avec le jeu d’adresses IP défini.

curl -u nsroot:nsroot http://10.102.217.48/nitro/v1/config -H "Content-Type:application/x-www-form-urlencoded" -d 'object={"servicegroup_servicegroupmemberlist_binding": {"servicegroupname": "sg1", "members": [{"ip": "1.1.1.1", "port": 80}, {"ip": "1.1.1.10", "port": 80}]}}'

Remarque : Vous pouvez uniquement lier des services basés sur l’adresse IP au groupe de services de type API. Vous ne pouvez pas lier des services basés sur le domaine au groupe de services de type API.

Créer un groupe de services de type API à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez ;

add serviceGroup <serviceGroupName>@ <serviceType> [-autoScale <autoScale>]

Exemple :

add serviceGroup svg1 HTTP -autoScale API

Vous pouvez configurer les paramètres AutoDisableGraceful et AutoDisableDelay à l’aide de la commande add ServiceGroup ou set ServiceGroup.

-  add serviceGroup <serviceGroupName>@ <serviceType> [-autoScale <autoScale>] [-autoDisablegraceful ( YES | NO)] [-autoDisabledelay <secs>]

-  set serviceGroup <serviceGroupName [-autoDisablegraceful ( YES | NO)] [-autoDisabledelay <secs>]

Exemple :

-  add ServiceGroup svg1 HTTP -AutoScale API AutoDisableGraceful OUI -AutoDisableDelay 100

-  set serviceGroup svg1 -autoDisablegraceful  YES -autoDisabledelay 100

Arguments

autoDisablegraceful

Indique l’arrêt progressif du service. Si cette option est activée, l’appliance attend la fermeture de toutes les connexions en attente à ce service avant de supprimer le service. Pour les clients qui ont déjà une session persistante sur le système, de nouvelles connexions ou demandes continuent d’être envoyées à ce service. Le membre de service est supprimé uniquement s’il n’y a pas de connexions en attente. Valeur par défaut : NO

autoDisabledelay

Indique le temps autorisé (en secondes) pour un arrêt progressif. Pendant cette période, de nouvelles connexions ou demandes continuent d’être envoyées à ce service pour les clients qui ont déjà une session persistante sur le système. Les connexions ou les demandes de nouveaux clients qui n’ont pas de session de persistance sur le système ne sont pas envoyées au service. Au lieu de cela, ils sont équilibrés entre les autres services disponibles. Après l’expiration du délai, le membre du service est supprimé.

Important :

  • Les paramètres autoDisablegraceful et autoDisabledelay ne s’appliquent qu’aux groupes de services de type Autoscale « API » et « CLOUD ».
  • Si les paramètres autoDisablegraceful ou autoDisabledelay ne sont pas configurés, les membres du service sont immédiatement supprimés.

Délier une adresse IP gracieusement

Si l’une des adresses IP ne figure pas dans la liste d’état souhaitée, ces adresses IP sont non liées en fonction des paramètres AutoDisableGraceful ou AutoDisableDelay.

  • Si l’un de ces paramètres est défini, l’adresse IP est non liée gracieusement.
  • Si aucun de ces paramètres n’est défini, l’adresse IP est immédiatement non liée.

Remarque :

  • Les adresses IP identifiées pour unbind gracieux sont affichées uniquement lorsque la commande show servicegroup est exécutée.
  • Vous ne pouvez pas effectuer d’opération (définie, non définie, par exemple) sur le membre du groupe de services identifié pour la déliaison gracieuse.

La figure suivante affiche un exemple de commande show servicegroup.

Exemple de commande show service group

Créer un groupe de services de type API à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Groupes de services, puis cliquez sur Ajouter.

  2. En mode AutoScale, sélectionnez API.

Configurez l’arrêt progressif ou un délai pour un groupe de services de type API à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Groupes de services.

    Paramètres de base des groupes de services

  2. En mode AutoScale, sélectionnez API.

  3. Dans Auto Disable Graceful, sélectionnez YES.

  4. Dans Auto Disable Delay, entrez le temps d’attente pour un arrêt progressif.

Remarque : Les champs Auto Disable Graceful ou Auto Display Delay sont activés uniquement si vous sélectionnez API ou CLOUD en mode AutoScale.