Citrix ADC

Solution d’entrée de Kubernetes

Cette rubrique fournit une vue d’ensemble de la solution Kubernetes Ingress fournie par Citrix et explique les avantages.

Qu’est-ce que Kubernetes Ingress ?

Lorsque vous exécutez une application dans un cluster Kubernetes, vous devez fournir aux utilisateurs externes un moyen d’accéder aux applications depuis l’extérieur du cluster Kubernetes. Kubernetes fournit un objet appelé Ingress qui fournit le moyen le plus efficace d’exposer plusieurs services à l’aide d’une adresse IP stable. Un objet d’entrée Kubernetes est toujours associé à un ou plusieurs services et agit comme un point d’entrée unique permettant aux utilisateurs externes d’accéder aux services exécutés à l’intérieur du cluster.

Le diagramme suivant explique comment fonctionne Kubernetes Ingress. Kubernetes Ingress

L’implémentation de Kubernetes Ingress comprend les composants suivants :

  • Ressource d’entrée. Une ressource Ingress vous permet de définir des règles pour accéder aux applications depuis l’extérieur du cluster.

  • Contrôleur d’entrée. Un contrôleur d’entrée est une application déployée dans le cluster qui interprète les règles définies dans l’entrée. Il convertit les règles d’entrée en instructions de configuration pour une application d’équilibrage de charge intégrée au cluster. L’équilibreur de charge peut être une application logicielle exécutée dans votre cluster Kubernetes ou une appliance matérielle s’exécutant en dehors du cluster.

  • Dispositif d’entrée. Un périphérique d’entrée est une application d’équilibrage de charge telle que Citrix ADC CPX, VPX ou MPX qui effectue l’équilibrage de charge selon les instructions de configuration fournies par le contrôleur Ingress.

Qu’est-ce que la solution Kubernetes Ingress de Citrix ?

Dans cette solution, Citrix fournit une implémentation du contrôleur d’entrée Kubernetes pour gérer et acheminer le trafic vers votre cluster Kubernetes en utilisant Citrix ADC (Citrix ADC CPX, VPX ou MPX). Le contrôleur d’entrée Citrix intègre Citrix ADC à votre environnement Kubernetes et configure Citrix ADC CPX, VPX ou MPX conformément aux règles d’entrée.

Les solutions Kubernetes Ingress standard fournissent un équilibrage de charge uniquement à la couche 7 (trafic HTTP ou HTTPS). Cependant, vous devrez peut-être exposer de nombreuses applications héritées qui reposent sur TCP ou UDP ou des applications et ont besoin d’un moyen d’équilibrer la charge de ces applications. La solution Citrix Kubernetes Ingress fournit la prise en charge du trafic TCP, TCP-SSL et UDP en dehors de l’entrée HTTP ou HTTPS standard. En outre, il fonctionne de manière transparente sur plusieurs clouds ou centres de données locaux.

Citrix ADC fournit des stratégies de gestion du trafic de niveau entreprise telles que les stratégies de réécriture et de répondeur pour équilibrer efficacement la charge du trafic à la couche 7. Cependant, Kubernetes Ingress ne dispose pas de telles stratégies de gestion du trafic de niveau entreprise. Avec la solution Kubernetes Ingress de Citrix, vous pouvez appliquer des stratégies de réécriture et de répondeur pour le trafic des applications dans un environnement Kubernetes à l’aide de CRD fournis par Citrix.

La solution Kubernetes Ingress de Citrix prend également en charge le déploiement canari automatisé pour votre pipeline d’applications CI/CD. Dans cette solution, Citrix ADC est intégré à la plateforme Spinnaker et sert de source pour fournir des mesures précises pour l’analyse du déploiement Canary à l’aide de Kayenta. Après avoir analysé les mesures, Kayenta génère un score global pour le canari et prend la décision de promouvoir ou d’échouer la version Canary. Vous pouvez également réglementer la distribution du trafic vers la version Canary à l’aide de l’infrastructure de stratégie Citrix ADC.

Le tableau suivant résume les avantages offerts par la solution Ingress de Citrix par rapport à Kubernetes Ingress.

