Linux Virtual Delivery Agent

Crear VDAs unidos a un dominio mediante la instalación sencilla

Importante:

  • Para instalaciones nuevas, te recomendamos consultar este artículo para una instalación rápida. Este artículo explica cómo instalar y configurar el VDA de Linux mediante la instalación sencilla. La instalación sencilla ahorra tiempo y trabajo, y es menos propensa a errores que la instalación manual. Te ayuda a configurar un entorno en ejecución del VDA de Linux instalando los paquetes necesarios y personalizando los archivos de configuración automáticamente.

  • Para crear VDAs no unidos a un dominio, debes usar Machine Creation Services (MCS). Para obtener más información, consulta Crear VDAs de Linux no unidos a un dominio.

  • Para obtener información sobre las funciones disponibles para los VDAs no unidos a un dominio, consulta VDAs no unidos a un dominio.

  • Paso 1: Prepara la información de configuración y la máquina Linux

  • Recopila la siguiente información de configuración necesaria para la instalación sencilla:

  • Nombre de host: nombre de host de la máquina en la que se va a instalar el VDA de Linux
  • Dirección IP del servidor de nombres de dominio
  • Dirección IP o nombre de cadena del servidor NTP
  • Nombre de dominio: el nombre NetBIOS del dominio
  • Nombre de reino: el nombre de reino de Kerberos
  • Nombre de dominio completo (FQDN) del dominio

  • Importante:

    • Para instalar el VDA de Linux, verifica que los repositorios se hayan agregado correctamente en la máquina Linux.
    • Para iniciar una sesión, verifica que el sistema X Window y los entornos de escritorio estén instalados.

Consideraciones

  • El nombre del grupo de trabajo, por defecto, es el nombre de dominio. Para personalizar el grupo de trabajo en tu entorno, haz lo siguiente:

    a. Crea el archivo /tmp/ctxinstall.conf en la máquina VDA de Linux. b. Agrega la línea workgroup=<tu grupo de trabajo> al archivo y guarda los cambios.

    • Centrify no admite la configuración DNS de IPv6 pura. Se requiere al menos un servidor DNS que use IPv4 en /etc/resolv.conf para que adclient encuentre los servicios de AD correctamente.

    • Registro:

     ADSITE   : Check that this machine's subnet is in a site known by AD   : Failed
              : This machine's subnet is not known by AD.
              : We guess you should be in the site Site1.
     <!--NeedCopy-->
    

    Este problema es exclusivo de Centrify y su configuración. Para resolver este problema, haz lo siguiente:

    a. Abre las Herramientas administrativas en el controlador de dominio. b. Selecciona Sitios y servicios de Active Directory. c. Agrega una dirección de subred adecuada para Subredes.

  • Para unir tu VDA a una OU específica, haz lo siguiente:

      1. Asegúrate de que la OU específica exista en el controlador de dominio.

      Para ver un ejemplo de OU, consulta la siguiente captura de pantalla:

      Un ejemplo de OU

      1. Crea el archivo /tmp/ctxinstall.conf en el VDA. 1. Agrega la línea ou=<tu ou> al archivo /tmp/ctxinstall.conf.

      Los valores de OU varían según los diferentes métodos de AD. La siguiente tabla refleja los nombres de OU de ejemplo en la captura de pantalla anterior. Puedes usar cualquier otro nombre de OU en tu organización.

    • SO Winbind SSSD Centrify PBIS
      Amazon Linux 2 ou="Linux/amazon" ou="Linux/amazon" ou="XD.LOCAL/Linux/amazon" ou="Linux/amazon"
      Debian ou="Linux/debian" ou="Linux/debian" ou="XD.LOCAL/Linux/debian" ou="Linux/debian"
      RHEL 8, Rocky Linux 8 ou="OU=redhat,OU=Linux" ou="OU=redhat,OU=Linux" ou="XD.LOCAL/Linux/redhat" ou="Linux/redhat"
      RHEL 7 ou="Linux/redhat" ou="Linux/redhat" ou="XD.LOCAL/Linux/redhat" ou="Linux/redhat"
      SUSE ou="Linux/suse" ou="Linux/suse" ou="XD.LOCAL/Linux/suse" ou="Linux/suse"
      Ubuntu ou="Linux/ubuntu" ou="Linux/ubuntu" ou="XD.LOCAL/Linux/ubuntu" ou="Linux/ubuntu"
    • La instalación sencilla admite IPv6 pura a partir del VDA de Linux 7.16. Se aplican las siguientes condiciones previas y limitaciones:

    • Tu repositorio de Linux debe estar configurado para garantizar que tu máquina pueda descargar los paquetes necesarios a través de redes IPv6 puras.
    • Centrify no es compatible con redes IPv6 puras.

    Nota:

    Si tu red es IPv6 pura y toda tu entrada está en el formato IPv6 adecuado, el VDA se registra con el Delivery Controller™ a través de IPv6. Si tu red tiene una configuración híbrida de IPv4 e IPv6, el tipo de la primera dirección IP de DNS determina si se usa IPv4 o IPv6 para el registro.

  • Si eliges Centrify como método para unirte a un dominio, el script ctxinstall.sh requiere el paquete de Centrify. Hay dos formas de que ctxinstall.sh obtenga el paquete de Centrify:

  • Si eliges PBIS como método para unirte a un dominio, el script ctxinstall.sh requiere el paquete de PBIS. Hay dos formas de que ctxinstall.sh obtenga el paquete de PBIS:

    • La instalación sencilla ayuda a descargar el paquete de PBIS de Internet automáticamente. Las siguientes son las URL para cada distribución:

      CentOS 7, RHEL 7, SUSE 12.5: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.rpm.sh

      Amazon Linux 2, RHEL 8, Rocky Linux 8, SUSE 15.3, SUSE 15.2: wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.rpm.sh

      Debian, Ubuntu: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.deb.sh

    • Obtén una versión específica del paquete PBIS de Internet. Para ello, cambia la línea “pbisDownloadPath” en el archivo /opt/Citrix/VDA/sbin/ctxinstall.sh para designar la URL del paquete PBIS.

      Para ver un ejemplo, consulta la siguiente captura de pantalla:

      Obtener una versión específica del paquete PBIS

