Linux Virtual Delivery Agent

Crear VDA unidos a un dominio mediante Easy Install

Importante:

  • Para instalaciones nuevas, le recomendamos que consulte este artículo para una instalación rápida. En este artículo, se describe cómo instalar y configurar Linux VDA con Easy Install. Easy Install ahorra tiempo y trabajo y es menos propenso a errores que la instalación manual. Así, le ayuda a configurar un entorno de ejecución de Linux VDA mediante la instalación de los paquetes necesarios y la personalización automática de los archivos de configuración.

  • Para crear VDA no unidos a ningún dominio, debe usar Machine Creation Services (MCS). Para obtener más información, consulte Crear Linux VDA no unidos a ningún dominio.

  • Para obtener información sobre las funciones disponibles para los VDA que no están unidos a ningún dominio, vaya a VDA que no están unidos a ningún dominio.

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

Recopile la siguiente información de configuración necesaria para Easy Install:

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

Importante:

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

Consideraciones

  • El nombre de grupo de trabajo es, de forma predeterminada, el nombre de dominio. Para personalizar el grupo de trabajo en el entorno, lleve a cabo lo siguiente:

    a. Cree el archivo /tmp/ctxinstall.conf en la máquina Linux VDA.
    b. Agregue la línea “workgroup=\<su grupo de trabajo\>” al archivo y guarde los cambios.

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

    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, haga lo siguiente:

    a. Abra Herramientas administrativas en el controlador del dominio.
    b. Seleccione Sitios y servicios de Active Directory.
    c. Agregue una dirección de subred adecuada para Subredes.

  • Para unir su VDA a una unidad organizativa específica, haga lo siguiente:

    1. Asegúrese de que la unidad organizativa específica existe en el controlador de dominio.

      La siguiente captura de pantalla le sirve de ejemplo de unidad organizativa.

      Un ejemplo de OU

    2. Cree el archivo /tmp/ctxinstall.conf en el VDA.
    3. Agregue la línea ou=\<su unidad organizativa\> al archivo /tmp/ctxinstall.conf.

      Los valores de unidad organizativa varían con los diferentes métodos de AD. Esta tabla refleja los nombres de unidades organizativos de ejemplo de la captura de pantalla anterior. Puede usar los nombres que quiera para las unidades organizativas de su 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"
  • Easy Install es compatible con IPv6 puro a partir de Linux VDA 7.16. Se aplican las siguientes condiciones previas y limitaciones:

    • Debe configurar el repositorio de Linux para que la máquina pueda descargar los paquetes requeridos en redes de IPv6 puro.
    • Centrify no se admite en redes únicamente de IPv6.

    Nota:

    Si la red es solo de IPv6 y todas las entradas tienen el formato adecuado de IPv6, el VDA se registra en el Delivery Controller a través de IPv6. Si la red tiene una combinació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 elige Centrify como el método para unirse a un dominio, el script ctxinstall.sh requiere el paquete de Centrify. ctxinstall.sh puede obtener el paquete de Centrify de dos formas:

  • Si elige PBIS como el método para unirse a un dominio, el script ctxinstall.sh requiere el paquete de PBIS. ctxinstall.sh puede obtener el paquete de PBIS de dos formas:

    • Easy Install ayuda a descargar el paquete de PBIS desde Internet automáticamente. Las direcciones URL especificadas para cada distribución son:

      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

    • Obtenga una versión específica del paquete PBIS desde Internet. Para ello, cambie la línea “pbisDownloadPath” del archivo /opt/Citrix/VDA/sbin/ctxinstall.sh para designar la dirección URL del paquete PBIS.

      La siguiente captura de pantalla le sirve de ejemplo:

      Obtener una versión específica del paquete PBIS

Paso 2: Prepare el hipervisor

Se necesitan algunos cambios cuando se ejecuta Linux VDA como una máquina virtual en un hipervisor admitido. Haga estos cambios en función de la plataforma de hipervisor que se use. No se requieren cambios si se está ejecutando la máquina Linux sin sistema operativo.

Corregir la sincronización horaria en Citrix Hypervisor

Cuando está habilitada la función de sincronización horaria de Citrix Hypervisor en cada VM de Linux paravirtualizada, hay problemas con NTP y Citrix Hypervisor. Ambos intentan gestionar el reloj del sistema. Para evitar la desincronización del reloj respecto a los demás servidores, compruebe que el reloj del sistema de cada invitado de Linux debe sincronizarse con NTP. Por eso, es necesario inhabilitar la sincronización horaria del host. No se requieren cambios en el modo HVM.

Si se ejecuta un kernel Linux paravirtualizado con Citrix VM Tools instalado, puede comprobar si la función de sincronización horaria de Citrix Hypervisor está presente y habilitada desde la máquina virtual de Linux:

su -

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

