Implementar NetScaler CPX como proxy para permitir el flujo de tráfico de este a oeste
En esta implementación, la instancia de NetScaler CPX actúa como un proxy para permitir la comunicación entre los contenedores de aplicaciones que residen en varios hosts. La instancia de NetScaler CPX se aprovisiona junto con las aplicaciones en varios hosts y proporciona la ruta más corta para la comunicación.
La siguiente imagen ilustra el flujo de tráfico entre dos aplicaciones a través de las instancias de NetScaler CPX.
Esta imagen muestra el flujo de tráfico entre la aplicación C y la aplicación B y entre la aplicación A y la aplicación B. Cuando la aplicación C (en cualquiera de los hosts) envía una solicitud a B, la solicitud se recibe primero en el contenedor NetScaler CPX en el mismo host que la aplicación C. A continuación, el contenedor NetScaler CPX pasa el tráfico al contenedor NetScaler CPX alojado en el mismo host que la aplicación B y, a continuación, el tráfico se reenvía a la aplicación B. Se sigue una ruta de tráfico similar cuando la aplicación A envía una solicitud a la aplicación B.
En este ejemplo, también se implementa un NetScaler MPX para permitir el tráfico a las aplicaciones desde Internet a través de un VIP global. El tráfico de NetScaler MPX se recibe en los contenedores de NetScaler CPX, que luego distribuyen el tráfico entre los contenedores de aplicaciones.
El siguiente diagrama ilustra esta topología con las configuraciones que deben establecerse para que se produzca la comunicación.
En la siguiente tabla se enumeran las direcciones IP y los puertos que se configuran en las instancias de NetScaler CPX en este ejemplo de configuración.
Para configurar este caso de ejemplo, ejecute el siguiente comando en el símbolo del shell de Linux mientras crea el contenedor NetScaler CPX en los tres hosts de Docker:
docker run -dt -p 22 -p 80 -p 161/udp -p 30000-30002: 30000-30002 --ulimit core=-1 --privileged=truecpx:6.2
<!--NeedCopy-->
Ejecute los siguientes comandos mediante la función Trabajos en NetScaler ADM o mediante las API de NITRO.
En la instancia de NetScaler CPX en Docker Host 1:
add lb vserver VIP-A1 HTTP 172.17.0.2 30000
add service svc-A1 10.102.29.100 HTTP 80
bind lb vserver VIP-A1 svc-A1
add lb vserver VIP-B1 HTTP 172.17.0.2 30001
add service svc-B1 10.102.29.100 HTTP 90
bind lb vserver VIP-B1 svc-B1
add lb vserver VIP-C1 HTTP 172.17.0.2 30002
add service svc-VIP-C2 10.102.29.105 HTTP 30002
add service svc-VIP-C3 10.102.29.110 HTTP 30002
bind lb vserver VIP-C1 svc-VIP-C2
bind lb vserver VIP-C1 svc-VIP-C3
<!--NeedCopy-->
En la instancia de NetScaler CPX en el host 2 de Docker:
add lb vserver VIP-A2 HTTP 172.17.0.3 30000
add service svc-A2 10.102.29.105 HTTP 80
bind lb vserver VIP-A2 svc-A2
add lb vserver VIP-B2 HTTP 172.17.0.3 30001
add service svc-VIP-B1 10.102.29.100 HTTP 30001
bind lb vserver VIP-B2 svc-VIP-B1
add lb vserver VIP-C2 HTTP 172.17.0.3 30002
add service svc-C2 10.102.29.105 HTTP 70
bind lb vserver VIP-C2 svc-C2
<!--NeedCopy-->
En la instancia de NetScaler CPX en el host 3 de Docker:
add lb vserver VIP-A3 HTTP 172.17.0.4 30000
add service svc-VIP-A1 10.102.29.100 HTTP 30000
add service svc-VIP-A2 10.102.29.105 HTTP 30000
bind lb vserver VIP-A3 svc-VIP-A1
bind lb vserver VIP-A3 svc-VIP-A2
add lb vserver VIP-B3 HTTP 172.17.0.4 30001
add service svc-VIP-B1 10.102.29.100 HTTP 30001
bind lb vserver VIP-B3 svc-VIP-B1
add lb vserver VIP-C3 HTTP 172.17.0.4 30002
add service svc-C3 10.102.29.110 HTTP 70
bind lb vserver VIP-C3 svc-C3
<!--NeedCopy-->