Paso 2: Prepara el hipervisor

Se requieren algunos cambios al ejecutar el VDA de Linux como máquina virtual en un hipervisor compatible. Realiza los siguientes cambios según la plataforma de hipervisor que utilices. No se requieren cambios si ejecutas la máquina Linux en hardware sin sistema operativo.

Corrige la sincronización de la hora en Citrix Hypervisor™

Cuando la función de sincronización de la hora de Citrix Hypervisor está habilitada, dentro de cada máquina virtual Linux paravirtualizada, puedes experimentar problemas con NTP y Citrix Hypervisor. Ambos intentan gestionar el reloj del sistema. Para evitar que el reloj se desincronice con otros servidores, asegúrate de que el reloj del sistema dentro de cada invitado Linux esté sincronizado con NTP. Este caso requiere deshabilitar la sincronización de la hora del host. No se requieren cambios en el modo HVM.

Si ejecutas un kernel de Linux paravirtualizado con las herramientas de Citrix VM instaladas, puedes comprobar si la función de sincronización de la hora de Citrix Hypervisor está presente y habilitada desde la máquina virtual Linux:

su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Este comando devuelve 0 o 1:

  • 0 - La función de sincronización de la hora está habilitada y debe deshabilitarse.
  • 1 - La función de sincronización de la hora está deshabilitada y no se requiere ninguna otra acción.

Si el archivo /proc/sys/xen/independent_wallclock no está presente, los siguientes pasos no son necesarios.

Si está habilitada, deshabilita la función de sincronización de la hora escribiendo 1 en el archivo:

sudo echo 1 > /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Para que este cambio sea permanente y persistente después de reiniciar, modifica el archivo /etc/sysctl.conf y agrega la línea:

xen.independent_wallclock = 1

Para verificar estos cambios, reinicia el sistema:

-  su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Este comando devuelve el valor 1.

Corrige la sincronización de la hora en Microsoft Hyper-V

Las máquinas virtuales Linux con los Servicios de integración de Hyper-V para Linux instalados pueden aplicar la función de sincronización de la hora de Hyper-V para usar la hora del sistema operativo host. Para asegurarte de que el reloj del sistema permanezca preciso, debes habilitar esta función junto con los servicios NTP.

Desde el sistema operativo de administración:

  1. Abre la consola del Administrador de Hyper-V.
    1. Para la configuración de una máquina virtual Linux, selecciona Servicios de integración.
    1. Asegúrate de que la opción Sincronización de la hora esté seleccionada.

