Linux Virtual Delivery Agent

Easy Install を使用したクイックインストール (推奨)

重要:

新規インストールの場合、このドキュメントを参照してクイックインストールを行うことをお勧めします。このドキュメントでは、Easy Install を使用して Linux VDA をインストールおよび構成する方法について順を追って説明します。Easy Install は、手動インストールよりも時間と労力を節約でき、エラーが発生しにくいです。必要なパッケージをインストールし、構成ファイルを自動的にカスタマイズすることで、Linux VDA の実行環境をセットアップするのに役立ちます。

サポートされるディストリビューション

  Winbind SSSD Centrify PBIS
RHEL 7.7 Yes Yes Yes Yes
RHEL 6.10 Yes Yes Yes No
CentOS 7.7 Yes Yes Yes Yes
CentOS 6.10 Yes Yes Yes No
Ubuntu 18.04 Yes Yes Yes Yes
Ubuntu 16.04 Yes Yes Yes Yes
SUSE 12.3 Yes No Yes No

Easy Install の使用

この機能を使用するには、次の手順を実行します。

    1. 構成情報と Linux マシンを準備します。
    1. Linux VDA パッケージをインストールします。
  • Citrix Virtual Apps and Desktops のダウンロードページにアクセスします。Citrix Virtual Apps and Desktops の適切なバージョンを展開します。Components をクリックして、お使いの Linux ディストリビューションに一致する Linux VDA パッケージをダウンロードします。
    1. Linux VDA のインストールを完了するために、ランタイム環境をセットアップします。
  • 手順 1:構成情報と Linux マシンの準備

Easy Install に必要な以下の構成情報を収集します。

  • ホスト名 - Linux VDA をインストールするマシンのホスト名
  • ドメインネームサーバーの IP アドレス
  • NTP サーバーの IP アドレスまたは文字列名
  • ドメイン名 - ドメインの NetBIOS 名
  • レルム名 - Kerberos レルム名
  • ドメインの完全修飾ドメイン名 (FQDN)

重要:

  • Linux VDA をインストールするには、リポジトリが Linux マシンに正しく追加されていることを確認してください。
  • セッションを起動するには、X Window システムとデスクトップ環境がインストールされていることを確認してください。

考慮事項

  • ワークグループ名は、デフォルトでドメイン名です。環境内でワークグループをカスタマイズするには、次の手順を実行します。

    • a. Linux VDA マシン上に /tmp/ctxinstall.conf ファイルを作成します。
    • b. ファイルに workgroup=<your workgroup> の行を追加し、変更を保存します。
  • Centrify は純粋な IPv6 DNS 構成をサポートしていません。adclient が AD サービスを適切に検出するには、/etc/resolv.conf に IPv4 を使用する DNS サーバーが少なくとも 1 つ必要です。

    ログ:

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

    この問題は Centrify とその構成に固有のものです。この問題を解決するには、次の手順を実行します。

    a. ドメインコントローラーで 管理ツール を開きます。 b. Active Directory サイトとサービス を選択します。 c. サブネット に適切なサブネットアドレスを追加します。

    • Easy Install は Linux VDA 7.16 以降、純粋な IPv6 をサポートしています。以下の前提条件と制限が適用されます。

    • マシンが純粋な IPv6 ネットワーク経由で必要なパッケージをダウンロードできるように、Linux リポジトリを構成する必要があります。
    • Centrify は純粋な IPv6 ネットワークではサポートされていません。

    注:

    ネットワークが純粋な IPv6 であり、すべての入力が適切な IPv6 形式である場合、VDA は IPv6 を介して Delivery Controller™ に登録されます。ネットワークが IPv4 と IPv6 のハイブリッド構成である場合、最初の DNS IP アドレスのタイプによって、登録に IPv4 または IPv6 のどちらが使用されるかが決まります。

  • ドメインに参加する方法として Centrify を選択した場合、ctxinstall.sh スクリプトには Centrify パッケージが必要です。ctxinstall.sh が Centrify パッケージを取得する方法は 2 つあります。

  • ドメインに参加する方法として PBIS を選択した場合、ctxinstall.sh スクリプトには PBIS パッケージが必要です。ctxinstall.sh が PBIS パッケージを取得する方法は 2 つあります。

手順 2:ハイパーバイザーの準備

