Consideraciones de escalabilidad
La instalación y ejecución de Session Recording requiere pocos recursos adicionales más allá de lo necesario para ejecutar Citrix Virtual Apps and Desktops. Sin embargo, si planea usar Session Recording para grabar muchas sesiones o si las sesiones que planea grabar pueden dar como resultado archivos de sesión grandes (por ejemplo, aplicaciones con gráficos intensivos), considere el rendimiento de su sistema al planificar su implementación de Session Recording.
Para obtener más información sobre cómo crear un sistema de Session Recording altamente escalable, consulte el artículo de Citrix CTX200869.
Recomendaciones de hardware
Considere la cantidad de datos que enviará a cada Session Recording Server y la rapidez con la que los servidores pueden procesar y almacenar estos datos. La velocidad a la que su sistema puede almacenar los datos entrantes debe ser superior a la velocidad de entrada de datos.
Para estimar la velocidad de entrada de datos, multiplique el número de sesiones grabadas por el tamaño promedio de cada sesión grabada y divida por el tiempo durante el cual está grabando sesiones. Por ejemplo, podría grabar 5000 sesiones de Microsoft Outlook de 20 MB cada una durante una jornada laboral de 8 horas. En este caso, la velocidad de entrada de datos es de aproximadamente 28 Mbps (5000 sesiones multiplicadas por 20 MB, divididas por 8 horas, divididas por 3600 segundos por hora y multiplicadas por 8 para la conversión a Mbps).
Puede mejorar el rendimiento optimizando el rendimiento de un único Session Recording Server o instalando varios Session Recording Servers en diferentes máquinas.
Hardware de disco y almacenamiento
El hardware de disco y almacenamiento son los factores más importantes a considerar al planificar una implementación de Session Recording. El rendimiento de escritura de su solución de almacenamiento es especialmente importante. Cuanto más rápido se puedan escribir los datos en el disco, mayor será el rendimiento general del sistema.
Las soluciones de almacenamiento adecuadas para usar con Session Recording incluyen un conjunto de discos locales controlados como matrices RAID por un controlador de disco local o por una SAN conectada.
Nota:
El almacenamiento de datos en un NAS, basado en protocolos de archivos como SMB y NFS, podría tener implicaciones de rendimiento y seguridad. Utilice la versión más reciente del protocolo para evitar implicaciones de seguridad y realice pruebas de escalabilidad para garantizar un rendimiento adecuado.
Para una configuración de unidad local, un controlador de disco con memoria caché incorporada mejora el rendimiento. Un controlador de disco con caché debe tener una batería de respaldo para garantizar la integridad de los datos en caso de un corte de energía.
Capacidad de red
Un enlace de red de 100 Mbps es adecuado para conectar un Session Recording Server. Una conexión Gb Ethernet podría mejorar el rendimiento, pero no resulta en un rendimiento 10 veces mayor que un enlace de 100 Mbps.
Asegúrese de que los conmutadores de red utilizados por la Grabación de sesiones no se compartan con aplicaciones de terceros que puedan competir por el ancho de banda de red disponible. Idealmente, los conmutadores de red deben dedicarse al uso con el Servidor de grabación de sesiones.
Capacidad de procesamiento del equipo
Tenga en cuenta las siguientes especificaciones para el equipo en el que está instalado un Servidor de grabación de sesiones:
- Se recomienda una CPU doble o una CPU de doble núcleo
- Se recomiendan 4 GB de RAM
Superar estas especificaciones no mejora significativamente el rendimiento.
Implementar varios Servidores de grabación de sesiones
Si un único Servidor de grabación de sesiones no satisface sus necesidades de rendimiento, puede instalar más Servidores de grabación de sesiones en diferentes máquinas para que los Servidores de grabación de sesiones funcionen como un grupo de equilibrio de carga. En este tipo de implementación, los Servidores de grabación de sesiones comparten el almacenamiento y la base de datos. Para distribuir la carga, dirija los Agentes de grabación de sesiones al equilibrador de carga que es responsable de la distribución de la carga de trabajo.
Escalabilidad de la base de datos
La Base de datos de grabación de sesiones requiere Microsoft SQL Server 2019, Microsoft SQL Server 2017, Microsoft SQL Server 2016, Microsoft SQL Server 2014, Microsoft SQL Server 2012 o Microsoft SQL Server 2008 R2. El volumen de datos enviados a la base de datos es pequeño porque la base de datos solo almacena metadatos sobre las sesiones grabadas. Los archivos de las sesiones grabadas se escriben en un disco independiente. Normalmente, cada sesión grabada requiere solo aproximadamente 1 KB de espacio en la base de datos, a menos que se utilice la API de eventos de grabación de sesiones para insertar eventos buscables en la sesión.
Las ediciones Express de Microsoft SQL Server de 2019, 2017, 2016, 2014, 2012 y 2008 R2 imponen una limitación de tamaño de base de datos de 10 GB. Con 1 KB por sesión de grabación, la base de datos puede catalogar aproximadamente 4.000.000 de sesiones. Otras ediciones de Microsoft SQL Server no tienen restricciones de tamaño de base de datos y solo están limitadas por el espacio en disco disponible. A medida que aumenta el número de sesiones en la base de datos, el rendimiento de la base de datos y la velocidad de las búsquedas disminuyen solo de forma insignificante.
Si no realiza personalizaciones a través de la API de eventos de grabación de sesiones, cada sesión grabada genera cuatro transacciones de base de datos: dos cuando comienza la grabación, una cuando el usuario inicia sesión en la sesión que se está grabando y una cuando finaliza la grabación. Si utiliza la API de eventos de grabación de sesiones para personalizar sesiones, cada evento buscable grabado genera una transacción. Dado que incluso la implementación de base de datos más básica puede manejar cientos de transacciones por segundo, es poco probable que la carga de procesamiento de la base de datos se vea afectada. El impacto es lo suficientemente ligero como para que la Base de datos de grabación de sesiones pueda ejecutarse en el mismo SQL Server que otras bases de datos, incluida la base de datos de almacenamiento de datos de Citrix Virtual Apps™ y Desktops.
Si su implementación de Grabación de sesiones requiere que se cataloguen muchos millones de sesiones grabadas en la base de datos, siga las directrices de Microsoft para la escalabilidad de SQL Server.