Nota:

  • Este enfoque es diferente al de VMware y Citrix Hypervisor, donde la sincronización de la hora del host está deshabilitada para evitar conflictos con NTP. La sincronización de la hora de Hyper-V puede coexistir y complementar la sincronización de la hora de NTP.

  • Corrige la sincronización de la hora en ESX y ESXi

Cuando la función de sincronización de la hora de VMware está habilitada, dentro de cada máquina virtual Linux paravirtualizada, puedes experimentar problemas con NTP y el hipervisor. Ambos intentan sincronizar el reloj del sistema. Para evitar que el reloj se desincronice con otros servidores, asegúrate de que el reloj del sistema dentro de cada invitado Linux esté sincronizado con NTP. Este caso requiere deshabilitar la sincronización de la hora del host.

  • Si ejecutas un kernel de Linux paravirtualizado con las herramientas de VMware instaladas:

    1. Abre vSphere Client.
    1. Modifica la configuración de la máquina virtual Linux.
    1. En el cuadro de diálogo Propiedades de la máquina virtual, abre la ficha Opciones.
    1. Selecciona VMware Tools.
    1. En el cuadro Avanzado, desmarca Sincronizar hora del invitado con el host.

Paso 3: Instala .NET Runtime 6.0 como requisito previo

  • Antes de instalar el VDA de Linux, instala .NET Runtime 6.0 según las instrucciones en https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

  • Después de instalar .NET Runtime 6.0, ejecuta el comando which dotnet para encontrar la ruta de tu entorno de ejecución.

  • Según la salida del comando, establece la ruta binaria del entorno de ejecución de .NET. Por ejemplo, si la salida del comando es /aa/bb/dotnet, usa /aa/bb como ruta binaria de .NET.

  • Paso 4: Descarga el paquete VDA de Linux

  • Ve a la página de descarga de Citrix Virtual Apps and Desktops. Expande la versión adecuada de Citrix Virtual Apps and Desktops y haz clic en Componentes para descargar el paquete VDA de Linux que coincida con tu distribución de Linux.

  • Paso 5: Instala el paquete VDA de Linux

Para configurar el entorno para el VDA de Linux, ejecuta los siguientes comandos.

Para distribuciones RHEL/CentOS/Rocky Linux:

sudo yum -y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
    -  > **Nota:** > > Después de instalar el VDA de Linux en RHEL 8.x alojado en GCP, la conexión Ethernet podría perderse y el VDA de Linux podría quedar inaccesible después de un reinicio de la VM. Para solucionar el problema, ejecuta los siguientes comandos antes de reiniciar la VM: > > ``` > nmcli dev connect eth0 > systemctl NetworkManager restart > <!--NeedCopy--> ```

Para distribuciones Ubuntu/Debian:

sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
<!--NeedCopy-->

Nota:

Para instalar las dependencias necesarias para una distribución Debian, agrega la línea deb http://deb.debian.org/debian/ oldstable main al archivo /etc/apt/sources.list.

Para distribuciones SUSE:

zypper -i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Paso 6: Instala los controladores NVIDIA GRID

La habilitación de HDX™ 3D Pro requiere que instales los controladores NVIDIA GRID en tu hipervisor y en las máquinas VDA.