サポートされているハイパーバイザー上で Linux VDA を仮想マシンとして実行する場合、いくつかの変更が必要です。使用中のハイパーバイザープラットフォームに応じて、以下の変更を行ってください。Linux マシンをベアメタルハードウェアで実行している場合、変更は不要です。

Citrix Hypervisor™ での時刻同期の修正

  • Citrix Hypervisorの時刻同期機能が有効になっている場合、各パラバーチャライズドLinux VM内でNTPとCitrix Hypervisorの両方がシステムクロックを管理しようとするため、問題が発生します。クロックが他のサーバーと同期しなくなるのを避けるため、各Linuxゲスト内のシステムクロックがNTPと同期していることを確認してください。この場合、ホストの時刻同期を無効にする必要があります。HVMモードでは変更は不要です。

一部のLinuxディストリビューションでは、Citrix VM ToolsがインストールされたパラバーチャライズドLinuxカーネルを実行している場合、Linux VM内からCitrix Hypervisorの時刻同期機能が存在し、有効になっているかどうかを確認できます。

su -

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

このコマンドは0または1を返します。

  • 0 - 時刻同期機能が有効になっており、無効にする必要があります。
  • 1 - 時刻同期機能は無効になっており、それ以上の操作は不要です。

/proc/sys/xen/independent_wallclockファイルが存在しない場合、以下の手順は不要です。

有効になっている場合は、ファイルに1を書き込むことで時刻同期機能を無効にします。

sudo echo 1 > /proc/sys/xen/independent_wallclock
<!--NeedCopy-->
  • この変更を再起動後も永続的にするには、/etc/sysctl.confファイルを編集し、次の行を追加します。

xen.independent_wallclock = 1

これらの変更を確認するには、システムを再起動します。

su -

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

このコマンドは値1を返します。

Microsoft Hyper-Vでの時刻同期の修正

Hyper-V Linux Integration ServicesがインストールされているLinux VMは、Hyper-Vの時刻同期機能を使用してホストオペレーティングシステムの時刻を使用できます。システムクロックの精度を維持するためには、この機能をNTPサービスと並行して有効にする必要があります。

管理オペレーティングシステムから:

  1. Hyper-Vマネージャーコンソールを開きます。
    1. Linux VMの設定で、統合サービスを選択します。
    1. 時刻同期が選択されていることを確認します。
  • 注:

  • このアプローチは、NTPとの競合を避けるためにホストの時刻同期が無効になっているVMwareやCitrix Hypervisorとは異なります。Hyper-Vの時刻同期は、NTP時刻同期と共存し、補完することができます。

  • ESXおよびESXiでの時刻同期の修正

VMwareの時刻同期機能が有効になっている場合、各パラバーチャライズドLinux VM内でNTPとハイパーバイザーの両方がシステムクロックを同期しようとするため、問題が発生します。クロックが他のサーバーと同期しなくなるのを避けるため、各Linuxゲスト内のシステムクロックがNTPと同期していることを確認してください。この場合、ホストの時刻同期を無効にする必要があります。

  • VMware ToolsがインストールされたパラバーチャライズドLinuxカーネルを実行している場合:

    1. vSphere Clientを開きます。
    1. Linux VMの設定を編集します。
    1. 仮想マシンのプロパティダイアログで、オプションタブを開きます。
    1. VMware Toolsを選択します。
    1. 詳細設定ボックスで、ゲスト時刻をホストと同期のチェックを外します。
  • ステップ3:前提条件としての.NET Core Runtimeのインストール

  • Linux VDAをインストールする前に、https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managersの指示に従って.NET Core Runtimeをインストールします。

  • 1912 LTSRの初期リリース、CU1、およびCU2の場合は、.NET Core Runtime 2.1をインストールします。
    • CU3以降のリリースでは、.NET Core Runtime 3.1をインストールします。

.NET Core Runtimeのインストール後、which dotnetコマンドを実行してランタイムパスを見つけます。

コマンド出力に基づいて、.NET Coreランタイムのバイナリパスを設定します。たとえば、コマンド出力が/aa/bb/dotnetの場合、/aa/bbを.NETバイナリパスとして使用します。

ステップ4:Linux VDAパッケージのダウンロード

Citrix Virtual Apps and Desktopsダウンロードページにアクセスします。適切なバージョンのCitrix Virtual Apps and Desktopsを展開し、コンポーネントをクリックして、お使いのLinuxディストリビューションに一致するLinux VDAパッケージをダウンロードします。