Este comando devuelve 0 o 1:

  • 0. La funcionalidad de sincronización horaria está habilitada, por lo que se debe inhabilitar.
  • 1. La funcionalidad de sincronización horaria está inhabilitada, por lo que no es necesaria ninguna otra acción.

Si el archivo /proc/sys/xen/independent_wallclock no está presente, no es necesario que siga estos pasos.

Si se habilita, inhabilite la función de sincronización horaria con un 1 en el archivo:

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

Para que este cambio sea permanente y persista después de reiniciar la máquina, modifique el archivo /etc/sysctl.conf y agregue la línea:

xen.independent_wallclock = 1

Para comprobar los cambios, reinicie el sistema:

su -

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

Este comando devuelve el valor 1.

Corregir la sincronización horaria en Microsoft Hyper-V

Las máquinas virtuales Linux que tienen instalados los servicios de integración de Hyper-V para Linux pueden aplicar la funcionalidad de sincronización horaria de Hyper-V para usar la hora del sistema operativo del host. Para que el reloj del sistema no se desincronice, esta funcionalidad se debe habilitar junto con los servicios NTP.

Desde el sistema operativo de administración:

  1. Abra la consola del Administrador de Hyper-V.
  2. Para ver la configuración de una máquina virtual Linux, seleccione Integration Services.
  3. Compruebe que Time synchronization está seleccionado.

Nota:

Este método difiere de Citrix Hypervisor y VMware, donde se inhabilita la sincronización horaria del host para evitar conflictos con NTP. La sincronización horaria de Hyper-V puede coexistir y complementarse con la sincronización horaria de NTP.

Corregir la sincronización horaria en ESX y ESXi

Cuando la función de sincronización horaria de VMware está habilitada en cada VM de Linux paravirtualizada, hay problemas con el protocolo NTP y el hipervisor. Ambos intentan sincronizar el reloj del sistema. Para evitar la desincronización del reloj respecto a los demás servidores, el reloj del sistema de cada invitado Linux debe sincronizarse con NTP. Por eso, es necesario inhabilitar la sincronización horaria del host.

Si ejecuta un kernel Linux paravirtualizado con VMware Tools instalado:

  1. Abra vSphere Client.
  2. Modifique la configuración de la máquina virtual Linux.
  3. En el cuadro de diálogo Propiedades de la máquina virtual, abra la ficha Opciones.
  4. Seleccione VMware Tools.
  5. En el cuadro Advanced, desmarque la casilla Synchronize guest time with host.

Paso 3: Instale .NET Runtime 6.0 como requisito previo

Antes de instalar Linux VDA, instale .NET Runtime 6.0 conforme a las instrucciones de https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

Después de instalar .NET Runtime 6.0, ejecute el comando which dotnet para encontrar su ruta de runtime.

En función del resultado del comando, establezca la ruta binaria de .NET Runtime. Por ejemplo, si el resultado del comando es /aa/bb/dotnet, use /aa/bb como ruta binaria de .NET.

Paso 4: Descargue el paquete de Linux VDA

Vaya a la página de descargas de Citrix Virtual Apps and Desktops. Expanda la versión correcta de Citrix Virtual Apps and Desktops y haga clic en Componentes para descargar el paquete de Linux VDA correspondiente a su distribución Linux.

Paso 5: Instale el paquete de Linux VDA

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

Para distribuciones RHEL/CentOS/Rocky Linux:

sudo yum -y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Nota:

Tras instalar Linux VDA en RHEL 8.x alojado en GCP, es posible que se pierda la conexión Ethernet y que no se pueda acceder a Linux VDA después de reiniciar la máquina virtual. Para solucionar el problema, ejecute estos comandos antes de reiniciar la máquina virtual:

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, agregue la línea deb http://deb.debian.org/debian/ oldstable main al archivo /etc/apt/sources.list.

Para las distribuciones SUSE:

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

Paso 6: Instale controladores NVIDIA GRID

Para habilitar HDX 3D Pro, debe instalar los controladores NVIDIA GRID en el hipervisor y en las máquinas VDA.

Para instalar y configurar el administrador de GPU virtual de NVIDIA GRID (el controlador de hosts) en los hipervisores específicos, consulte estas guías:

Para instalar y configurar los controladores de VM invitada de NVIDIA GRID, siga estos pasos generales:

  1. Asegúrese de que la máquina virtual invitada esté apagada.
  2. En el panel de control del hipervisor, asigne una GPU a la VM.
  3. Inicie la VM.
  4. Instale el controlador de VM invitada en la VM.

Paso 7: Configure el entorno en tiempo de ejecución para completar la instalación

Después de instalar el paquete de Linux VDA, configure el entorno de ejecución mediante el script ctxinstall.sh. Puede ejecutar el script en modo interactivo o en modo silencioso.

