Compatibilidad con redirección dinámica en NetScaler CPX

NetScaler CPX admite el protocolo de redirección dinámica BGP. El objetivo clave del protocolo de redirección dinámica es anunciar la dirección IP del servidor virtual en función del estado de los servicios, vinculados al servidor virtual. Ayuda a un enrutador ascendente a elegir la mejor entre varias rutas a un servidor virtual distribuido topográficamente.

Para obtener información sobre la contraseña no predeterminada en NetScaler CPX, consulte la sección Support for using a non-default password in NetScaler CPX del documento Configuración de NetScaler CPX.

En una red de host único, el cliente, los servidores y la instancia de NetScaler CPX se implementan como contenedores en el mismo host de Docker. Todos los contenedores están conectados a través del puente docker0. En este entorno, la instancia de NetScaler CPX actúa como proxy para las aplicaciones aprovisionadas como contenedores en el mismo host de Docker. Para obtener información sobre la implementación en modo de red de host de NetScaler CPX, consulte Modo de red de host.

Esta ilustración ilustra la topología de host único.

Topología de host único

En esta topología, los servidores virtuales se configuran y anuncian (según el estado de los servicios) a la red o enrutador ascendente mediante BGP.

Realice los siguientes pasos para configurar BGP en NetScaler CPX en un solo host Docker con el modo de conexión en red puente.

Configurar la inyección de estado de ruta basada en BGP mediante la API REST en NetScaler CPX

  1. Cree un contenedor a partir de la imagen de NetScaler CPX mediante el siguiente comando:

    docker run -dt --privileged=true -p 22 -p 80 -p 161 -e EULA=yes --ulimit core=-1 cpx: <tag>
    

    Por ejemplo:

    docker run -dt --privileged=true -p 22 -p 80 -p 161 -e EULA=yes --ulimit core=-1 cpx:12.1-50.16
    
  2. Inicie sesión en el contenedor con el siguiente comando:

    docker exec -it <container id> bash
    
  3. Habilite la función BGP con el siguiente comando:

    cli_script.sh "enable ns feature bgp"
    
  4. Obtenga el NSIP mediante el comando show ns ip:

    cli_script.sh "show ns ip"
    
  5. Agregue el servidor virtual mediante el siguiente comando:

    cli_script.sh "add lb  vserver <vserver_name> http <VIP> <PORT>"
    
  6. Agregue servicios y enlace servicios al servidor virtual.

  7. Habilite hostroute para el VIP mediante el siguiente comando:

    cli_script.sh "set ns ip <VIP> -hostroute enabled”
    

    Salga del contenedor y envíe comandos BGP NITRO desde el host al NSIP en el puerto 9080.

  8. Configure el enrutador BGP:

    Por ejemplo, si quieres configurar:

    router bgp 100
    Neighbour 172.17.0.2 remote-as 101
    Redistribute kernel
    

    Especifique el comando de la siguiente manera:

     curl -u username:password http://<NSIP>:9080/nitro/v1/config/ -X POST --data 'object={"routerDynamicRouting": {"bgpRouter" : {"localAS":100, "neighbor": [{ "address": "172.17.0.2", "remoteAS": 101}], "afParams":{"addressFamily": "ipv4", "redistribute": {"protocol": "kernel"}}}}}'
    
  9. Instale las rutas BGP aprendidas en el PE mediante el siguiente comando NITRO:

    curl -u username:password http://<NSIP>:9080/nitro/v1/config/ --data 'object={"params":{"action":"apply"},"routerDynamicRouting": {"commandstring" : "ns route-install bgp"}}'
    
  10. Verifique el estado de adyacencia de BGP mediante el siguiente comando NITRO:

    curl -u username:password http://<NSIP>:9080/nitro/v1/config/routerDynamicRouting/bgpRouter
    

    Salida de muestra:

     root@ubuntu:~# curl -u username:password http://172.17.0.3:9080/nitro/v1/config/routerDynamicRouting/bgpRouter
     { "errorcode": 0, "message": "Done", "severity": "NONE", "routerDynamicRouting":{"bgpRouter":[{ "localAS": 100, "routerId": "172.17.0.3", "afParams": [ { "addressFamily": "ipv4" }, { "addressFamily": "ipv6" } ], "neighbor": [ { "address": "172.17.0.2", "remoteAS": 101, "ASOriginationInterval": 15, "advertisementInterval": 30, "holdTimer": 90, "keepaliveTimer": 30, "state": "Connect", "singlehopBfd": false, "multihopBfd": false, "afParams": [ { "addressFamily": "ipv4", "activate": true }, { "addressFamily": "ipv6", "activate": false } ]
    
  11. Compruebe que las rutas aprendidas a través de BGP estén instaladas en el motor de paquetes con el siguiente comando:

    cli_script.sh “show route”
    
  12. Guarde la configuración mediante el siguiente comando:

    cli_script.sh “save config”
    

La configuración de redirección dinámica se guarda en el archivo /nsconfig/ZebOS.conf.

Compatibilidad con redirección dinámica en NetScaler CPX