ステップ5:Linux VDAパッケージのインストール

Linux VDAの環境をセットアップするには、以下のコマンドを実行します。

RHELおよびCentOSディストリビューションの場合:

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

Ubuntuディストリビューションの場合:

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

SUSEディストリビューションの場合:

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

ステップ6:NVIDIA GRIDドライバーのインストール

HDX™ 3D Proを有効にするには、ハイパーバイザーとVDAマシンにNVIDIA GRIDドライバーをインストールする必要があります。

特定のハイパーバイザーにNVIDIA GRID Virtual GPU Manager(ホストドライバー)をインストールおよび構成するには、以下のガイドを参照してください。

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

NVIDIA GRIDゲストVMドライバーをインストールおよび構成するには、以下の一般的な手順を実行します。

  1. ゲストVMがシャットダウンされていることを確認します。
  2. ハイパーバイザーのコントロールパネルで、VMにGPUを割り当てます。
  3. VMを起動します。
  4. VMにゲストVMドライバーをインストールします。

ステップ7:インストールを完了するためのランタイム環境のセットアップ

注:

ランタイム環境をセットアップする前に、en_US.UTF-8ロケールがOSにインストールされていることを確認してください。ロケールがOSで利用できない場合は、sudo locale-gen en_US.UTF-8コマンドを実行します。

Linux VDAパッケージをインストールした後、ctxinstall.shスクリプトを使用して実行環境を構成します。このスクリプトは、対話モードまたはサイレントモードで実行できます。

注:

Easy Installは、27MBを超える.NET Coreランタイムをダウンロードしている間、応答しないように見えることがあります。ダウンロードの進行状況については、/var/log/ctxinstall.logを確認してください。

手動で構成するには、次のコマンドを実行し、各プロンプトで関連するパラメーターを入力します。

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

サイレントモード:

サイレントモードでEasy Installを使用するには、ctxinstall.shを実行する前に次の環境変数を設定します。

  • CTX_EASYINSTALL_HOSTNAME=host-name – Linux VDAサーバーのホスト名を示します。
  • CTX_EASYINSTALL_DNS=ip-address-of-dns – DNSのIPアドレス。
  • CTX_EASYINSTALL_NTPS=address-of-ntps – NTPサーバーのIPアドレスまたは文字列名。
  • CTX_EASYINSTALL_DOMAIN=domain-name – ドメインのNetBIOS名。
  • CTX_EASYINSTALL_REALM=realm-name – Kerberosレルム名。
  • CTX_EASYINSTALL_FQDN=ad-fqdn-name
  • CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis – Active Directory統合方法を示します。
  • CTX_EASYINSTALL_USERNAME=domain-user-name – ドメインユーザーの名前を示します。ドメインへの参加に使用されます。
  • CTX_EASYINSTALL_PASSWORD=password – ドメインユーザーのパスワードを指定します。ドメインへの参加に使用されます。

    • ctxsetup.shスクリプトは、次の変数を使用します。
  • CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N – Linux VDAは、DNS CNAMEレコードを使用してデリバリーコントローラー名を指定することをサポートしています。
  • CTX_XDL_DDC_LIST=’list-ddc-fqdns’ – Linux VDAは、デリバリーコントローラーへの登録に使用するデリバリーコントローラーの完全修飾ドメイン名(FQDN)のスペース区切りリストを必要とします。少なくとも1つのFQDNまたはCNAMEを指定する必要があります。
  • CTX_XDL_VDA_PORT=port-number – Linux VDAは、TCP/IPポートを介してデリバリーコントローラーと通信します。
  • CTX_XDL_REGISTER_SERVICE=Y | N – Linux VDAサービスは、マシンの起動後に開始されます。
  • CTX_XDL_ADD_FIREWALL_RULES=Y | N – Linux VDAサービスでは、システムファイアウォールを介して受信ネットワーク接続が許可される必要があります。Linux VDAのシステムファイアウォールで、必要なポート(デフォルトではポート80および1494)を自動的に開くことができます。
  • CTX_XDL_HDX_3D_PRO=Y | N – Linux VDAは、リッチグラフィックアプリケーションの仮想化を最適化するために設計されたGPUアクセラレーション技術のセットであるHDX 3D Proをサポートしています。HDX 3D Proが選択されている場合、VDAはVDIデスクトップ(シングルセッション)モード(つまり、CTX_XDL_VDI_MODE=Y)用に構成されます。
  • CTX_XDL_VDI_MODE=Y | N – マシンを専用デスクトップ配信モデル(VDI)として構成するか、ホスト型共有デスクトップ配信モデルとして構成するか。HDX 3D Pro環境の場合は、値をYに設定します。
  • CTX_XDL_SITE_NAME=dns-name – Linux VDAは、DNSを介してLDAPサーバーを検出します。DNS検索結果をローカルサイトに制限するには、DNSサイト名を指定します。不要な場合は、<none>に設定します。
  • CTX_XDL_LDAP_LIST=’list-ldap-servers’ – Linux VDAは、DNSを照会してLDAPサーバーを検出します。DNSがLDAPサービスレコードを提供できない場合は、LDAPポートを含むLDAP FQDNのスペース区切りリストを提供できます。例:ad1.mycompany.com:389。不要な場合は、<none>に設定します。
  • CTX_XDL_SEARCH_BASE=search-base-set – Linux VDAは、Active Directoryドメインのルートに設定された検索ベース(例:DC=mycompany,DC=com)を介してLDAPを照会します。検索パフォーマンスを向上させるために、検索ベース(例:OU=VDI,DC=mycompany,DC=com)を指定できます。不要な場合は、<none>に設定できます。
  • CTX_XDL_FAS_LIST=’list-fas-servers’ – フェデレーション認証サービス(FAS)サーバーは、ADグループポリシーを介して構成されます。Linux VDAはADグループポリシーをサポートしていませんが、代わりにFASサーバーのセミコロン区切りリストを提供できます。シーケンスは、ADグループポリシーで構成されているものと同じである必要があります。サーバーアドレスが削除された場合は、その空白を<none>テキスト文字列で埋め、サーバーアドレスの順序を変更しないでください。
  • CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime – 新しいブローカーエージェントサービス(ctxvda)をサポートするために.NET Coreランタイムをインストールするパス。デフォルトのパスは/usr/binです。
  • CTX_XDL_START_SERVICE=Y | N – 構成完了時にLinux VDAサービスを開始するかどうか。

