Ingress Controller de Citrix ADC

Implementar Citrix ADC CPX como dispositivo de entrada en Google Cloud Platform

En este tema se explica cómo implementar Citrix ADC CPX como dispositivo de entrada en Google Kubernetes Engine (GKE)

Requisitos previos

Debe completar las siguientes tareas antes de realizar los pasos del procedimiento.

  • Asegúrese de tener un clúster de Kubernetes en funcionamiento.

  • Si ejecuta su clúster en GKE, asegúrese de haber configurado un enlace de rol de administrador de clúster.

Puede usar el siguiente comando para configurar el enlace de roles cluster-admin.

kubectl create clusterrolebinding citrix-cluster-admin --clusterrole=cluster-admin --user=<email-id of your google account>

Puede obtener los detalles de su cuenta de Google con el siguiente comando.

gcloud info | grep Account

Implementar Citrix ADC CPX como dispositivo de entrada en Google Cloud Platform

  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/gcp/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/gcp/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/gcp/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/gcp/manifest/cpx_service.yaml
    

Nota:

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

  1. 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.7.248.216 |none |  80/TCP | 2m |
    |cpx-ingress |LoadBalancer | 10.7.241.6 |  pending | 80:32258/TCP,443:32084/TCP | 2m|
    |kubernetes |ClusterIP |10.7.240.1 |none | 443/TCP | 22h|
    
  2. 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.7.248.216|none|80/TCP |3m|
    |cpx-ingress|LoadBalancer|10.7.241.6|EXTERNAL-IP CREATED|80:32258/TCP,443:32084/TCP|3m|
    |kubernetes| ClusterIP| 10.7.240.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 del servicio 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.

  3. 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/gcp/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 elkubectl delete -f all-in-one.yaml comando.

Implementar Citrix ADC CPX como dispositivo de entrada en Google Cloud Platform