Termidesk en Habra

Parte 1. Conociendo la arquitectura y el propósito

El producto de software Termidesk, del desarrollador ruso LLC "Uveon — Tecnologías en la Nube" (parte del "Grupo Astra"), está diseñado para crear infraestructuras de escritorios virtuales (VDI). Para acelerar su desarrollo y garantizar un alto nivel de servicio para los clientes, el Grupo "Astra" tiene planeado para los próximos años multiplicar por diez la plantilla de especialistas del perfil, y por ello realizamos a diario entrevistas para candidatos a puestos técnicos de todos los niveles.

Una característica interesante, pero bastante explicable, se reveló en la etapa de su familiarización con la estructura de la infraestructura de escritorios virtuales. Muchas especialistas, teniendo un amplio conocimiento y experiencia en tecnologías, protocolos y soluciones relacionadas con LDAP, FreeIPA, MS AD, Docker, vSphere, libvirt/KVM, oVirt, OpenNebula, OpenStack, SPICE, RDP y VNC, a menudo no tienen una idea completamente clara de los principios de construcción y las diferencias clave entre las plataformas de virtualización de servidores y una infraestructura VDI completa.

Uno de los factores de por qué sucede esto se puede ilustrar con el ejemplo del desarrollo de las propias plataformas de virtualización de servidores. Los administradores de sistemas no aceptaron de inmediato la idea de poner todos los huevos servicios en la misma cesta, pero a medida que las tecnologías avanzaban y se aplicaban medios de copia de seguridad, estas soluciones comenzaron a encontrar una aplicación cada vez más amplia.

Actualmente, probablemente ya no se encuentren ejemplos en los que una nueva infraestructura de TI se base completamente en el enfoque "1 servidor — 1 servicio", y el uso de la virtualización se convierte, de facto, en un enfoque inseparable en la construcción de infraestructuras de información y comunicación a escala empresarial.

Estamos seguros de que algo similar ocurrirá con la tecnología VDI debido a su facilidad de uso y su amplia gama de ventajas. En el siguiente ejemplo podemos ver cómo los pantalones se convierten en un usuario puede acceder fácilmente a un escritorio con un conjunto de software preinstalado desde cualquier dispositivo y desde cualquier lugar.

¿Cómo, conociendo y comprendiendo el propósito de los "ladrillos" constituyentes, se puede entender la imagen completa? Quizás sería conveniente ir de lo particular a lo general, pero para facilitar la comprensión, probemos a la inversa y mediante una comparación:

Comparación de los principios de construcción de VDI en el ejemplo de la solución de VMware y Termidesk
Comparación de los principios de construcción de VDI en el ejemplo de la solución de VMware y Termidesk

En la imagen se aprecia un enfoque multicapa idéntico para la construcción de una infraestructura de escritorios virtuales. Pero, ¿por qué VDI no es un producto monolítico en forma de archivo EXE/MSI?

La respuesta a esta pregunta se encuentra en la recomendación de la Unión Internacional de Telecomunicaciones en forma de descripción de la arquitectura funcional del modelo DaaS (Desktop as a Service): el escritorio como servicio.

También será oportuno dar una breve diferencia fundamental entre los enfoques:

  • DaaS es un servicio que proporciona acceso remoto a escritorios y aplicaciones virtualizados;

  • VDI es un producto que se despliega en un centro de procesamiento de datos local y, al igual que DaaS, proporciona acceso remoto a escritorios y aplicaciones virtualizados.

En la recomendación se destacan una serie de componentes fundamentales de los sistemas VDI/DaaS, que encuentran aplicación en la construcción de infraestructuras de escritorios basadas en Termidesk.

Gestor de conexiones

La tarea principal del gestor es proporcionar al usuario autorizado su escritorio virtual (PTV). Para ello, se implementan las siguientes funciones:

  • interacción con el proveedor de servicios (plataforma de virtualización) donde se aloja el PTV;

  • interacción con el sistema de identificación local o con servicios de directorio centralizados para los procedimientos de autenticación y autorización de usuarios;

  • configuración del sistema operativo invitado del PTV según los parámetros establecidos: cambio de nombre de host, integración en la infraestructura de dominio;

  • mantenimiento del ciclo de vida del PTV.

El gestor forma los fondos de PTV en los siguientes modos:

  • escritorios individuales: se crea una máquina virtual separada para el usuario que contiene el conjunto necesario de software aplicativo. El estado del PTV se conserva cuando el usuario cierra la sesión;

  • escritorios colectivos: basándose en una plantilla de PTV, se crea un conjunto de máquinas virtuales con el software aplicativo necesario para varios usuarios. Los datos del usuario no se guardan en el PTV, y este se elimina después de que el usuario cierra la sesión. El PTV se asigna al primer usuario que se conecta.