いずれかのパラメーターが設定されていない場合、インストールは対話モードに戻り、ユーザー入力のプロンプトが表示されます。すべてのパラメーターが環境変数を通じてすでに設定されている場合でも、ctxinstall.shスクリプトは.NET Coreランタイムをインストールするパスについてユーザー入力を求めます。

サイレントモードでは、環境変数を設定してから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_START_SERVICE=Y | N

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

sudoコマンドを実行するときは、既存の環境変数を新しいシェルに渡すために-Eオプションを入力します。最初の行に#!/bin/bashを含むシェルスクリプトファイルを上記のコマンドから作成することをお勧めします。

または、単一のコマンドを使用してすべてのパラメーターを指定することもできます。

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_START_SERVICE=Y|N \

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

ステップ8:XDPingの実行

Linux VDA環境で一般的な構成の問題をチェックするためのコマンドラインユーティリティであるLinux XDPingツールを提供しています。XDPingパッケージは、サポートされているLinuxディストリビューションを実行している任意のマシンにインストールできます。XDPingは、Linux VDAパッケージがマシンにインストールされている必要はありません。ツールの詳細については、Knowledge Centerの記事CTX202015を参照してください。

ステップ9:Linux VDAの実行

Linux VDAの起動:

Linux VDAサービスを起動するには:

sudo /sbin/service ctxhdx start

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

Linux VDAの停止:

Linux VDAサービスを停止するには:

sudo /sbin/service ctxvda stop

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

注:

ctxvdaおよびctxhdxサービスを停止する前に、service ctxmonitorservice stopコマンドを実行してモニターサービスデーモンを停止してください。そうしないと、モニターサービスデーモンが停止したサービスを再起動します。

Linux VDAの再起動:

Linux VDAサービスを再起動するには:

sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx restart

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

Linux VDAのステータスの確認:

Linux VDAサービスの実行ステータスを確認するには:

sudo /sbin/service ctxvda status

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

ステップ10:Citrix Virtual AppsまたはCitrix Virtual Desktops™でのマシンカタログの作成

マシンカタログを作成し、Linux VDAマシンを追加するプロセスは、従来のWindows VDAアプローチと同様です。これらのタスクを完了する方法の詳細については、「マシンカタログの作成」および「マシンカタログの管理」を参照してください。