Para instalar y configurar NVIDIA GRID Virtual GPU Manager (el controlador del host) en los hipervisores específicos, consulta las siguientes guías:

    -  [Citrix Hypervisor](/es-es/citrix-hypervisor/graphics/vm-graphics-config.html#install-the-nvidia-drivers)

Para instalar y configurar los controladores de VM invitada de NVIDIA GRID, realiza los siguientes pasos generales:

  1. Asegúrate de que la VM invitada esté apagada.
  2. En el panel de control del hipervisor, asigna una GPU a la VM.
  3. Inicia la VM.
  4. Instala el controlador de la VM invitada en la VM.

Paso 7: Configura el entorno de ejecución para completar la instalación

Después de instalar el paquete del VDA de Linux, configura el entorno de ejecución usando el script ctxinstall.sh. Puedes ejecutar el script en modo interactivo o en modo silencioso.

Nota:

Antes de configurar el entorno de ejecución, asegúrate de que la configuración regional en_US.UTF-8 esté instalada en tu sistema operativo. Si la configuración regional no está disponible en tu sistema operativo, ejecuta el comando sudo locale-gen en_US.UTF-8. Para Debian, edita el archivo /etc/locale.gen descomentando la línea # en_US.UTF-8 UTF-8 y luego ejecuta el comando sudo locale-gen.

Modo interactivo:

Hay dos maneras de usar la instalación fácil en modo interactivo:

  • Ejecuta el comando sudo /opt/Citrix/VDA/sbin/ctxinstall.sh y escribe el parámetro relevante en cada solicitud de la interfaz de línea de comandos.
  • Ejecuta el comando /opt/Citrix/VDA/bin/easyinstall en el entorno de escritorio de tu VDA y luego sigue las instrucciones de la GUI de instalación fácil.

GUI de instalación fácil

La GUI de instalación fácil te guía a través de las siguientes operaciones:

-  Comprueba el entorno del sistema
-  Instala las dependencias
  • Une el VDA a un dominio especificado
  • Configura el entorno de ejecución

Modo silencioso:

Para usar la instalación fácil en modo silencioso, establece las siguientes variables de entorno antes de ejecutar ctxinstall.sh.

  • CTX_EASYINSTALL_HOSTNAME=host-name – Indica el nombre de host del servidor VDA de Linux.
  • CTX_EASYINSTALL_DNS=ip-address-of-dns – Dirección IP del DNS.
  • CTX_EASYINSTALL_NTPS=address-of-ntps – Dirección IP o nombre de cadena del servidor NTP.
  • CTX_EASYINSTALL_DOMAIN=domain-name – El nombre NetBIOS del dominio.
  • CTX_EASYINSTALL_REALM=realm-name – El nombre del ámbito Kerberos.
  • CTX_EASYINSTALL_FQDN=ad-fqdn-name
  • CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis – Indica el método de integración de Active Directory.
  • CTX_EASYINSTALL_USERNAME=domain-user-name – Indica el nombre del usuario del dominio; se usa para unirse al dominio.
  • CTX_EASYINSTALL_PASSWORD=password – Especifica la contraseña del usuario del dominio; se usa para unirse al dominio.

El script ctxsetup.sh usa las siguientes variables:

  • CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N – El VDA de Linux admite la especificación de un nombre de Delivery Controller mediante un registro CNAME de DNS.
  • CTX_XDL_DDC_LIST=’list-ddc-fqdns’ – El VDA de Linux requiere una lista de nombres de dominio completos (FQDN) de Delivery Controller separados por espacios para registrarse con un Delivery Controller. Se debe especificar al menos un FQDN o CNAME.
  • CTX_XDL_VDA_PORT=port-number – El VDA de Linux se comunica con los Delivery Controllers a través de un puerto TCP/IP.
  • CTX_XDL_REGISTER_SERVICE=Y | N – Los servicios de Linux Virtual Desktop se inician después del arranque de la máquina.
  • CTX_XDL_ADD_FIREWALL_RULES=Y | N – Los servicios de Linux Virtual Desktop requieren que se permitan las conexiones de red entrantes a través del firewall del sistema. Puedes abrir los puertos necesarios (por defecto, los puertos 80 y 1494) automáticamente en el firewall del sistema para Linux Virtual Desktop.
  • CTX_XDL_HDX_3D_PRO=Y | N – El VDA de Linux admite HDX 3D Pro, un conjunto de tecnologías de aceleración de GPU diseñadas para optimizar la virtualización de aplicaciones con gráficos enriquecidos. Si se selecciona HDX 3D Pro, el VDA se configura para el modo de escritorios VDI (sesión única) (es decir, CTX_XDL_VDI_MODE=Y).
  • CTX_XDL_VDI_MODE=Y | N – Si se debe configurar la máquina como un modelo de entrega de escritorio dedicado (VDI) o un modelo de entrega de escritorio compartido alojado. Para entornos HDX 3D Pro, establece el valor en Y.
  • CTX_XDL_SITE_NAME=dns-name – El VDA de Linux descubre servidores LDAP a través de DNS. Para limitar los resultados de la búsqueda de DNS a un sitio local, especifica un nombre de sitio de DNS. Si no es necesario, establécelo en <none>.
  • CTX_XDL_LDAP_LIST=’list-ldap-servers’ – El VDA de Linux consulta DNS para descubrir servidores LDAP. Si DNS no puede proporcionar registros de servicio LDAP, puedes proporcionar una lista de FQDN de LDAP separados por espacios con puertos LDAP. Por ejemplo, ad1.mycompany.com:389. Si no es necesario, establécelo en <none>.
  • CTX_XDL_SEARCH_BASE=search-base-set – El VDA de Linux consulta LDAP a través de una base de búsqueda establecida en la raíz del dominio de Active Directory (por ejemplo, DC=mycompany,DC=com). Para mejorar el rendimiento de la búsqueda, puedes especificar una base de búsqueda (por ejemplo, OU=VDI,DC=mycompany,DC=com). Si no es necesario, establécelo en <none>.
  • CTX_XDL_FAS_LIST=’list-fas-servers’ – Los servidores del Servicio de autenticación federada (FAS) se configuran a través de la Directiva de grupo de AD. El VDA de Linux no admite la Directiva de grupo de AD, pero puedes proporcionar una lista de servidores FAS separados por punto y coma. La secuencia debe ser la misma que la configurada en la Directiva de grupo de AD. Si se elimina alguna dirección de servidor, rellena su espacio en blanco con la cadena de texto <none> y no modifiques el orden de las direcciones de los servidores.
  • CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime – La ruta para instalar .NET Runtime 6.0 para admitir el nuevo servicio de agente de broker (ctxvda). La ruta predeterminada es /usr/bin.
  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/mate – Especifica el entorno de escritorio GNOME o MATE que se usará en las sesiones. Si dejas la variable sin especificar, se usa el escritorio actualmente instalado en el VDA. Sin embargo, si el escritorio actualmente instalado es MATE, debes establecer el valor de la variable en mate.

    También puedes cambiar el entorno de escritorio para un usuario de sesión de destino completando los siguientes pasos:

    1. Crea un archivo .xsession o .Xclients en el directorio $HOME/<username> del VDA. Si usas Amazon Linux 2, crea un archivo .Xclients. Si usas otras distribuciones, crea un archivo .xsession.
    2. Edita el archivo .xsession o .Xclients para especificar un entorno de escritorio según las distribuciones.

      • Para el escritorio MATE en Amazon Linux 2, Debian, RHEL 8, SUSE 15 y Ubuntu
  • MSESSION=”$(type -p mate-session)” if [ -n “$MSESSION” ]; then exec mate-session fi

     -  **Para el escritorio GNOME en CentOS, RHEL, SUSE 15 y SUSE 12.5**
    
             GSESSION="$(type -p gnome-session)"
             if [ -n "$GSESSION" ]; then
    

export GNOME_SHELL_SESSION_MODE=classic

  • exec gnome-session –session=gnome-classic
  • fi - Para el escritorio GNOME en Amazon Linux 2, Ubuntu y Debian

             GSESSION="$(type -p gnome-session)"  
             if [ -n "$GSESSION" ]; then  
             exec gnome-session  
             fi  
    
    1. Comparte el permiso de archivo 700 con el usuario de la sesión de destino.
  • **CTX_XDL_START_SERVICE=Y N** – Indica si los servicios de Linux VDA se inician o no cuando la configuración se completa.
  • CTX_XDL_TELEMETRY_SOCKET_PORT – El puerto de socket para escuchar a Citrix Scout. El puerto predeterminado es 7503.
  • CTX_XDL_TELEMETRY_PORT – El puerto para comunicarse con Citrix Scout. El puerto predeterminado es 7502.

Si no se establece algún parámetro, la instalación revierte al modo interactivo, con una solicitud de entrada del usuario. Cuando todos los parámetros ya están configurados mediante las variables de entorno, el script ctxinstall.sh sigue solicitando al usuario la ruta para instalar .NET Runtime 6.0.

En modo silencioso, debe ejecutar los siguientes comandos para establecer las variables de entorno y, a continuación, ejecutar el script ctxinstall.sh.

export CTX_EASYINSTALL_HOSTNAME=host-name

export CTX_EASYINSTALL_DNS=ip-address-of-dns

export CTX_EASYINSTALL_NTPS=address-of-ntps

export CTX_EASYINSTALL_DOMAIN=domain-name

export CTX_EASYINSTALL_REALM=realm-name

export CTX_EASYINSTALL_FQDN=ad-fqdn-name

export CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis

export CTX_EASYINSTALL_USERNAME=domain-user-name

export CTX_EASYINSTALL_PASSWORD=password

export CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N

export CTX_XDL_DDC_LIST='list-ddc-fqdns'

export CTX_XDL_VDA_PORT=port-number

export CTX_XDL_REGISTER_SERVICE=Y | N

export CTX_XDL_ADD_FIREWALL_RULES=Y | N

export CTX_XDL_HDX_3D_PRO=Y | N

export CTX_XDL_VDI_MODE=Y | N

export CTX_XDL_SITE_NAME=dns-site-name | '<none>'

export CTX_XDL_LDAP_LIST='list-ldap-servers' | '<none>'

export CTX_XDL_SEARCH_BASE=search-base-set | '<none>'

export CTX_XDL_FAS_LIST='list-fas-servers' | '<none>'

export CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime

export CTX_XDL_DESKTOP_ENVIRONMENT= gnome | mate | '<none>'

export CTX_XDL_TELEMETRY_SOCKET_PORT=port-number

export CTX_XDL_TELEMETRY_PORT=port-number

export CTX_XDL_START_SERVICE=Y | N

sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh
<!--NeedCopy-->

Al ejecutar el comando sudo, escriba la opción -E para pasar las variables de entorno existentes al nuevo shell que crea. Le recomendamos que cree un archivo de script de shell a partir de los comandos anteriores con #!/bin/bash como primera línea.

Alternativamente, puede especificar todos los parámetros mediante un solo comando:

sudo CTX_XDL_SUPPORT_DDC_AS_CNAME=Y|N \

CTX_XDL_DDC_LIST='list-ddc-fqdns' \

CTX_XDL_VDA_PORT=port-number \

CTX_XDL_REGISTER_SERVICE=Y|N \

CTX_XDL_ADD_FIREWALL_RULES=Y|N \

CTX_XDL_AD_INTEGRATION=1|2|3|4 \

CTX_XDL_HDX_3D_PRO=Y|N \

CTX_XDL_VDI_MODE=Y|N \

CTX_XDL_SITE_NAME=dns-name \

CTX_XDL_LDAP_LIST='list-ldap-servers' \

CTX_XDL_SEARCH_BASE=search-base-set \

CTX_XDL_FAS_LIST='list-fas-servers' \

CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \

CTX_XDL_DESKTOP_ENVIRONMENT=gnome | mate \

CTX_XDL_TELEMETRY_SOCKET_PORT=port-number \

CTX_XDL_TELEMETRY_PORT=port-number \

CTX_XDL_START_SERVICE=Y|N \

/opt/Citrix/VDA/sbin/ctxsetup.sh
<!--NeedCopy-->

Paso 8: Ejecutar XDPing

Ejecute sudo /opt/Citrix/VDA/bin/xdping para comprobar si hay problemas de configuración comunes en un entorno Linux VDA. Para obtener más información, consulte XDPing.

Paso 9: Ejecutar el Linux VDA

Iniciar el Linux VDA:

Para iniciar los servicios de Linux VDA:

sudo /sbin/service ctxhdx start

sudo /sbin/service ctxvda start
<!--NeedCopy-->

Detener el Linux VDA:

Para detener los servicios de Linux VDA:

sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx stop
<!--NeedCopy-->

Nota:

Antes de detener los servicios ctxvda y ctxhdx, ejecute el comando systemctl ctxmonitorservice stop para detener el demonio del servicio de supervisión. De lo contrario, el demonio del servicio de supervisión reinicia los servicios que detuvo.

Reiniciar el Linux VDA:

Para reiniciar los servicios de Linux VDA:

sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx restart

sudo /sbin/service ctxvda start
<!--NeedCopy-->

Comprobar el estado del Linux VDA:

Para comprobar el estado de ejecución de los servicios de Linux VDA:

sudo /sbin/service ctxvda status

sudo /sbin/service ctxhdx status
<!--NeedCopy-->

Paso 10: Crear catálogos de máquinas

El proceso para crear catálogos de máquinas y agregar máquinas Linux VDA es similar al enfoque tradicional de Windows VDA. Para obtener una descripción más detallada de cómo completar estas tareas, consulte Crear catálogos de máquinas y Administrar catálogos de máquinas.

Para crear catálogos de máquinas que contengan máquinas Linux VDA, existen algunas restricciones que diferencian el proceso de la creación de catálogos de máquinas para máquinas Windows VDA:

  • Para el sistema operativo, seleccione:
    • La opción SO multisesión para un modelo de entrega de escritorios compartidos alojados.
    • La opción SO de sesión única para un modelo de entrega de escritorios dedicados VDI.
  • No mezcle máquinas Linux y Windows VDA en el mismo catálogo de máquinas.

Nota:

Las versiones anteriores de Citrix Studio no admitían la noción de “SO Linux”. Sin embargo, seleccionar la opción SO de Windows Server o SO de servidor implica un modelo de entrega de escritorios compartidos alojados equivalente. Seleccionar la opción SO de escritorio de Windows o SO de escritorio implica un modelo de entrega de un solo usuario por máquina.

Sugerencia:

Si quita y vuelve a unir una máquina al dominio de Active Directory, debe quitar y volver a agregar la máquina al catálogo de máquinas.

Paso 11: Crear grupos de entrega

El proceso para crear un grupo de entrega y agregar catálogos de máquinas que contengan máquinas Linux VDA es casi idéntico al de las máquinas Windows VDA. Para obtener una descripción más detallada de cómo completar estas tareas, consulte Crear grupos de entrega.

Para crear grupos de entrega que contengan catálogos de máquinas Linux VDA, se aplican las siguientes restricciones:

  • Asegúrese de que los usuarios y grupos de AD que seleccione se hayan configurado correctamente para iniciar sesión en las máquinas Linux VDA.
  • No permita el inicio de sesión de usuarios no autenticados (anónimos).
  • No mezcle el grupo de entrega con catálogos de máquinas que contengan máquinas Windows.

Importante:

La publicación de aplicaciones es compatible con Linux VDA versión 1.4 y posteriores. Sin embargo, el Linux VDA no admite la entrega de escritorios y aplicaciones a la misma máquina.

Para obtener información sobre cómo crear catálogos de máquinas y grupos de entrega, consulte Citrix Virtual Apps and Desktops 7 2203.

Solución de problemas

Utilice la información de esta sección para solucionar los problemas que puedan surgir al usar la función de instalación sencilla.

Error al unirse a un dominio mediante SSSD

Puede que ocurra un error cuando intentas unirte a un dominio, con una salida similar a la siguiente (verifica los registros para ver la salida en pantalla):

Step 6: join Domain!Enter ctxadmin's password:Failed to join domain: failed to lookup DC info for domain 'CITRIXLAB.LOCAL' over rpc: The network name cannot be found

/var/log/xdl/vda.log:

2016-11-04 02:11:52.317 [INFO ] - The Citrix Desktop Service successfully obtained the following list of 1 delivery controller(s) with which to register: 'CTXDDC.citrixlab.local (10.158.139.214)'.
2016-11-04 02:11:52.362 [ERROR] - RegistrationManager.AttemptRegistrationWithSingleDdc: Failed to register with http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar. Error: General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))
2016-11-04 02:11:52.362 [ERROR] - The Citrix Desktop Service cannot connect to the delivery controller 'http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar' (IP Address '10.158.139.214')
Check the following:- The system clock is in sync between this machine and the delivery controller.
-  The Active Directory provider (e.g. winbind daemon) service is running and correctly configured.
-  Kerberos is correctly configured on this machine.
If the problem persists, please refer to Citrix Knowledge Base article CTX117248 for further information.
Error Details:
Exception 'General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))' of type 'class javax.xml.ws.soap.SOAPFaultException'.
2016-11-04 02:11:52.362 [INFO ] - RegistrationManager.AttemptRegistrationWithSingleDdc: The current time for this VDA is Fri Nov 04 02:11:52 EDT 2016.
Ensure that the system clock is in sync between this machine and the delivery controller.
Verify the NTP daemon is running on this machine and is correctly configured.
2016-11-04 02:11:52.364 [ERROR] - Could not register with any controllers. Waiting to try again in 120000 ms. Multi-forest - false
2016-11-04 02:11:52.365 [INFO ] - The Citrix Desktop Service failed to register with any controllers in the last 470 minutes.
<!--NeedCopy-->