La gestión y configuración del gestor se realizan a través de la interfaz gráfica de administración y la línea de comandos.

Pasarela de conexiones

La pasarela garantiza el aislamiento de la infraestructura de PTV del mundo exterior mediante el uso de una única dirección IPv4 y un único puerto TCP, y puede instalarse junto con el gestor o por separado con fines de escalado.

Lugar de la pasarela en relación con otros componentes de la solución
Lugar de la pasarela en relación con otros componentes de la solución

Agente del sistema operativo invitado

Este componente se instala en el sistema operativo invitado y, intercambiando datos con el gestor de conexiones, permite gestionar de forma flexible los escritorios virtuales, manteniendo una comunicación bidireccional.

Propósito esquemático del agente del sistema operativo invitado
Propósito esquemático del agente del sistema operativo invitado

Cliente de conexiones

Este programa se instala en el ordenador del usuario, que puede ser un cliente cero, ligero o pesado bajo diversos sistemas operativos. El programa realiza las tareas de conexión al gestor de conexiones y de lanzamiento de la aplicación para el protocolo de entrega seleccionado.

Interacción esquemática del cliente y otras partes de la solución VDI
Interacción esquemática del cliente y otras partes de la solución VDI

En este sentido, cualquier producto VDI o servicio DaaS se presenta como una solución compleja, donde cada componente desempeña un papel esencial. Para mayor claridad, mostramos la siguiente imagen que describe de forma más visual las interrelaciones del gestor de conexiones, los protocolos de entrega y el soporte de interacción mediante el cliente de conexiones y el agente del sistema operativo invitado.

Arquitectura de construcción de VDI en el ejemplo de Termidesk
Arquitectura de construcción de VDI en el ejemplo de Termidesk

Sobre los principales logros de los desarrollos, las características de su implementación técnica, planeamos informar a la comunidad en los próximos ciclos de artículos en el marco de la ejecución de nuestra hoja de ruta de desarrollo de Termidesk, cuyas versiones se publican trimestralmente, con el lanzamiento de una versión mayor al final del año calendario.

Entre los principales desarrollos de este año se pueden destacar los siguientes componentes y funcionalidades:

  • Termidesk Viewer: componente ya creado para reemplazar el módulo Remote Viewer. La implementación de este componente permite optimizar tanto el ancho de banda como la calidad de percepción de los usuarios al trabajar con soluciones de videoconferencia;

  • streamer de aplicaciones: componente que permitirá implementar la entrega de aplicaciones individuales (Linux/Windows) y el montaje de aplicaciones individuales en el sistema operativo invitado;

  • gestor de perfiles de usuario: componente que permite separar explícitamente los datos de usuario de la imagen de la propia máquina virtual.

En el siguiente ejemplo, utilizamos la conexión a un PTV mediante el cliente de conexiones con el componente Termidesk Viewer, donde se puede observar la optimización del ancho de banda al redirigir una cámara de video:

  • trabajo optimizado en VCS para Termidesk Viewer (en el ejemplo, alrededor de 1,5 Mbit/s);

  • redirección de la cámara como dispositivo RAW en el PTV, utilizado por defecto para Remote (Virt) Viewer (en el ejemplo, alrededor de 31,5 Mbit/s).

El monitoreo de la actividad de red en tiempo real del tráfico saliente (desde el dispositivo de conexión) para la cámara de video en el PTV se realiza y se muestra en la parte inferior de la pantalla mediante el comando iftop.

Las características de funcionamiento de la infraestructura de virtualización de servidores en este caso pueden diferir fundamentalmente según la solución elegida. El propio gestor de conexiones de puestos de trabajo virtuales Termidesk puede interactuar con una amplia gama de soluciones, incluyendo PK SV "Brest", zVirt, VMware, Aerodisk vAir, oVirt, Openstack, y otras plataformas en la nube que ofrecen a los usuarios el servicio DaaS.

Con esto concluye el breve repaso a las soluciones VDI/DaaS en el ejemplo de Termidesk. En los próximos artículos comenzaremos a desvelar las características de las capacidades funcionales de nuestro producto. ¡Hasta pronto!

Y sí, a menudo utilizamos nuestros propios productos tanto en el trabajo como en las entrevistas. Por lo tanto, si alguien está interesado en esta área de desarrollo, estaremos encantados de conocerte. Escríbenos a info@uveon.ru y sigue las vacantes del Grupo Astra en el servicio HH o en Habr.Carrera.

06.09.2022