Fonctionnalités Kubernetes Ingress Solution d’entrée de Citrix
Prise en charge HTTP et HTTPS Oui Oui
Routage URL​ ​ Oui Oui
TLS Oui Oui
Équilibrage de charge Oui Oui
TCP, TCP-SSL Non Oui
UDP Non Oui
HTTP/2 Oui Oui
Prise en charge automatisée du déploiement canari avec des outils CI/CD Non Oui
Prise en charge de l’application des​ stratégies de réécriture et de réponse Citrix ADC Non Oui
Authentification (OAuth), TLS mutuel (MTL)) Non Oui
Prise en charge de l’application de stratégies Citrix Rate Limitation Non Oui

Options de déploiement de la solution Kubernetes Ingress

La solution Kubernetes Ingress de Citrix vous offre une architecture flexible en fonction de la façon dont vous souhaitez gérer vos environnements Citrix ADC et Kubernetes.

Entrée unifiée (à un niveau)

Dans une architecture à entrée unifiée (à un niveau), un périphérique Citrix MPX ou VPX déployé en dehors du cluster Kubernetes est intégré à l’environnement Kubernetes à l’aide du Controller d’entrée Citrix. Le contrôleur d’entrée Citrix est déployé en tant que conteneur dans le cluster Kubernetes et automatise la configuration des ADC Citrix en fonction des modifications apportées aux microservices ou aux ressources Ingress. Le périphérique Citrix ADC exécute des fonctions telles que l’équilibrage de charge, la terminaison TLS et les optimisations de protocole HTTP ou TCP sur le trafic entrant, puis achemine le trafic vers le microservice correct au sein d’un cluster Kubernetes. Cette architecture convient le mieux dans les scénarios où la même équipe gère la plate-forme Kubernetes et d’autres infrastructures réseau, y compris les contrôleurs de livraison d’applications (ADC).

Le diagramme suivant montre un déploiement utilisant l’architecture d’entrée unifiée.

Un seul niveau

Une solution Ingress unifiée offre les principaux avantages suivants :

  • Fournit un moyen d’étendre les fonctionnalités de votre infrastructure Citrix ADC existante à l’environnement Kubernetes
  • Permet d’appliquer des stratégies de gestion du trafic pour le trafic entrant
  • Fournit une architecture simplifiée adaptée aux équipes DevOps averties du réseau
  • Prise en charge de la multilocation

Pression à deux niveaux

Dans une architecture à deux niveaux, Citrix ADC (MPX ou VPX) déployé en dehors du cluster Kubernetes agit au niveau 1 et équilibre la charge du trafic Nord-Sud vers les CPX Citrix ADC exécutés à l’intérieur du cluster. Citrix ADC CPX agit au niveau 2 et effectue l’équilibrage de charge pour les microservices au sein du cluster Kubernetes.

L’architecture à double niveau est la plus appropriée dans les scénarios où la plate-forme Kubernetes et l’infrastructure réseau sont gérées par des équipes distinctes. Les équipes de mise en réseau utilisent Citrix ADC de niveau 1 pour les cas d’utilisation tels que GSLB, la terminaison TLS sur la plate-forme matérielle et l’équilibrage de charge TCP. Les équipes de plate-forme Kubernetes peuvent utiliser Citrix ADC (CPX) de niveau 2 pour l’équilibrage de charge de couche 7 (HTTP/HTTPS), le TLS mutuel et l’observabilité ou la surveillance des microservices. Le Citrix ADC (CPX) de niveau 2 peut avoir une version logicielle différente de celle du Citrix ADC de niveau 1 pour prendre en charge les nouvelles fonctionnalités disponibles.

Le diagramme suivant montre un déploiement avec architecture à deux niveaux.

Double niveau

Une entrée à deux niveaux offre les avantages clés suivants :

  • Garantit une vitesse élevée de développement d’applications pour les développeurs ou les équipes de plateformes
  • Permet d’appliquer des stratégies de gestion du trafic pilotées par les développeurs pour les microservices au sein du cluster Kubernetes
  • Permet l’évolutivité du cloud et la multilocation

Pour plus d’informations, veuillez consulter le Documentation du contrôleur d’entrée Citrix.

Mise en route

Pour commencer à utiliser la solution Kubernetes Ingress de Citrix, vous pouvez essayer les exemples suivants :

Solution d’entrée de Kubernetes