Actualización automática de Linux VDA a través de Azure
Esta función te ayuda a actualizar automáticamente tu software Linux VDA —de forma inmediata o en un momento programado. Es beneficiosa cuando creas VDA de Linux en Citrix DaaS Standard para Azure (anteriormente Citrix Virtual Apps and Desktops Standard para Azure). No necesitas privilegios de administrador de las máquinas virtuales en Azure. Para obtener más información, consulta Crear VDA de Linux en Citrix DaaS Standard para Azure.
Configuración
Para usar esta función, completa los siguientes pasos:
Paso 1: Cargar la información de actualización y los nuevos paquetes VDA en tu contenedor de Azure
Paso 1a: Crea un contenedor en tu cuenta de almacenamiento de Azure y establece el nivel de acceso de tu contenedor en Blob (acceso de lectura anónimo solo para blobs).
Nota:
Los contenedores y blobs de Azure son propiedad exclusiva de los clientes y son administrados por ellos. Citrix® no se hace responsable de ningún problema de seguridad relacionado con ellos. Para garantizar la seguridad de los datos y la eficiencia de los costes, establece el nivel de acceso de tu contenedor en Privado (sin acceso anónimo) después de cada actualización automática.
Paso 1b: Incorpora la información de actualización de tu VDA en un archivo JSON llamado UpdateInfo.json. Para ver un ejemplo del formato de archivo, consulta el siguiente bloque:
{
"Version": "21.04.200.4",
"Distributions":[
{
"TargetOS": "RHEL7_9",
"PackageName": "",
"PackageHash": ""
},
{
"TargetOS": "UBUNTU18_04",
"PackageName": "xendesktopvda_21.04.200.4-1.ubuntu18.04_amd64.deb",
"PackageHash": "4148cc3f25d3717e3cbc19bd953b42c72bd38ee3fcd7f7034c2cd6f2b15b3c5a"
},
{
- "TargetOS": "UBUNTU20_04",
- "PackageName": "",
- "PackageHash": ""
}
]
}
<!--NeedCopy-->
Donde, “Version” indica la nueva versión de VDA y “Distributions” es una matriz de objetos de actualización. Cada objeto contiene tres elementos:
-
“TargetOS”: debe ser “RHEL7_9” (para RHEL 7, CentOS 7 y Amazon Linux 2), “UBUNTU18_04” o “UBUNTU20_04”. El
ctxmonitorserviceno reconoce ninguna otra distribución. - “PackageName”: Nombre completo del paquete VDA de la versión especificada.
-
“PackageHash”: Valor SHA-256 que calculas usando el comando
shasum -a 256 <pkgname>.
Paso 1c: Carga el archivo JSON y la nueva versión de los paquetes Linux VDA en tu contenedor de Azure.
Paso 2: Habilitar la función de actualización automática en la imagen maestra o en cada VDA
De forma predeterminada, la actualización automática está deshabilitada. Si creas VDA de Linux en Citrix DaaS Standard para Azure, la habilitación de la función debe realizarse en la imagen maestra. De lo contrario, habilita la función directamente en cada VDA de destino.
Para habilitar la actualización automática, ejecuta comandos similares a los siguientes para modificar la clave de registro en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\SelfUpdate.
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_DWORD" -v "fEnabled" -d "0x00000001" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "ScheduledTime" -d "Immediately" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "Url" -d "<Your-Azure-Container-Url>" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "CaCertificate" -d "<Local-Certificate-Path-of-PortalAzureCom>" --force
<!--NeedCopy-->
La siguiente tabla describe la configuración del registro.
| Configuración del registro | Descripción |
|---|---|
| fEnabled | Esta configuración es obligatoria. De forma predeterminada, el valor es 0, lo que significa que la actualización automática está deshabilitada. Puedes establecerlo en 1 para habilitar la actualización automática. |
| Url | Esta configuración es obligatoria. Establece la URL de tu contenedor de Azure para obtener la información de actualización y los nuevos paquetes VDA. |
| ScheduledTime | Esta configuración es obligatoria. Puedes establecerla en Inmediatamente o Siguiente inicio. Inmediatamente significa ejecutar una actualización inmediatamente después de descargar los paquetes VDA. Esta opción es adecuada cuando la velocidad de descarga es alta y tu actualización es urgente. Sin embargo, puede interrumpir la experiencia del usuario si hay sesiones activas al descargar el paquete. Siguiente inicio significa ejecutar una actualización al siguiente inicio del ctxmonitorservice. Esta opción es adecuada cuando la velocidad de descarga no es alta y tu actualización no es urgente. |
| CaCertificate | Esta configuración es opcional. Establece la ruta completa de un certificado PEM para verificar la URL de tu contenedor de Azure. Para los blobs de Azure, puede ser el certificado de portal.azure.com que se recupera del navegador y luego se convierte a PEM. Por seguridad, te recomendamos que agregues esta configuración de registro, pero solo es compatible con Ubuntu. En RHEL, faltan algunas bibliotecas NSS para el comando curl. Asegúrate de establecer los privilegios mínimos del certificado. |
Cuando el ctxmonitorservice se reinicia, primero consulta la Url para obtener el archivo UpdateInfo.json y recupera la versión de actualización del archivo JSON. Luego, el ctxmonitorservice compara la versión de actualización con la versión actual. Si la versión actual es anterior, el servicio descarga la nueva versión del paquete VDA de Azure y la guarda localmente. Después de eso, ejecuta una actualización según la configuración de ScheduledTime. Para una implementación local, puedes reiniciar el ctxmonitorservice directamente para activar la actualización. Sin embargo, en Citrix DaaS Standard para Azure, donde no tienes privilegios de administrador para las máquinas virtuales, el ctxmonitorservice solo se puede reiniciar después de que se reinicie la máquina VDA. Si una actualización falla, tu VDA se revierte a la versión existente.
Nota:
- La configuración del registro que configuraste en la imagen maestra no se puede cambiar.
- Si todas las máquinas virtuales de un entorno descargan un paquete al mismo tiempo, la red local puede congestionarse.
- Los datos del usuario se pierden si fallan tanto una actualización como una reversión.
- Si una actualización falla, pero la reversión tiene éxito, los usuarios de la misma red podrían tener diferentes versiones del Linux VDA. Este caso es subóptimo.
- Una actualización suele tardar varios minutos en completarse. No hay ningún indicador de estado en Citrix Studio.