Nota:

Antes de configurar el entorno en tiempo de ejecución, asegúrese de que la configuración regional en_US.UTF-8 esté instalada en el sistema operativo. Si la configuración regional no está disponible en su sistema operativo, ejecute el comando sudo locale-gen en_US.UTF-8. Para Debian, modifique el archivo /etc/locale.gen quitando la marca de comentario de la línea # en_US.UTF-8 UTF-8 y, a continuación, ejecute el comando sudo locale-gen.

Modo interactivo:

Hay dos formas de utilizar Easy Install en modo interactivo:

  • Ejecute el comando sudo /opt/Citrix/VDA/sbin/ctxinstall.sh y escriba el parámetro correspondiente en cada mensaje de la interfaz de línea de comandos.
  • Ejecute el comando /opt/Citrix/VDA/bin/easyinstall en el entorno de escritorio del VDA y, a continuación, siga las instrucciones de la GUI de Easy Install.

GUI de Easy Install

La GUI de Easy Install le guía a través de estas operaciones:

  • Comprobar el entorno del sistema
  • Instalar dependencias
  • Unir el VDA a un dominio específico
  • Configurar el entorno de ejecución

Modo silencioso:

Para usar Easy Install de manera silenciosa, establezca las siguientes variables de entorno antes de ejecutar ctxinstall.sh.

  • CTX_EASYINSTALL_HOSTNAME=host-name: El nombre de host del servidor Linux VDA.
  • CTX_EASYINSTALL_DNS=ip-address-of-dns: La dirección IP de DNS.
  • CTX_EASYINSTALL_NTPS=address-of-ntps: La dirección IP o cadena de nombre del servidor NTP.
  • CTX_EASYINSTALL_DOMAIN=domain-name: El nombre NetBIOS del dominio.
  • CTX_EASYINSTALL_REALM=realm-name: El nombre del territorio 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 de dominio; se utiliza para unirse al dominio.
  • CTX_EASYINSTALL_PASSWORD=password: Indica la contraseña del usuario de dominio; se utiliza para unirse al dominio.

El script ctxsetup.sh utiliza las siguientes variables:

  • CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N: Linux VDA permite especificar un nombre de Delivery Controller mediante un registro CNAME de DNS.
  • CTX_XDL_DDC_LIST=’list-ddc-fqdns’: Linux VDA necesita una lista de nombres de dominio completo de Delivery Controllers, separados por espacios, para registrarse en un Delivery Controller. Se debe especificar al menos un nombre FQDN o CNAME.
  • CTX_XDL_VDA_PORT=port-number: Linux VDA 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. Puede abrir automáticamente los puertos necesarios (de forma predeterminada, los puertos 80 y 1494) en el firewall del sistema de Linux Virtual Desktop.
  • CTX_XDL_HDX_3D_PRO = Y | N: Linux VDA admite HDX 3D Pro, un conjunto de tecnologías para la aceleración de la GPU que se ha diseñado para optimizar la virtualización de aplicaciones con gráficos sofisticados. 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: Indica si configurar la máquina a partir de un modelo de entrega de escritorios dedicados (VDI) o un modelo de entrega de escritorios compartidos alojados. Para entornos HDX 3D Pro, establézcalo en Y.
  • CTX_XDL_SITE_NAME=dns-name: Linux VDA detecta los servidores LDAP mediante DNS. Para limitar los resultados de búsqueda de DNS a un sitio local, especifique un nombre de sitio DNS. Si no es necesario, establézcalo en <none>.
  • CTX_XDL_LDAP_LIST=’list-ldap-servers’: Linux VDA consulta a DNS para detectar servidores LDAP. Sin embargo, si el DNS no puede proporcionar registros del servicio LDAP, se puede suministrar una lista de nombres FQDN de LDAP, separados por espacios, con los puertos de LDAP. Por ejemplo, ad1.miempresa.com:389. Si no es necesario, establézcalo en <none>.
  • CTX_XDL_SEARCH_BASE=search-base-set: Linux VDA consulta a LDAP a partir de una base de búsqueda establecida en la raíz del dominio de Active Directory (por ejemplo, DC=miempresa,DC=com). Para mejorar el rendimiento de la búsqueda, puede especificar otra base de búsqueda (por ejemplo, OU=VDI,DC=miempresa,DC=com). Si no es necesario, establézcalo 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. Linux VDA no admite las directivas de grupo de AD, pero usted puede suministrar 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 alguna dirección de servidor está eliminada, complete el espacio en blanco correspondiente con la cadena de texto <none> y no cambie el orden de las direcciones de servidor.
  • CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime: La ruta de instalación de .NET Runtime 6.0 para admitir el nuevo servicio de agente intermediario (ctxvda). La ruta predeterminada es /usr/bin.
  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/mate: Especifica el entorno de escritorio GNOME o MATE que se va a utilizar en las sesiones. Si deja la variable sin especificar, se utilizará el escritorio instalado actualmente en el VDA. Sin embargo, si el escritorio instalado actualmente es MATE, debe establecer el valor de la variable como mate.

    También puede cambiar el entorno de escritorio del usuario de una sesión de destino mediante estos pasos:

    1. Cree un archivo .xsession o .Xclients en el directorio $HOME/<nombre de usuario\> del VDA. Si utiliza Amazon Linux 2, cree un archivo .Xclients. Si usa otras distribuciones, cree un archivo .xsession.
    2. Modifique el archivo .xsession o .Xclients para especificar un entorno de escritorio basado en distribuciones.

      • Para escritorios 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 escritorios 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 escritorios GNOME en Amazon Linux 2, Ubuntu y Debian

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         exec gnome-session  
         fi  
        
    3. Comparta 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 cuando se complete su configuración.
  • 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 algún parámetro no se ha definido, la instalación revierte al modo interactivo, con una pregunta para que el usuario introduzca una respuesta. Cuando todos los parámetros ya están configurados mediante las variables de entorno, el script ctxinstall.sh sigue solicitando la entrada manual por parte del usuario de la ruta de instalación de .NET Runtime 6.0.

