Ingress Controller de Citrix ADC

Implementar el Citrix Ingress Controller mediante gráficos Helm

Puede implementar el Citrix Ingress Controller en los siguientes modos en sus implementaciones bare metal y en la nube :

  • Como pod independiente en el clúster de Kubernetes. Use este modo si controla Citrix ADC (Citrix ADC MPX o Citrix ADC VPX) fuera del clúster. Por ejemplo, con topologías de doble nivel o topología de un solo nivel en las que el nivel único es Citrix ADC MPX o VPX.

  • Como sidecar (en el mismo pod) con Citrix ADC CPX en el clúster de Kubernetes. El controlador sidecar solo es responsable del Citrix ADC CPX asociado dentro del mismo pod. Este modo se usa en topologías de doble nivel (o en la nube).

Los gráficos helm para el Citrix Ingress Controller están disponibles en Artifact Hub.

Cuando implementa con los gráficos Helm, puede usar un archivo values.yaml para especificar los valores de los parámetros configurables en lugar de proporcionar cada parámetro como argumento. Para facilitar su uso, Citrix proporciona el compilador de implementaciones de Citrix, que es una GUI para generar el archivo values.yaml para implementaciones nativas de la nube de Citrix.

Implementar el Citrix Ingress Controller como un pod independiente en el clúster de Kubernetes

Use el gráfico citrix-ingress-controller para ejecutar el Citrix Ingress Controller como un pod en el clúster de Kubernetes. El gráfico implementa el Citrix Ingress Controller como un pod en el clúster de Kubernetes y configura el dispositivo de entrada Citrix ADC VPX o MPX.

Requisitos previos

  • Determine la dirección NS_IP que necesita el controlador para comunicarse con el dispositivo. La dirección IP puede ser cualquiera de las siguientes, según el tipo de implementación de Citrix ADC:

    • (Dispositivos independientes) NSIP: la dirección IP de administración de un dispositivo Citrix ADC independiente. Para obtener más información, consulte Direccionamiento IP en Citrix ADC.

    • (Dispositivos en modo de alta disponibilidad) SNIP: la dirección IP de la subred. Para obtener más información, consulte Direccionamiento IP en Citrix ADC.

    • (Dispositivos en modo clúster) CLIP: la dirección IP de administración de clústeres (CLIP) para una implementación de Citrix ADC en clúster. Para obtener más información, consulte Direccionamiento IP para un clúster.

  • El nombre de usuario y la contraseña del dispositivo Citrix ADC VPX o MPX utilizado como dispositivo de entrada. El dispositivo Citrix ADC debe tener una cuenta de usuario del sistema (no predeterminada) con ciertos privilegios para que el Citrix Ingress Controller pueda configurar el dispositivo Citrix ADC VPX o MPX. Para obtener instrucciones sobre cómo crear la cuenta de usuario del sistema en Citrix ADC, consulte Crear cuenta de usuario del sistema para el Citrix Ingress Controller de Citrix en Citrix ADC.

    Puede pasar directamente el nombre de usuario y la contraseña o usar secretos de Kubernetes. Si quieres usar secretos de Kubernetes, crea un secreto para el nombre de usuario y la contraseña con el siguiente comando:

     kubectl create secret  generic nslogin --from-literal=username='cic' --from-literal=password='mypassword'
    

Crear una cuenta de usuario del sistema para el Citrix Ingress Controller de Citrix en Citrix ADC

El Citrix Ingress Controller configura Citrix ADC mediante una cuenta de usuario del sistema de Citrix ADC. La cuenta de usuario del sistema debe tener ciertos privilegios para que el Citrix Ingress Controller tenga permiso para configurar lo siguiente en Citrix ADC:

  • Agregar, eliminar o ver un servidor virtual de conmutación de contenido (CS)
  • Configurar directivas y acciones de CS
  • Configurar el servidor virtual de equilibrio de carga (LB)
  • Configurar grupos de servicios
  • Configurar certkeys SSL
  • Configurar rutas
  • Configurar monitores de usuario
  • Agregar archivo del sistema (para cargar claves de certificado SSL desde Kubernetes)
  • Configurar la dirección IP virtual (VIP)
  • Comprobar el estado del dispositivo Citrix ADC

