Configurar UDS Enterprise en HA · usando el software HAProxy. Elementos necesarios Para el...
Transcript of Configurar UDS Enterprise en HA · usando el software HAProxy. Elementos necesarios Para el...
Página 1 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Introducción Los componentes de UDS Enterprise (UDS Server y UDS Tunneler) se pueden configurar en alta disponibilidad (HA) para que en caso de caída de alguno de estos elementos, ya sea debido a un fallo del hipervisor que los aloja o por el propio fallo del Virtual Appliance, un usuario o administrador no pierda acceso al sistema. UDS Enterprise se puede configurar en HA utilizando cualquier balanceador de carga que soporte los modos TCP y HTTP/HTTPS. En el presente documento mostramos un ejemplo de configuración de UDS Enterprise usando el software HAProxy.
Elementos necesarios Para el correcto despliegue de UDS Enterprise en alta disponibilidad serán necesarios los siguientes elementos:
Servidor HAProxy
Servidor encargado de proporcionar acceso a los usuarios de UDS Enterprise a varios servidores UDS. El acceso se realizará en modo activo – activo. En este ejemplo se configura un único servidor HAProxy en modo standalone, pero para despliegues en producción se recomienda disponer de varios servidores HAProxy. Servidor MySQL
Servidor de base de datos donde el servidor UDS guardará todos sus registros. En este ejemplo se configura un único servidor MySQL, pero para despliegues en producción se recomienda disponer de varios servidores MySQL en cluster. Servidor UDS (broker)
Elemento principal del software UDS Enterprise. Soporta configuración en HA a partir de la versión 1.9.1. Se necesitará desplegar al menos dos servidores UDS. Servidor UDS Tunel
Elemento que proporciona el acceso a usuarios desde una WAN a escritorios y aplicaciones virtuales y acceso HTML5 a escritorios virtuales. Se necesitará desplegar al menos dos servidores UDS Tunel.
Universal Desktop Services White Paper Versiones Software UDS
Página 2 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Requerimientos En este ejemplo de configuración de UDS Enterprise en HA se han utilizado los siguientes recursos:
HAProxy:
o S.O. y recursos: Servidor Linux Debian 8.4.0 x64 con 1 GB de RAM, 15 GB de disco, 1 NIC
o Datos IP: 1 dirección IP, máscara de red, Gateway y DNS o Acceso a internet o Certificado: Es necesario disponer (o generar) un certificado válido para
las conexiones SSL en formato PEM
MySQL:
o Virtual Appliance UDS_MySQL (proporcionado por VirtualCable): 1 GB de vRAM, 8 GB de disco, 1 vNIC
o Datos IP: 1 dirección IP, máscara de red, Gateway y DNS o Datos BBDD: Instancia, usuario y contraseña (por defecto, instancia:
uds, usuario: uds, password: uds)
Servidor UDS (broker):
o Virtual Appliance UDS_Server (proporcionado por VirtualCable): 1 GB de vRAM, 5 GB de disco, 1 vNIC
o Datos IP: 1 dirección IP, máscara de red, Gateway y DNS o Número de serie válido para versión Enterprise o Datos de conexión con la BBDD MySQL: dirección IP, instancia, usuario
y password
Servidor UDS Tunnel:
o Virtual Appliance UDS_Tunel (proporcionado por VirtualCable): 1 GB de vRAM, 5 GB de disco, 1 vNIC
o Datos IP: 1 dirección IP, máscara de red, Gateway y DNS o Dirección IP de servidor HAProxy
Página 3 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Configuración
1. HAProxy Se instala un servidor Linux Debian 8.4.0 x64 con la siguiente configuración:
Nombre de máquina: HAProxy Dirección IP: 192.168.11.100 Recursos: 1 vCPU, 1 GB de RAM, 15 GB de disco y 1 vNIC (con acceso a
internet) Paso 1 Antes de instalar HAProxy es necesario disponer de un certificado (en formato .PEM) para las conexiones SSL. Si no se dispone de uno, se puede autogenerar de la siguiente manera:
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /root/ssl.key -out /root/ssl.crt
Se solicitarán una serie de datos para completar el certificado:
Página 4 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Una vez generado, hay que crear el fichero .pem
cat /root/ssl.crt /root/ssl.key > /etc/ssl/private/haproxy.pem
Paso 2 Instalamos el software HAProxy:
apt-get install haproxy
Página 5 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Paso 3 Editamos el fichero de configuración de HAProxy: /etc/haproxy/haproxy.cfg Añadimos las reglas de redirección al final del fichero:
Página 6 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Ejemplo de contenido de fichero haproxy.cfg: global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s maxconn 2000 user haproxy group haproxy daemon # Default SSL material locations ca-base /etc/ssl/certs crt-base /etc/ssl/private # Default ciphers to use on SSL-enabled listening sockets. # For more information, see ciphers(1SSL). This list is from: # https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/ ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+A$ ssl-default-bind-options no-sslv3 defaults log global mode http option httplog option dontlognull option forwardfor retries 3 option redispatch stats enable stats uri /haproxyStats stats realm Strictly\ Private stats auth admin:temporal stats auth user:temporal timeout connect 5000 timeout client 50000 timeout server 50000 errorfile 400 /etc/haproxy/errors/400.http errorfile 403 /etc/haproxy/errors/403.http errorfile 408 /etc/haproxy/errors/408.http errorfile 500 /etc/haproxy/errors/500.http errorfile 502 /etc/haproxy/errors/502.http errorfile 503 /etc/haproxy/errors/503.http errorfile 504 /etc/haproxy/errors/504.http
frontend http-in bind *:80 mode http reqadd X-Forwarded-Proto:\ http default_backend uds-backend frontend https-in bind *:443 ssl crt /etc/ssl/private/haproxy.pem mode http reqadd X-Forwarded-Proto:\ https default_backend uds-backend frontend tunnel-in bind *:1443 mode tcp option tcplog default_backend tunnel-backend-ssl frontend tunnel-in-guacamole # HTML5 bind *:10443 mode tcp
Página 7 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
option tcplog default_backend tunnel-backend-guacamole backend uds-backend # redirect scheme https if !{ ssl_fc } #redirect http to https # balance source option httpclose server uds1 192.168.11.102:80 check server uds2 192.168.11.103:80 check backend tunnel-backend-ssl mode tcp option tcplog balance source server udsts1 192.168.11.104:443 check server udsts2 192.168.11.105:443 check backend tunnel-backend-guacamole mode tcp option tcplog balance source server udstg1 192.168.11.104:10443 check server udstg2 192.168.11.105:10443 check
Paso 4 Reiniciamos servicio haproxy y comprobamos que está en ejecución:
service haproxy restart service haproxy status
Es importante confirmar que el servicio inicia automáticamente con el servidor.
Página 8 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
2. MySQL Instalación del Virtual Appliance MySQL proporcionado por VirtualCable con la siguiente configuración:
Nombre de máquina: mysql Dirección IP: 192.168.11.101 Recursos: 1 vCPU, 1 GB de RAM, 8 GB de disco y 1 vNIC
Paso 1 Configuración IP estática:
Paso 2 Comprobar conectividad con servidor UDS_Server:
Página 9 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
3. UDS Server (Broker) Instalación de dos Virtual Appliance UDS Server (broker) proporcionados por VirtualCable con la siguiente configuración:
Nombre de las máquinas: UDSServer01 y UDSServer02 Dirección IP: 192.168.11.102 (UDSServer01) y 192.168.11.103
(UDSServer02) Recursos: 2 vCPU, 1 GB de RAM, 5 GB de disco y 1 vNIC (cada Virtual
Apliance UDS Server)
Paso 1 Indicar número de serie de UDS Enterprise válido:
Paso 2 Introducimos los datos de configuración de Virtual Appliance:
Página 10 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Paso 3 Configuramos los datos de acceso a la BBDD MySQL:
Paso 4 Completamos los datos de acceso del usuario administrador de la plataforma UDS y la password del usuario root del Virtual Appliance UDS Server:
Página 11 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Paso 5 Comprobamos todos los datos y finalizamos la configuración del Virtual Appliance:
Deberemos repetir todos estos pasos con el segundo servidor UDS Server (UDSServer02) modificando únicamente su dirección IP.
Página 12 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
4. UDS Tunel Instalación de dos Virtual Appliance UDS Tunel proporcionados por VirtualCable con la siguiente configuración:
Nombre de las máquinas: UDSTunel01 y UDSTunel02 Dirección IP: 192.168.11.104 (UDSTunel01) y 192.168.11.105
(UDSTunel02) Recursos: 2 vCPU, 1 GB de RAM, 5 GB de disco y 1 vNIC (cada Virtual
Apliance UDS Tunel) Paso 1 Introducimos los datos de configuración de Virtual Appliance:
Paso 2 Indicamos la dirección del UDS Server, que en una configuración de alta disponibilidad será la dirección del servidor HAProxy:
Página 13 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Paso 3 Definimos la password del usuario root del Virtual Appliance UDS Tunel:
Paso 4 Comprobamos todos los datos y finalizamos la configuración del Virtual Appliance:
Todos estos pasos deberemos repetirlos con el segundo servidor UDS Tunel (UDSTunel02) modificando únicamente su dirección IP.
Página 14 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Acceso web UDS Enterprise Una vez configurados todos los elementos, podremos realizar el acceso a la ventana de login de UDS Enterprise mediante la dirección IP del servidor HAProxy:
El acceso de los usuarios será automáticamente balanceado a través de los dos servidores UDS y en caso de caída de uno de ellos todas las peticiones serán redirigidas al servidor activo. Cuando un usuario acceda a un escritorio o aplicación virtual a través del componente UDS Tunel, las conexiones serán repartidas entre los dos servidores y en caso de caída del servidor activo por el que esté conectado un usuario, la conexión se cortará, pero al realizar de nuevo el acceso al servicio será conectado a través de otro servidor túnel activo.
Página 15 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Parámetros avanzados UDS Enterprise Cuando configuramos UDS Enterprise para que el acceso se realice a través de un balanceador de carga, el sistema detectará la dirección IP del cliente de conexión como la dirección IP del balanceador:
Esto nos puede generar problemas a la hora de utilizar un autenticador IP o en la detección de red en configuraciones de transportes con filtros de red. Para solucionar este inconveniente, deberemos indicar al sistema que los servidores UDS se encuentran detrás de un proxy habilitando la opción “Behind a proxy” ubicada en la sección: Tools - Configuration - Security
Página 16 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Una vez habilitada esta opción, podemos comprobar que la detección IP del cliente de conexión se vuelve a realizar de forma correcta:
Página 17 de 17
UDS Enterprise Configurar UDS Enterprise en alta disponibilidad
www.udsenterprise.com
Soporte y servicios profesionales VirtualCable comercializa UDS Enterprise mediante un modelo de suscripción, incluyendo soporte y actualizaciones, según el número de usuarios. Además, VirtualCable ofrece servicios profesionales para instalar y configurar UDS Enterprise y otras tecnologías de virtualización. Para más información, visite www.udsenterprise.com o envíenos un email a [email protected]