En el modo silencioso, se deben 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-->

Cuando ejecute el comando sudo, escriba la opción -E para pasar las variables de entorno existentes al nuevo shell que se crea. Se recomienda crear un archivo de script shell a partir de los comandos anteriores con #!/bin/bash en la primera línea.

También puede especificar todos los parámetros con un único 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: Ejecute XDPing

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

Paso 9: Ejecute Linux VDA

Iniciar Linux VDA:

Para iniciar los servicios de Linux VDA:

sudo /sbin/service ctxhdx start

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

Detener 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 ha detenido.

Reiniciar 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 de 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: Cree catálogos de máquinas

El proceso de creación de catálogos de máquinas y de incorporación de máquinas Linux es similar al proceso habitual de VDA para Windows. Para ver una descripción detallada sobre cómo completar estas tareas, consulte Crear catálogos de máquinas y Administrar catálogos de máquinas.

Existen restricciones que diferencian el proceso de creación de catálogos de máquinas con VDA para Windows del mismo proceso con VDA para Linux:

  • 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 VDI dedicados.
  • No mezcle máquinas con agentes VDA para Windows y Linux en el mismo catálogo.

Nota:

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

Sugerencia:

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

Paso 11: Cree grupos de entrega

El proceso de creación de un grupo de entrega y de incorporación de catálogos de máquinas con agentes VDA para Linux es muy similar al proceso de máquinas con agentes VDA para Windows. Para ver una descripción detallada sobre cómo completar estas tareas, consulte Crear grupos de entrega.

Se aplican las siguientes restricciones para crear grupos de entrega que contengan catálogos de máquinas con Linux VDA:

  • Los grupos y usuarios de AD que seleccione deben estar correctamente configurados para poder iniciar sesión en las máquinas con VDA para Linux.
  • No permita que usuarios no autenticados (anónimos) inicien sesión.
  • No mezcle el grupo de entrega con catálogos de máquinas que contienen máquinas Windows.

Importante:

Se admite la publicación de aplicaciones con Linux VDA 1.4 y versiones posteriores. Linux VDA no admite la entrega de escritorios ni 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

Use la información de esta sección para solucionar los problemas que puedan surgir en el uso de la función Easy Install.

Falla el proceso de unirse a un dominio mediante SSSD

Puede producirse un error al intentar unirse a un dominio, con un resultado parecido al siguiente (verifique los registros para la impresión 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 solucionar este problema:

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

Las sesiones de escritorio en Ubuntu muestran una pantalla gris

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

Para solucionar este problema:

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

Los intentos de iniciar sesiones de escritorio en Ubuntu fallan porque falta el directorio home

/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 raíz de este problema es que el directorio home no se crea para el administrador de dominio.

Para solucionar este problema:

  1. En una línea de comandos, escriba pam-auth-update.

  2. En el cuadro de diálogo resultante, compruebe si Create home directory on login está seleccionado.

    Error al iniciar las sesiones de escritorio de Ubuntu

La sesión no se inicia o finaliza rápidamente con el error 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 bien, para distribuciones de Ubuntu, use los registros de /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 tienen efecto hasta que se reinicia la máquina. Cuando aparecen mensajes de error de dbus en los registros, se recomienda reiniciar el sistema e intentarlo de nuevo.

SELinux impide que SSHD acceda al directorio particular (home)

El usuario puede lanzar 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 solucionar este problema:

  1. Inhabilite SELinux cambiando lo siguiente en /etc/selinux/config

    SELINUX=disabled

  2. Reinicie el VDA.