Crear o clonar una capa de aplicación
Una capa de aplicación es un disco virtual que incluye una o varias aplicaciones. Normalmente, una capa de aplicación incluye una sola aplicación. Si incluyes más de una aplicación en una capa, limítala a elementos que normalmente actualices al mismo tiempo.
Crear una capa de aplicación desde cero
Esta sección te guía a través de la creación de capas de aplicación, incluyendo:
- Requisitos y consideraciones
- Iniciar una nueva capa de aplicación
- Implementar la máquina de empaquetado
- Instalar la aplicación
- Mensajes de integridad de la capa que podrías ver
- Verificar la capa y apagar la máquina
- Agilizar las operaciones de Microsoft
Ngen.exe, si es necesario - Finalizar la capa
Requisitos y consideraciones
Una capa de aplicación incluye una o varias aplicaciones y configuraciones relacionadas. Instala siempre MS Office en una capa de aplicación, y nunca en la capa de SO.
- Aplicaciones antivirus: Coloca siempre tu aplicación antivirus en una capa de aplicación siguiendo las instrucciones proporcionadas aquí. Sé estratégico con las actualizaciones de tus archivos de definición de virus. Además, ten en cuenta las funciones de marcado de archivos, por ejemplo, la herramienta Virtual Image Exception de Symantec. Considera los motores de escaneo basados en host y ten en cuenta el retraso en el inicio de sesión del usuario. Asegúrate de escanear la imagen en capas publicada, no la capa. El escaneo solo se realiza al acceder el usuario en Citrix Virtual Apps y Citrix Virtual Desktops.
- MS Office: Usa esta receta para instalar Office. Para implementaciones VDI de Office 2010 y posteriores, considera KMS como un requisito. Para Office 2007 y anteriores, considera las licencias por volumen como un requisito. El uso de otras estructuras de licencias no es tan conveniente, ya que requieren que cada licencia se active en cada escritorio. Para conservar la configuración y los datos del usuario, habilita los archivos .OST y de transmisión de la capa de usuario de Office 365. Los índices de búsqueda no se almacenan.
- Recetas para crear capas de ciertas aplicaciones: Prácticamente cualquier aplicación puede tener capas, pero algunas son más fáciles de crear si empiezas con los consejos que hemos reunido en nuestro foro de Recetas de App Layering. Antes de empezar, consulta el foro para obtener consejos y procedimientos sobre las aplicaciones específicas que estás creando en capas.
- Aplicaciones que requieren que agregues un usuario o administrador local. Un usuario o administrador local que agregues o cambies mientras instalas una aplicación en una capa de aplicación no persiste. La capa de SO conserva cualquier usuario o grupo local que agregues, pero tus capas de aplicación no. Agrega el usuario o administrador local a la capa de SO antes de instalar la aplicación o considera instalar la aplicación en la capa de SO.
Iniciar una nueva capa de aplicación
Para crear una máquina de empaquetado donde puedas instalar la aplicación:
- Inicia sesión en la consola de administración y selecciona Layers > App Layers.
- Haz clic en Create Layer en la barra de Action.
- Introduce un Layer Name y una Version, ambos valores obligatorios. También puedes introducir otros valores.
- En la ficha OS Layer, selecciona la capa de SO que quieres asociar a esta capa de aplicación.
- (Opcional) La ficha Prerequisite layers te da la opción de especificar otras capas de aplicación que deben estar presentes al instalar las aplicaciones en esta capa. Usa esto solo cuando las aplicaciones requeridas no puedan incluirse en la misma capa. Para obtener más información sobre esta función avanzada, consulta las capas de requisitos previos en las siguientes secciones. Nota: Al agregar una nueva versión a una capa de aplicación existente, debes especificar las capas de requisitos previos que necesitas. No se transfieren de una versión a otra.
- En la ficha Connector, elige una configuración de conector que incluya las credenciales para la plataforma donde planeas construir la capa y la ubicación de almacenamiento. Si la configuración que necesitas no aparece en la lista, haz clic en New para agregar una.
- En la ficha Packaging Disk, escribe un file name para el disco de empaquetado y elige el formato del disco. Este disco se usa para la máquina de empaquetado, la máquina virtual donde instalas la aplicación.
- En la ficha Icon Assignment, elige un icono para asignar a la capa. Este icono representa la capa en el módulo Layers.
- Para usar una imagen existente, selecciona una imagen en el cuadro de diálogo de imagen.
- Para importar una nueva imagen, haz clic en Browse y selecciona una imagen en formato PNG o JPG.
- Si estás usando un conector con Composición Descargada seleccionada, y eliges uno de los iconos que vienen con App Layering, la máquina de empaquetado intentará asignar un icono basado en el contenido de la capa cuando esta se finalice.
- En la ficha Confirm and Complete, revisa los detalles de la capa de aplicación y luego haz clic en Create Layer. Puedes escribir un comentario opcional antes de crear la capa. Tus comentarios aparecen en el historial de auditoría de la vista Information. Después de crear el disco de empaquetado, la barra Tasks muestra un enlace al disco de empaquetado en tu hipervisor donde puedes implementar la máquina de empaquetado.
- Selecciona la página Tasks y haz clic en la tarea Packaging Disk. Haz clic en el icono de información para mostrar la descripción completa de la tarea, incluyendo un enlace a la ubicación donde se publica la máquina de empaquetado para esta capa.
A continuación, puedes implementar la máquina de empaquetado para tu capa.
Implementar la máquina de empaquetado
Selecciona tu hipervisor:
- XenServer®, Hyper-V, Nutanix o vSphere
- Azure
- Otro hipervisor (recurso compartido de red)
- Google Cloud Platform (GCP)
XenServer, Hyper-V, Nutanix, vSphere
- Inicia sesión en tu cliente de hipervisor (XenServer, Hyper-V Manager, Nutanix Prism o vSphere).
- Inicia sesión en la consola de administración de App Layering y selecciona la página Tasks para ver las tareas actuales.
- Selecciona la tarea Create App layer y haz clic en el icono de información para ver la descripción completa de la tarea.
- Usa la URL proporcionada en la descripción de la tarea para navegar a la máquina de empaquetado en tu cliente de hipervisor.
- La máquina de empaquetado está encendida.
Ahora puedes instalar las aplicaciones para esta capa en la máquina de empaquetado.
Azure
El dispositivo abre la plantilla de implementación personalizada de Azure, donde puedes crear la máquina de empaquetado.
- Inicia sesión en el portal de Azure (https://portal.azure.com). Nota: Debes iniciar sesión antes de intentar el siguiente paso.
- Ve a la consola de administración de App Layering y selecciona la página Tasks. Selecciona la tarea Create App layer y haz clic en el icono de información para ver los detalles.
- Usa el enlace en los detalles de la tarea para navegar a la máquina de empaquetado en Azure. Se abre el panel de implementación personalizada.
- Establece los parámetros de Azure.
- Packaging Machine Name: debe cumplir los requisitos de nombre de máquina virtual de Azure.
- Size: tamaño de la máquina virtual.
- Virtual Network y Subnet: para implementar la máquina de empaquetado. IMPORTANTE: Asegúrate de que el valor de la Resource group location coincida con la Storage account location que configuraste en la configuración del conector. Si estas ubicaciones no son las mismas, la máquina de empaquetado no se implementará. Si tu implementación falla, puedes pegar el enlace en el navegador de nuevo y empezar de nuevo.
- Una vez que tu máquina de empaquetado esté encendida, puedes instalar la aplicación que quieres incluir en la capa.
Otro hipervisor (a través del recurso compartido de red del dispositivo)
-
Localiza el disco de empaquetado en el siguiente directorio del recurso compartido de red: \Unidesk\Packaging Disks
-
Copia el disco de empaquetado a una ubicación separada en tu hipervisor. Esto permite espacio para los archivos generados por tu hipervisor cuando usas el disco para crear una nueva máquina virtual.
Importante: No copies el disco a la carpeta Finalize hasta que esté listo para finalizar. Un disco en la carpeta Finalize no se puede adjuntar a la nueva máquina virtual que vas a crear a continuación.
-
Crea una máquina virtual usando el disco de empaquetado como disco de arranque.
-
Enciende la máquina de empaquetado.
Una vez que tu máquina de empaquetado esté encendida, puedes instalar la aplicación que quieres incluir en la capa.
Instalar la aplicación
Al instalar tu aplicación en la máquina de empaquetado, deja la aplicación como quieres que los usuarios la vean cuando inicien sesión. El estado de la aplicación es lo que los usuarios experimentan cada vez que acceden a la aplicación.
- Inicia sesión de forma remota en la máquina de empaquetado con la cuenta de usuario utilizada para crear el sistema operativo.
- Instala la aplicación, junto con cualquier controlador, aplicación de nivel de arranque o archivo requerido para la aplicación.
- Si se requiere un reinicio del sistema, reinícialo manualmente. La máquina de empaquetado no se reinicia automáticamente. Si la aplicación que instalas afecta a los componentes de nivel de arranque, reinicia la máquina de empaquetado como parte de la finalización de la capa.
- Asegúrate de que la máquina de empaquetado esté en el estado que quieres que esté para el usuario:
- Si la aplicación requiere alguna configuración o registro posterior a la instalación, completa esos pasos ahora.
- Quita cualquier configuración, archivo, unidad asignada o aplicación que no quieras incluir en la máquina de empaquetado.
Verificar la capa y apagar la máquina
Una vez que la aplicación está instalada en la máquina de empaquetado, verifica que la capa esté lista para ser finalizada. Una capa está lista para ser finalizada cuando todo el procesamiento posterior a la instalación se ha completado.
Para verificar que todos los procesos pendientes se han completado, puedes ejecutar la herramienta Shutdown For Finalize en el escritorio de la máquina de empaquetado.
Para usar la herramienta Shutdown For Finalize:
- Si no has iniciado sesión en la máquina de empaquetado, inicia sesión de forma remota como el usuario que creó la máquina.
- Haz doble clic en el icono Shutdown For Finalize. Una ventana de línea de comandos muestra mensajes que detallan el proceso de verificación de la capa.
- Si hay una operación pendiente que debe completarse antes de que la capa pueda finalizarse, se te pedirá que completes el proceso. Si una operación de
Microsoft Ngen.exedebe completarse, podrías agilizar la operación deNgen.exe, como se detalla más adelante en este artículo. - Una vez que se completen las operaciones pendientes, haz doble clic en el icono Shutdown For Finalize de nuevo. Esto apaga la máquina de empaquetado y la capa está lista para finalizar.
Mensajes de integridad de la capa que podrías ver durante el proceso de finalización
Los siguientes mensajes de integridad de la capa te indican qué operaciones en cola deben completarse antes de que la capa esté lista para finalizar:
- Hay un script RunOnce pendiente: comprueba y reinicia la máquina de empaquetado.
- Hay un reinicio posterior a la instalación pendiente: comprueba y reinicia la máquina de empaquetado.
- Hay una operación de Microsoft Ngen.exe en curso en segundo plano.
- Hay una operación de instalación MSI en curso: comprueba la máquina de empaquetado.
- Hay un reinicio pendiente para actualizar los controladores en el disco de arranque: comprueba y reinicia la máquina de empaquetado.
- Se necesita una operación de Microsoft Ngen.exe.
- El Cliente de Software Center está configurado para ejecutarse, pero el archivo SMSCFG.INI sigue presente. Para obtener más información sobre la implementación de SCCM en una capa, consulta el artículo App Layering Recipe: How to deploy Microsoft SCCM in a layer.
Para obtener detalles sobre lo que significan los mensajes de integridad de la capa y cómo depurarlos, consulta Debugging Layer Integrity Problems in Citrix App Layering.
No puedes omitir los mensajes de integridad de la capa apagando la máquina, porque el software de App Layering se detiene y te devuelve a la máquina de empaquetado hasta que todos los procesos se hayan completado.
Si una operación de Microsoft Ngen.exe está en curso, podrías agilizarla, como se describe en la siguiente sección.
Agilizar las operaciones de Microsoft Ngen.exe, si es necesario
Una vez que se hayan instalado todas las actualizaciones de software, debes permitir que Ngen.exe recompile esencialmente el código de bytes de .NET en imágenes nativas y construya las entradas de registro para administrarlas.
Ngen.exe es el Generador de Imágenes Nativas de Microsoft, que forma parte del sistema .NET. Windows determina cuándo ejecutar Ngen.exe basándose en el software que se está instalando y lo que Windows detecta en la configuración.
Importante:
Cuando
Ngen.exese esté ejecutando, debes permitir que se complete. Una operación deNgen.exeinterrumpida puede dejarte con ensamblados .NET que no funcionan u otros problemas en el sistema .NET.
Normalmente, Ngen.exe es una operación en segundo plano que se pausa cuando hay una actividad en primer plano. Si quieres agilizar una operación de Ngen.exe, puedes llevar la tarea a primer plano para completarla lo más rápido posible.
Para llevar la tarea a primer plano:
- Abre un símbolo del sistema como Administrador.
-
Ve al directorio
Microsoft.NET\Frameworkpara la versión actualmente en uso:cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX <!--NeedCopy--> -
Introduce el siguiente comando
Ngen.exepara ejecutar todos los elementos en cola. Este comando procesa las instalaciones de componentes en cola antes de construir los ensamblados.ngen eqi 3 <!--NeedCopy-->La tarea
Ngen.exese mueve a primer plano en el símbolo del sistema y enumera los ensamblados que se están compilando. Está bien si ves mensajes de compilación.Puedes usar el Administrador de tareas para ver si una instancia de
MSCORSVW.EXEse está ejecutando. Si es así, permite que se complete o ejecutangen eqi 3.Precaución:
¡No reinicies para detener la tarea. Permite que la tarea se complete!
- Asegúrate de que todos los procesos de
Ngen.exese hayan completado. - Cuando se complete, apaga la máquina virtual usando el acceso directo Shutdown For Finalize disponible en tu escritorio.
Finalizar la capa
Una vez que el software se ha instalado y la máquina de empaquetado se ha verificado y apagado, estás listo para finalizar la capa.
Hyper-V:
Si la Composición Descargada está seleccionada en tu configuración de conector, la finalización ocurre automáticamente como parte del proceso de composición.
XenServer, Azure, Hyper-V, Nutanix AHV, VMware vSphere
Ahora que la capa ha sido verificada y apagada, está lista para finalizar.
Hyper-V:
Si estás usando un conector con la Composición Descargada seleccionada, este proceso de finalización está automatizado y no tienes que realizar estos pasos manuales.
- Vuelve a la consola de administración.
- Selecciona Layers > App layers y la capa que preparaste.
- Selecciona la versión de tu capa en la ficha Version Information y haz clic en Finalize en la barra de Action.
- Haz clic en Finalize para terminar de crear la capa.
- Supervisa la barra de tareas para verificar que la acción se ha completado correctamente.
Una vez que la capa se verifica, la máquina de empaquetado se elimina para minimizar el espacio de almacenamiento utilizado.
Otro hipervisor (recurso compartido de red)
Ahora que la capa ha sido verificada y apagada, está lista para finalizar.
-
Copia el disco de empaquetado de la carpeta que contiene los archivos de la máquina de empaquetado a la carpeta Finalize en el recurso compartido de red: \Unidesk\Finalize
-
Vuelve a la consola de administración.
-
Selecciona Layers > App Layers.
-
Selecciona la versión de tu capa en la ficha Version Information y haz clic en Finalize en la barra de Action.
-
Supervisa la barra de tareas para verificar que la acción se completa correctamente y que la capa es implementable.
Clonar una capa de aplicación
Puedes crear una capa de aplicación que sea igual a una capa existente clonando una versión específica de la capa. Durante el proceso de clonación, se te pedirá información específica de la capa. Puedes actualizar la capa de aplicación agregándole versiones. Dado que solo se clona una versión de una capa, la nueva capa tendrá solo una versión para empezar, incluso si la capa de la que se clonó tenía muchas.
Para clonar una capa:
- Selecciona la capa de aplicación que quieres copiar y haz clic en Clone Layer en la barra de Action.
- Selecciona la Source Layer Version para clonar. Puedes elegir la versión que quieras del menú desplegable.
- Introduce un nombre para la capa y una descripción, si la información adicional es útil. Las descripciones son opcionales.
- Introduce la versión y una descripción de la versión, si la información adicional es útil.
- En la ficha Icon Assignment, selecciona el icono para la nueva capa.
- En la ficha Confirm and Clone, verifica la configuración y haz clic en el botón Clone Layer.
Se crea una nueva capa con las mismas propiedades de capa que la de origen, excepto el icono. La prioridad de la capa es mayor que la de la capa de origen porque cada nueva capa de aplicación tiene una prioridad mayor que la última capa de aplicación creada. El tamaño de la nueva capa podría ser menor que el original, pero esto solo indica que se eliminó espacio vacío durante la clonación. La capa funciona igual que la de origen.
Puedes usar la nueva capa como cualquier otra capa, y no está asociada de ninguna manera con la capa original.
Opciones avanzadas de capa de aplicación
Al crear y actualizar capas de aplicación, ten en cuenta las siguientes funciones avanzadas.
- Script de capa personalizado
- Almacenamiento en caché de capas
- Capas de requisitos previos
Script de capa personalizado
Puedes incluir un script en una capa de aplicación que se ejecuta una vez, al iniciar el sistema. Para configurar el script, modifica las propiedades de la capa de aplicación.
Nota:
También puedes modificar las propiedades de la revisión de la capa mientras se está creando la revisión, o incluso después de que se haya finalizado.
El script se ejecuta la primera vez que se inicia cualquier imagen en capas que incluya la capa de aplicación. Si la capa de aplicación tiene capas elásticas, el script de capa personalizado se ejecuta al montar el disco de la capa de aplicación. Los scripts de capa personalizados se usan normalmente para aplicaciones, como MS Office, que requieren activación de licencia la primera vez que se inician.

Almacenamiento en caché de capas para una creación más rápida de capas de aplicación
Puedes usar el almacenamiento en caché de capas para agilizar los tiempos de creación de capas.
Cómo funciona el almacenamiento en caché
La primera vez que creas una capa de aplicación, si el tamaño de la caché se establece en un valor lo suficientemente grande, se guarda en la caché una plantilla que consta del disco de arranque y el disco de empaquetado vacío. El disco de arranque incluye la capa de SO, la capa de plataforma y la capa de requisitos previos (si las hay) que se especifican en la configuración de la capa de aplicación.
Cada vez que creas una capa de aplicación que usa la misma combinación de capa de SO, capa de requisitos previos y capa de plataforma, el software de App Layering reutiliza la plantilla, reduciendo significativamente el tiempo de creación.
Si luego creas una capa de aplicación que usa una combinación diferente de capa de SO, capa de requisitos previos y capa de plataforma, el software de App Layering crea una plantilla y la agrega a la caché.
Tamaño de caché recomendado
El tamaño de caché recomendado depende de cuántas combinaciones de capa de SO, plataforma y requisitos previos necesites para tus capas de aplicación. El número de combinaciones determina el número de plantillas guardadas en la caché.
Para estimar el espacio requerido para cada plantilla:
- Selecciona el icono i para cada capa de SO, plataforma y requisitos previos, y busca el Maximum Layer Size.
- Suma los Maximum Disk Sizes. El total es el tamaño de caché que necesitas para esa plantilla.
Para estimar el espacio requerido para la caché, suma el tamaño que determinaste para cada una de tus plantillas.
Capas de requisitos previos
Raramente recomendadas, las capas de requisitos previos te permiten incluir una o varias capas de aplicación existentes en el disco de empaquetado al crear una capa o agregarle una versión.
Usa las capas de requisitos previos solo si son necesarias, porque pueden agregar algo a la capa que no es necesario para implementar la aplicación actual. Este comportamiento puede causar conflictos en el futuro.
Cuándo usar capas de requisitos previos
Las capas de requisitos previos pueden ser necesarias por varias razones:
- Cuando la instalación de la aplicación en la capa actual requiere la presencia de otra aplicación. Por ejemplo, cuando instalas una aplicación que requiere Java y Java se encuentra en una capa separada.
- Cuando la instalación del software agrega configuraciones a una aplicación existente. Por ejemplo, cuando instalas un complemento de Office, primero debes instalar Microsoft Office.
- Cuando dos aplicaciones cambian la misma clave de registro y la segunda aplicación debe agregar a una clave y no reemplazarla. Por ejemplo, dos aplicaciones que cambian las claves de inicio de sesión en Windows, como Citrix Agent e Imprivata.
Nota
Algunos de estos problemas también se pueden manejar colocando las dos aplicaciones en la misma capa en lugar de usar capas de requisitos previos.
Características de la capa de requisitos previos
Las capas de requisitos previos tienen las siguientes características:
- Las capas de requisitos previos no se incluyen en la capa de aplicación que se utiliza para crearlas.
- La capa de aplicación que creas y cada una de sus capas de requisitos previos deben usar la misma capa de SO.
- Al agregar una versión a una capa de aplicación, las capas de requisitos previos no se incluyen de forma predeterminada. Cada vez que agregas una versión a una capa, debes seleccionar una o varias capas de requisitos previos.