Linux Virtual Delivery Agent

Instalación rápida mediante Easy Install (recomendado)

Importante:

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

  • Para crear VDA no unidos a un dominio, debes usar Machine Creation Services (MCS). Para obtener más información, consulta Usar Machine Creation Services (MCS) para crear máquinas virtuales Linux.

  • Para obtener información sobre las funciones disponibles para los VDA no unidos a un dominio, ve a VDA 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 Easy Install:

  • 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 dominio Kerberos: el nombre de dominio 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, de forma predeterminada, 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 puramente IPv6. 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 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. Consulta la siguiente tabla.

    • 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 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 admite IPv6 puro 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 puramente IPv6 y toda tu entrada está en 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 en que ctxinstall.sh puede obtener 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 en que ctxinstall.sh puede obtener el paquete de PBIS:

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

      Amazon Linux 2, CentOS 7, RHEL 8, RHEL 7, 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/9.1.0/pbis-open-9.1.0.551.linux.x86_64.deb.sh

  • Obtén una versión específica del paquete PBIS de Internet. Para ello, modifica las líneas “pbisDownloadRelease” y “pbisDownloadExpectedSHA256” en el archivo /opt/Citrix/VDA/sbin/ctxinstall.sh.

    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 en uso. No se requieren cambios si ejecutas la máquina Linux en hardware físico.

Corrige la sincronización horaria en Citrix Hypervisor™

Cuando la función de sincronización horaria de Citrix Hypervisor está habilitada, dentro de cada VM Linux paravirtualizada, experimentarás problemas con NTP y Citrix Hypervisor. Ambos intentan administrar 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 horaria del host. No se requieren cambios en el modo HVM.

Si ejecutas un kernel de Linux paravirtualizado con Citrix VM Tools instalado, puedes comprobar si la función de sincronización horaria de Citrix Hypervisor está presente y habilitada desde la VM Linux:

su -

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

Este comando devuelve 0 o 1:

  • 0 - La función de sincronización horaria está habilitada y debe deshabilitarse.
  • 1 - La función de sincronización horaria 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 horaria 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, edita 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 horaria en Microsoft Hyper-V

Las VM Linux con los Servicios de integración de Linux de Hyper-V instalados pueden aplicar la función de sincronización horaria de Hyper-V para usar la hora del sistema operativo host. Para garantizar 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.
  2. Para la configuración de una VM Linux, selecciona Servicios de integración.
    1. Asegúrate de que la opción Sincronización horaria esté seleccionada.
  • Nota:

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

  • Corrige la sincronización horaria en ESX y ESXi

  • Cuando la función de sincronización horaria de VMware está habilitada, dentro de cada VM Linux paravirtualizada, experimentarás 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 horaria del host.

  • Si ejecutas un kernel de Linux paravirtualizado con VMware Tools instalado:

    1. Abre vSphere Client.
    1. Edita la configuración de la VM 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 la ruta binaria de .NET.

  • Paso 4: Descarga el paquete del 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 del VDA de Linux que coincida con tu distribución de Linux.

Paso 5: Instala el paquete del VDA de Linux

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

Para distribuciones RHEL y CentOS:

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

Nota:

Para RHEL y CentOS, instala el repositorio EPEL antes de poder instalar el VDA de Linux correctamente. Para obtener información sobre cómo instalar EPEL, consulta las instrucciones en https://docs.fedoraproject.org/en-US/epel/.

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 11.3, agrega la línea deb http://deb.debian.org/debian/ bullseye main al archivo /etc/apt/sources.list.
    • Para instalar las dependencias necesarias para una distribución Debian 10.9, 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: Instalar los controladores NVIDIA GRID

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