Linux VDAマシンを含むマシンカタログを作成する場合、Windows VDAマシン用のマシンカタログを作成するプロセスとは異なるいくつかの制限があります。

  • オペレーティングシステムについては、以下を選択します。
    • ホスト型共有デスクトップ配信モデルの場合は、Multi-session OSオプション。
    • VDI専用デスクトップ配信モデルの場合は、Single-session OSオプション。
  • 同じマシンカタログ内でLinux VDAマシンとWindows VDAマシンを混在させないでください。

注:

Citrix Studioの初期バージョンでは、「Linux OS」という概念はサポートされていませんでした。しかし、Windows Server OSまたはServer OSオプションを選択すると、同等のホスト型共有デスクトップ配信モデルが示唆されます。Windows Desktop OSまたはDesktop OSオプションを選択すると、マシンあたり単一ユーザーの配信モデルが示唆されます。

ヒント:

マシンをActive Directoryドメインから削除して再参加させる場合、そのマシンをマシンカタログから削除し、再度追加する必要があります。

ステップ11: Citrix Virtual Apps™またはCitrix Virtual Desktopsでのデリバリーグループの作成

デリバリーグループを作成し、Linux VDAマシンを含むマシンカタログを追加するプロセスは、Windows VDAマシンとほぼ同じです。これらのタスクを完了する方法の詳細については、「デリバリーグループの作成」を参照してください。

Linux VDAマシンカタログを含むデリバリーグループを作成する場合、以下の制限が適用されます。

  • 選択したADユーザーとグループが、Linux VDAマシンにログオンできるように適切に構成されていることを確認します。
  • 認証されていない(匿名)ユーザーのログオンを許可しないでください。
  • デリバリーグループと、Windowsマシンを含むマシンカタログを混在させないでください。

重要:

アプリケーションの公開は、Linux VDAバージョン1.4以降でサポートされています。ただし、Linux VDAは、同じマシンへのデスクトップとアプリの配信をサポートしていません。

マシンカタログとデリバリーグループの作成方法については、「Citrix Virtual Apps and Desktops 7 1912 LTSR」を参照してください。

トラブルシューティング

このセクションの情報を使用して、この機能の使用中に発生する可能性のある問題をトラブルシューティングします。

SSSDを使用したドメイン参加の失敗

ドメインへの参加を試行すると、次のような出力でエラーが発生する場合があります(画面出力についてはログを確認してください)。

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

この問題を解決するには:

  1. rm -f /etc/krb5.keytabコマンドを実行します
  2. net ads leave $REALM -U $domain-administratorコマンドを実行します
  3. Delivery Controllerでマシンカタログとデリバリーグループを削除します
  4. /opt/Citrix/VDA/sbin/ctxinstall.shを実行します
  5. Delivery Controllerでマシンカタログとデリバリーグループを作成します

Ubuntuデスクトップセッションでのグレースクリーン表示

この問題は、セッションを起動した後に空白のデスクトップでブロックされる場合に発生します。さらに、ローカルユーザーアカウントを使用してログオンすると、マシンのコンソールもグレースクリーンを表示します。

この問題を解決するには:

  1. sudo apt-get updateコマンドを実行します
  2. sudo apt-get install unity lightdmコマンドを実行します
  3. /etc/lightdm/lightdm.confに次の行を追加します greeter-show-manual-login=true

ホームディレクトリの欠落によるUbuntuデスクトップセッション起動の失敗

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

ヒント:

この問題の根本原因は、ドメイン管理者用のホームディレクトリが作成されていないことです。

この問題を解決するには:

  1. コマンドラインから「pam-auth-update」と入力します

  2. 表示されるダイアログで、Create home directory loginが選択されていることを確認します

    Image of Ubuntu cannot launch session

dbusエラーによるセッションの起動失敗または迅速な終了

/var/log/messages(RHELまたは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-->

または、Ubuntuディストリビューションの場合は、ログ/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-->

一部のグループまたはモジュールは、再起動するまで有効になりません。ログにdbusエラーメッセージが表示される場合は、システムを再起動して再試行することをお勧めします。

SELinuxによるSSHDのホームディレクトリへのアクセス防止

ユーザーはセッションを起動できますが、ログオンできません。

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

この問題を解決するには:

  1. /etc/selinux/configを次のように変更してSELinuxを無効にします

    SELINUX=disabled

  2. VDAを再起動します