Ingress Controller de Citrix ADC

Implementar Citrix ADC CPX como dispositivo de entrada en un clúster de Azure Kubernetes Service

En este tema se explica cómo implementar Citrix ADC CPX como dispositivo de entrada en un clúster de Azure Kubernetes Service (AKS). Citrix ADC CPX admite tanto el modo de redes avanzadas (Azure CNI) como el modo de redes básicas (Kubenet) de AKS.

Nota:

Si quiere usar imágenes de repositorio de Azure para Citrix ADC CPX o el Citrix Ingress Controller en lugar de las imágenes de quay.io predeterminadas, consulte Implementar Citrix ADC CPX como dispositivo de entrada en un clúster de AKS mediante imágenes de repositorio de Azure.

Implementar Citrix ADC CPX como dispositivo de entrada en un clúster de AKS

Realice los siguientes pasos para implementar Citrix ADC CPX como dispositivo de entrada en un clúster de AKS.

Nota:

En este procedimiento, se utiliza el servidor web Apache como aplicación de ejemplo.

  1. Implemente la aplicación requerida en su clúster de Kubernetes y expóngala como un servicio en su clúster con el siguiente comando.

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

    Nota:

    En este ejemplo, apache.yaml se usa. Debe usar el archivo YAML específico para su aplicación.

  2. Implemente Citrix ADC CPX como dispositivo de entrada en el clúster mediante el siguiente comando.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/standalone_cpx.yaml
    
  3. Cree el recurso de entrada con el siguiente comando.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/cpx_ingress.yaml
    
  4. Cree un servicio de tipo LoadBalancer para acceder a Citrix ADC CPX mediante el siguiente comando.

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

    Este comando crea un equilibrador de carga de Azure con una IP externa para recibir tráfico.

  5. Compruebe el servicio y compruebe si el equilibrador de carga ha creado una IP externa. Espere un momento si no se crea la IP externa.

    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. Una vez que la IP externa del equilibrador de carga esté disponible de la siguiente manera, puede acceder a sus recursos mediante la IP externa del equilibrador de carga.

    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|
    

    Nota:

    La verificación de estado del equilibrador de carga en la nube se obtiene de readinessProbe configurado en el archivo yaml de implementación de Citrix ADC CPX. Si se produce un error en la comprobación de estado, debe comprobar la sonda readinessProbe configurada para Citrix ADC CPX. Para obtener más información, consulte readinessProbe y equilibrador de carga externo.

  7. Acceda a la aplicación mediante el siguiente comando.

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

Distribución rápida

Para facilitar la implementación, puede implementar un único manifiesto todo en uno que combine los pasos explicados en el tema anterior.

  1. Implemente una entrada de Citrix ADC CPX con un controlador de entrada incorporado de Citrix en su clúster de Kubernetes mediante el archivo.yaml todo en uno.

    kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/deployment/azure/manifest/all-in-one.yaml
    
  2. Acceda a la aplicación mediante el siguiente comando.

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

    Nota:

    Para eliminar la implementación, use el comando kubectl delete -f all-in-one.yaml.

Implementar Citrix ADC CPX como dispositivo de entrada en un clúster de Azure Kubernetes Service