Para crear la cuenta de usuario del sistema, lleve a cabo lo siguiente:

  1. Inicie sesión en el dispositivo Citrix ADC. Lleve a cabo lo siguiente:
    1. Use un cliente SSH, como PuTTY, para abrir una conexión SSH al dispositivo Citrix ADC.

    2. Inicie sesión en el dispositivo con las credenciales de administrador.

  2. Cree la cuenta de usuario del sistema mediante el siguiente comando:

    add system user <username> <password>
    

    Por ejemplo:

    add system user cic mypassword
    
  3. Cree una directiva para proporcionar los permisos requeridos a la cuenta de usuario del sistema. Utilice el siguiente comando:

    add cmdpolicy cic-policy ALLOW '^(\?!shell)(\?!sftp)(\?!scp)(\?!batch)(\?!source)(\?!.*superuser)(\?!.*nsroot)(\?!install)(\?!show\s+system\s+(user|cmdPolicy|file))(\?!(set|add|rm|create|export|kill)\s+system)(\?!(unbind|bind)\s+system\s+(user|group))(\?!diff\s+ns\s+config)(\?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)^(\?!shell)(\?!sftp)(\?!scp)(\?!batch)(\?!source)(\?!.*superuser)(\?!.*nsroot)(\?!install)(\?!show\s+system\s+(user|cmdPolicy|file))(\?!(set|add|rm|create|export|kill)\s+system)(\?!(unbind|bind)\s+system\s+(user|group))(\?!diff\s+ns\s+config)(\?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)'
    

    Nota: La cuenta de usuario del sistema tendría privilegios en función de la directiva de comandos que defina.

    La directiva de comandos mencionada en el paso 3 es similar a la directiva de sysAdmin comandos integrada con permisos adicionales para cargar archivos.

    En la especificación de directiva de comandos proporcionada, los caracteres especiales que deben escaparse ya se omiten para copiar y pegar fácilmente en la línea de comandos de Citrix ADC.

    Para configurar la directiva de comandos del asistente de configuración (GUI) de Citrix ADC, utilice la siguiente especificación de directiva de comandos.

    ^(?!shell)(?!sftp)(?!scp)(?!batch)(?!source)(?!.*superuser)(?!.*nsroot)(?!install)(?!show\s+system\s+(user|cmdPolicy|file))(?!(set|add|rm|create|export|kill)\s+system)(?!(unbind|bind)\s+system\s+(user|group))(?!diff\s+ns\s+config)(?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)^(?!shell)(?!sftp)(?!scp)(?!batch)(?!source)(?!.*superuser)(?!.*nsroot)(?!install)(?!show\s+system\s+(user|cmdPolicy|file))(?!(set|add|rm|create|export|kill)\s+system)(?!(unbind|bind)\s+system\s+(user|group))(?!diff\s+ns\s+config)(?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)
    
  4. Enlazar la directiva a la cuenta de usuario del sistema mediante el siguiente comando:

    bind system user cic cic-policy 0
    

Para implementar el Citrix Ingress Controller como un pod independiente:

Para implementar el Citrix Ingress Controller como pod independiente, siga las instrucciones proporcionadas en el Citrix Ingress Controller Artifact Hub.

Implemente el Citrix Ingress Controller como un sidecar con Citrix ADC CPX en el clúster de Kubernetes

Use el gráfico citrix-cpx-with-ingress-controller para implementar un Citrix ADC CPX con el Citrix Ingress Controller como sidecar. El gráfico implementa una instancia CPX de Citrix ADC que se usa para equilibrar la carga del tráfico de norte a sur a los microservicios del clúster de Kubernetes. El Citrix Ingress Controller sidecar configura Citrix ADC CPX.

Para implementar Citrix ADC CPX con el Citrix Ingress Controller como sidecar, siga las instrucciones proporcionadas en el Citrix Ingress Controller Helm Hub.

Implementar el Citrix Ingress Controller mediante gráficos Helm