Contrôleur d'entrée Citrix ADC

Déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster Azure Kubernetes Service

Cette rubrique explique comment déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster Azure Kubernetes Service (AKS) . Citrix ADC CPX prend en charge à la fois le mode réseau avancé (Azure CNI) et le mode réseau de base (Kubenet) d’AKS.

Remarque :

Si vous souhaitez utiliser des images de référentiel Azure pour Citrix ADC CPX ou le Citrix ingress controller au lieu des images quay.io par défaut, consultez Déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster AKS à l’aide d’images de référentiel Azure.

Déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster AKS

Effectuez les étapes suivantes pour déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster AKS.

Remarque :

Dans cette procédure, le serveur Web Apache est utilisé comme exemple d’application.

  1. Déployez l’application requise dans votre cluster Kubernetes et exposez-la en tant que service dans votre cluster à l’aide de la commande suivante.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/apache.yaml
    

    Remarque :

    Dans cet exemple, apache.yaml est utilisé. Vous devez utiliser le fichier YAML spécifique à votre application.

  2. Déployez Citrix ADC CPX en tant que périphérique d’entrée dans le cluster à l’aide de la commande suivante.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/standalone_cpx.yaml
    
  3. Créez la ressource d’entrée à l’aide de la commande suivante.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/cpx_ingress.yaml
    
  4. Créez un service de type LoadBalancer pour accéder au Citrix ADC CPX à l’aide de la commande suivante.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/cpx_service.yaml
    

    Cette commande crée un équilibreur de charge Azure avec une adresse IP externe pour la réception du trafic.

  5. Vérifiez le service et vérifiez si l’équilibreur de charge a créé une adresse IP externe. Attendez un certain temps si l’adresse IP externe n’est pas créée.

    kubectl  get svc
    
    |NAME|TYPE|CLUSTER-IP|EXTERNAL-IP|PORT(S)| AGE|
    |----|----|-----|-----|----|----|
    |apache |ClusterIP|10.0.103.3|none|   80/TCP | 2m|
    |cpx-ingress |LoadBalancer |10.0.37.255 | pending |80:32258/TCP,443:32084/TCP |2m|
    |Kubernetes |ClusterIP | 10.0.0.1 |none |  443/TCP | 22h |
    
  6. Une fois que l’adresse IP externe de l’équilibreur de charge est disponible comme suit, vous pouvez accéder à vos ressources à l’aide de l’adresse IP externe de l’équilibreur de charge.

    kubectl  get svc
    
    |NAME|TYPE|CLUSTER-IP|EXTERNAL-IP|PORT(S)|  AGE|
    |---|---|----|----|----|----|
    |apache|ClusterIP|10.0.103.3 |none|80/TCP|  3m|
    |cpx-ingress |LoadBalancer|10.0.37.255|  EXTERNAL-IP CREATED| 80:32258/TCP,443:32084/TCP |  3m|
    |Kubernetes|    ClusterIP|10.0.0.1 |none| 443/TCP| 22h|
    

    Remarque :

    Le contrôle de santé de l’équilibreur de charge cloud est obtenu à partir de ReadinessProbe configuré dans le fichier yaml de déploiement Citrix ADC CPX . Si la vérification de l’état échoue, vous devez vérifier la sonde ReadinessProbe configurée pour Citrix ADC CPX. Pour plus d’informations, consultez ReadinessProbe et équilibreur de charge externe.

  7. Accédez à l’application à l’aide de la commande suivante.

    curl http://<External-ip-of-loadbalancer>/ -H 'Host: citrix-ingress.com
    

Déploiement rapide

Pour faciliter le déploiement, vous pouvez simplement déployer un seul manifeste tout-en-un qui combinerait les étapes expliquées dans la rubrique précédente.

  1. Déployez une entrée Citrix ADC CPX avec le Citrix ingress controller intégré dans votre cluster Kubernetes à l’aide du fichier all-in-one.yaml.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/all-in-one.yaml
    
  2. Accédez à l’application à l’aide de la commande suivante.

    curl http://<External-ip-of-loadbalancer>/ -H 'Host: citrix-ingress.com'
    

    Remarque :

    Pour supprimer le déploiement, utilisez la commande kubectl delete -f all-in-one.yaml.

Déployer Citrix ADC CPX en tant que périphérique d’entrée dans un cluster Azure Kubernetes Service