Para instalar y configurar NVIDIA GRID Virtual GPU Manager (el controlador de 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)
    -  [VMware ESX](https://docs.nvidia.com/vgpu/latest/grid-software-quick-start-guide/index.html#installing-grid-vgpu-manager-vmware-vsphere)
    -  [Nutanix AHV](https://portal.nutanix.com/page/documents/details?targetId=AHV-Admin-Guide-v5_5:ahv-nvidia-grid-vgpu-host-drivers-install-t.html)

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 VM invitada en la VM.

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

Después de instalar el paquete VDA de Linux, configura el entorno de ejecución mediante 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 correspondiente 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:

  • Comprobar el entorno del sistema
  • Instalar dependencias
    • Unir el VDA a un dominio especificado
    • Configurar 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=nombre-de-host – Indica el nombre de host del servidor VDA de Linux.
  • CTX_EASYINSTALL_DNS=dirección-IP-de-DNS – Dirección IP de DNS.
  • CTX_EASYINSTALL_NTPS=dirección-de-ntps – Dirección IP o nombre de cadena del servidor NTP.
  • CTX_EASYINSTALL_DOMAIN=nombre-de-dominio – El nombre NetBIOS del dominio.
  • CTX_EASYINSTALL_REALM=nombre-de-realm – El nombre de realm de Kerberos.
  • CTX_EASYINSTALL_FQDN=nombre-fqdn-de-ad
  • CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis – Indica el método de integración de Active Directory.
  • CTX_EASYINSTALL_USERNAME=nombre-de-usuario-de-dominio – Indica el nombre del usuario de dominio; se usa para unirse al dominio.
  • CTX_EASYINSTALL_PASSWORD=contraseña – Especifica la contraseña del usuario de 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 DNS CNAME.
  • CTX_XDL_DDC_LIST=’lista-de-fqdns-ddc’ – El VDA de Linux requiere una lista de nombres de dominio completos (FQDN) de Delivery Controller separados por espacios para registrarse en un Delivery Controller. Se debe especificar al menos un FQDN o CNAME.
  • CTX_XDL_VDA_PORT=número-de-puerto – 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 VDA de Linux requieren que se permitan las conexiones de red entrantes a través del firewall del sistema. Puedes abrir automáticamente los puertos necesarios (por defecto, los puertos 80 y 1494) 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=nombre-dns – El VDA de Linux detecta servidores LDAP a través de DNS. Para limitar los resultados de la búsqueda DNS a un sitio local, especifica un nombre de sitio DNS. Si no es necesario, establece el valor en <none>.
  • CTX_XDL_LDAP_LIST=’lista-de-servidores-ldap’ – El VDA de Linux consulta DNS para detectar servidores LDAP. Si DNS no puede proporcionar registros de servicio LDAP, puedes proporcionar una lista de FQDN de LDAP con puertos LDAP separados por espacios. Por ejemplo, ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268. Si especificas el número de puerto LDAP como 389, el VDA de Linux consulta cada servidor LDAP en el dominio especificado en modo de sondeo. Si hay X número de directivas e Y número de servidores LDAP, el VDA de Linux realiza un total de X multiplicado por Y consultas. Si el tiempo de sondeo supera el umbral, los inicios de sesión de la sesión podrían fallar. Para habilitar consultas LDAP más rápidas, habilita el Catálogo global en un controlador de dominio y especifica el número de puerto LDAP relevante como 3268. Esta variable se establece en <none> por defecto.
  • CTX_XDL_SEARCH_BASE=conjunto-de-base-de-búsqueda – El VDA de Linux consulta LDAP a través de un conjunto de base de búsqueda 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, establece el valor en <none>.
  • CTX_XDL_FAS_LIST=’lista-de-servidores-fas’ – Los servidores de Federated Authentication Service (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. Para comunicarte correctamente con los servidores FAS, asegúrate de añadir un número de puerto coherente con el especificado en los servidores FAS, por ejemplo, CTX_XDL_FAS_LIST=’url_servidor_fas_1:número_de_puerto; url_servidor_fas_2: número_de_puerto; url_servidor_fas_3: número_de_puerto’.
  • CTX_XDL_DOTNET_RUNTIME_PATH=ruta-para-instalar-dotnet-runtime – La ruta para instalar .NET Runtime 6.0 para admitir el nuevo servicio de agente de intermediación (ctxvda). La ruta predeterminada es /usr/bin.
  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate – Especifica el entorno de escritorio GNOME, GNOME Classic o MATE que se usará en las sesiones. Si dejas la variable sin especificar, se usa el escritorio instalado actualmente en el VDA. Sin embargo, si el escritorio instalado actualmente 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 siguiendo estos pasos:

  1. Cree un archivo .xsession o .Xclients en el directorio $HOME/<nombre_de_usuario> en el VDA. Si utiliza Amazon Linux 2, cree un archivo .Xclients. Si utiliza otras distribuciones, cree un archivo .xsession.
    1. Edite 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 Classic en Amazon Linux 2, CentOS, Debian, RHEL, SUSE 15 y Ubuntu**
    
             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, CentOS, Debian, RHEL, SUSE 15 y Ubuntu**
    
  • GSESSION=”$(type -p gnome-session)” if [ -n “$GSESSION” ]; then exec gnome-session fi

    1. 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 la configuración está completa.
  • CTX_XDL_TELEMETRY_SOCKET_PORT – El puerto de socket para la escucha de Citrix Scout. El puerto predeterminado es 7503.
  • CTX_XDL_TELEMETRY_PORT – El puerto para la comunicación con Citrix Scout. El puerto predeterminado es 7502.

Si no se establece ningún parámetro, la instalación revierte al modo interactivo, solicitando la 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, debes ejecutar los siguientes comandos para establecer las variables de entorno y luego 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 | gnome-classic | 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, escribe la opción -E para pasar las variables de entorno existentes al nuevo shell que crea. Te recomendamos que crees un archivo de script de shell a partir de los comandos anteriores con #!/bin/bash como primera línea.

Alternativamente, puedes especificar todos los parámetros usando 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|gnome-classic|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: Ejecuta XDPing

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

Paso 9: Ejecuta el Linux VDA

Inicia el Linux VDA:

Para iniciar los servicios de Linux VDA:

sudo /sbin/service ctxhdx start

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

Detén 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, ejecuta el comando service ctxmonitorservice stop para detener el demonio del servicio de monitorización. De lo contrario, el demonio del servicio de monitorización reiniciará los servicios que detuviste.

Reinicia 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-->

Comprueba 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: Crea catálogos de máquinas en Citrix Virtual Apps o Citrix Virtual Desktops™

El proceso para crear catálogos de máquinas y agregar máquinas Linux VDA es similar al enfoque tradicional de Windows VDA. Para una descripción más detallada de cómo completar estas tareas, consulta 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, selecciona:
    • 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 escritorio dedicado VDI.
  • No mezcles 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 un “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.

Consejo:

Si quitas y vuelves a unir una máquina al dominio de Active Directory, debes quitar y volver a agregar la máquina al catálogo de máquinas.

Paso 11: Crea grupos de entrega en Citrix Virtual Apps™ o Citrix Virtual Desktops

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 una descripción más detallada de cómo completar estas tareas, consulta Crear grupos de entrega.

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

  • Asegúrate de que los usuarios y grupos de AD que selecciones se hayan configurado correctamente para iniciar sesión en las máquinas Linux VDA.
  • No permitas el inicio de sesión de usuarios no autenticados (anónimos).
  • No mezcles 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, consulta Citrix Virtual Apps and Desktops 7 2206.

Solución de problemas

Usa la información de esta sección para solucionar problemas que puedan surgir al usar la función de instalación fácil.

Unirse a un dominio usando SSSD falla

Puede ocurrir un error al intentar unirse a un dominio, con una salida similar a la siguiente (verifica 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 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 un directorio de inicio ausente

/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 de dominio.

Para resolver este problema:

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

  2. En el cuadro de diálogo resultante, verifica que la opción Crear inicio de sesión de directorio principal esté seleccionada.

    Ubuntu no puede iniciar la sesión

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 las 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 el sistema. 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.