/var/log/messages:

Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Failed to initialize credentials using keytab [MEMORY:/etc/krb5.keytab]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database. Unable to create GSSAPI-encrypted LDAP connection.Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database

Para resolver este problema:

  1. Ejecuta el comando rm -f /etc/krb5.keytab.
  2. Ejecuta el comando net ads leave $REALM -U $domain-administrator.
  3. Quita el catálogo de máquinas y el grupo de entrega en el Delivery Controller.
  4. Ejecuta /opt/Citrix/VDA/sbin/ctxinstall.sh.
  5. Crea el catálogo de máquinas y el grupo de entrega en el Delivery Controller.

Las sesiones de escritorio de Ubuntu muestran una pantalla gris

Este problema ocurre cuando inicias una sesión que luego se bloquea en un escritorio en blanco. Además, la consola de la máquina también muestra una pantalla gris cuando inicias sesión con una cuenta de usuario local.

Para resolver este problema:

  1. Ejecuta el comando sudo apt-get update.
  2. Ejecuta el comando sudo apt-get install unity lightdm.
  3. Agrega la siguiente línea a /etc/lightdm/lightdm.conf: greeter-show-manual-login=true

Los intentos de iniciar sesiones de escritorio de Ubuntu fallan debido a la falta de un directorio de inicio

/var/log/xdl/hdx.log:

2016-11-02 13:21:19.015 <P22492:S1> citrix-ctxlogin: StartUserSession: failed to change to directory(/home/CITRIXLAB/ctxadmin) errno(2)

2016-11-02 13:21:19.017 <P22227> citrix-ctxhdx: logSessionEvent: Session started for user ctxadmin.

2016-11-02 13:21:19.023 <P22492:S1> citrix-ctxlogin: ChildPipeCallback: Login Process died: normal.

2016-11-02 13:21:59.217 <P22449:S1> citrix-ctxgfx: main: Exiting normally.
<!--NeedCopy-->

Sugerencia:

La causa principal de este problema es que el directorio de inicio no se crea para el administrador del dominio.

Para resolver este problema:

  1. Desde la línea de comandos, escribe pam-auth-update.

  2. En el cuadro de diálogo resultante, verifica que la opción Create home directory login esté seleccionada.

    Failed to launch Ubuntu desktop sessions

La sesión no se inicia o finaliza rápidamente con un error de dbus

/var/log/messages (para RHEL o CentOS):

Oct 27 04:17:16 CentOS7 citrix-ctxhdx[8978]: Session started for user CITRIXLAB\ctxadmin.

Oct 27 04:17:18 CentOS7 kernel: traps: gnome-session[19146] trap int3 ip:7f89b3bde8d3 sp:7fff8c3409d0 error:0

Oct 27 04:17:18 CentOS7 gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)#012aborting...

Oct 27 04:17:18 CentOS7 gnome-session: gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)

Oct 27 04:17:18 CentOS7 gnome-session: aborting...

Oct 27 04:17:18 CentOS7 citrix-ctxgfx[18981]: Exiting normally.

Oct 27 04:17:18 CentOS7 citrix-ctxhdx[8978]: Session stopped for user CITRIXLAB\ctxadmin.
<!--NeedCopy-->

O, alternativamente para distribuciones de Ubuntu, usa el registro /var/log/syslog:

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] pid.c: Stale PID file, overwriting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] bluez5-util.c: Failed to get D-Bus connection: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] hashmap.c: Assertion 'h' failed at pulsecore/hashmap.c:116, function pa_hashmap_free(). Aborting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: message repeated 10 times: [ [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.]

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] pid.c: Daemon already running.Nov  3 11:03:58 user01-HVM-domU citrix-ctxgfx[24693]: Exiting normally
<!--NeedCopy-->

Algunos grupos o módulos no surten efecto hasta que se reinicia. Si los mensajes de error de dbus aparecen en el registro, te recomendamos que reinicies el sistema y lo intentes de nuevo.

SELinux impide que SSHD acceda al directorio de inicio

El usuario puede iniciar una sesión, pero no puede iniciar sesión.

/var/log/ctxinstall.log:

Jan 25 23:30:31 yz-rhel72-1 setroubleshoot[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root. For complete SELinux messages. run sealert -l 32f52c1f-8ff9-4566-a698-963a79f16b81

Jan 25 23:30:31 yz-rhel72-1 python[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root.

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow polyinstantiation to enabled

   Then you must tell SELinux about this by enabling the 'polyinstantiation_enabled' boolean.

You can read 'None' man page for more details.

    Do

       setsebool -P polyinstantiation_enabled 1

*****  Plugin catchall (11.6 confidence) suggests   **************************

If you believe that sshd should be allowed setattr access on the root directory by default.

Then you should report this as a bug.

You can generate a local policy module to allow this access.

      Do

       allow this access for now by executing:

       # grep sshd /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp
<!--NeedCopy-->

Para resolver este problema:

  1. Deshabilita SELinux realizando el siguiente cambio en /etc/selinux/config.

    SELINUX=disabled

  2. Reinicia el VDA.