Presentation is loading. Please wait.

Presentation is loading. Please wait.

SUM303:XenDesktopの高度なトラブルシューティング

Similar presentations


Presentation on theme: "SUM303:XenDesktopの高度なトラブルシューティング"— Presentation transcript:

1 SUM303:XenDesktopの高度なトラブルシューティング
Mick Glover Senior Support Readiness Specialist 2012年10月16日

2 アジェンダ 概要 XD5.xアーキテクチャの基本 ログとトレース 主要なサポートツールの概要 PowerShellを使用したサイトの監視
トラブルシューティング例

3 概要

4 はじめに 問題 Q. 2012年にこれまでに世界中のテクニカルサポートに報告された問題のうち、最も多いものは何だったでしょうか?
A. VDA接続の問題(登録、接続/切断など) 世界中のCitrixテクニカルサポートに寄せられる問い合わせで最も多いのがVDA接続に関する問題であると聞いても、驚かれる方は少ないかもしれません。このことを念頭に置き、このセッションでは、コントローラーとVDAの関係に重点を置いて説明します。

5 良いニュース... 詳細ログとトレース以外のことについても説明 以下のことは非常に有用 製品アーキテクチャについての十分な理解
何を期待すべきかを知ること 何をいつトレースすべきかを知ること

6 XD5.xアーキテクチャの基本

7 XenDesktop 5のアーキテクチャ - .Net SOA
Desktop Studio Desktop Director PoSH PoSH WCF [80] WCF [80] WinRM 2.0 [5985/5986] ブローカー Machine Creation Service Host Service AD Identity Service Machine Identity Service Broker Service Configuration Service Virtual Desktop Agent(VDA) SOA:Service-oriented architecture(サービス指向アーキテクチャ) 参照: 各サービスインスタンスは、コネクションレスのADO.netを使用して定期的にSQLデータベースへの読み取りと書き込みを行います。 PVS for VMs Agent Group Policy Engine Machine Creation Service Broker Service Infrastructure Services SQL Server SQL Server SQL Server

8 サービス 主要な役割 Broker Service Configuration Service Host Service
VDAの登録、リソースの割り当て、電源管理、およびライセンスの適用 Configuration Service ディレクトリサービス、メタデータの保存、セキュリティの提供 Host Service ハイパーバイザー接続およびリソースの管理 XenDesktop環境の問題のトラブルシューティング時には、主要なサービス間の関係とそれらのサービスが提供する機能を理解することが重要です。ログを有効にし、特定の問題に関するCDFトレースを収集する際には、高いレベルでの関係も理解することが不可欠です。 Broker Service: Broker Serviceは、XenDesktopサイト内にあるコントローラーサーバーの日々の活動の大半を制御します。ユーザーに提供すべきリソース(アプリケーションとデスクトップ)を制御して選択し、ポリシー規則およびユーザーの要求に基づいて管理対象マシンの電源状態を制御します。また、XenDesktopコンポーネントの実行時ステータスの大半を管理コンソールに表示し、実行時の状態変更を実施するためのルートでもあります。Broker Serviceはライセンスの適用にも使用されます。 Configuration Service: Configuration Serviceは、XenDesktop環境の一部を形成するサービスを登録する機能を提供します。また他のサービスにより、使用する必要があるサービスを見つけるためのディレクトリとしても使用されます。このサービスは、環境に対するメタデータを保存する機能も提供します。 Host Service: Host Serviceは、次のいずれかの種類のハイパーバイザーへの接続を作成して管理するための機能を提供します。 - XenServer(スタンドアロンホストまたは単一のXenServerプール) - VMWare ESX(VMWare vCenterを介して) - Microsoft Hyper-V(System Center Virtual Machine Manager(SCVMM)を介して) 接続のベースとなっているハイパーバイザーテクノロジーにかかわらず、作成された接続はすべて同様に表示されます。これらの接続を使用してハイパーバイザー構造を閲覧し、その特定のハイパーバイザーにより提供される構造内で、VM、ストレージ、およびネットワークを見つけることができます。

9 サービス 主要な役割 Machine Creation Service Machine Identity Service
VMとマスターイメージの作成と管理 Machine Identity Service VMに接続されたディスクの作成と管理 AD Identity Service ADコンピューターアカウントの作成と管理 XenDesktop環境の問題のトラブルシューティング時には、主要なサービス間の関係とそれらのサービスが提供する機能を理解することが重要です。ログを有効にし、特定の問題に関するCDFトレースを収集する際には、高いレベルでの関係も理解することが不可欠です。 Machine Creation Service: Machine Creation Serviceは、マシンイメージおよびプロビジョニングされたマシンを管理する機能を提供します。VMとマスターイメージを管理し、他のMachine Creation Service(AD Identity ServiceとMachine Identity Service)を使用してプロビジョニングされたマシンを作成します。 Machine Identity Service: Machine Identity Serviceは、プロビジョニングされたVMに接続されたストレージのメンテナンスを担当します。次の機能を提供します。 - VMに対するOSおよびアイデンティティディスクの作成 - VMに対するOSおよびアイデンティティディスクの削除 - OSディスクの更新(VM機能のリセット) AD Identity Service: AD Identity Serviceは、プロビジョニングされたマシンのアイデンティティを提供するために使用できるActive Directoryコンピューターアカウントを記録します。これらのADコンピューターアカウントはAD Identity Serviceにより作成するか、または既存のADコンピューターアカウントをインポートできます。ADコンピューターアカウントは、プロビジョニングスキーム(Machine Creation Serviceで定義される)に関連付けることができるADコンピューターアカウントのコレクションを提供するために、アイデンティティプールにまとめられます。

10 登録の基本 VDAの登録 登録方法 登録の種類 コントローラーを検出し、継続的な通信を確立するプロセス
両端のWCF Webサービスにより登録プロセスが容易に 登録方法 レジストリベースの登録 ADベースの登録 簡易展開登録 登録の種類 ソフト登録 ハード登録 VDAの登録(またはコントローラーの検出/VDAの検出)とは、次の2つのことを指します。 VDAによるDDCの検出と、VDAとDDC間の通信の確立。 VDAをDDCに登録するには、次の2つの方法があります。 レジストリベースの登録 ADベースの登録 c:\Personality.iniファイルの使用(簡易展開で使用)

11 WCF登録ポート 詳細 XD5.x:TCP/IPポート80 コントローラーとVDA上で異なるポートを設定可能
レジストリベースの登録(つまりControllerRegistrarPort)の使用時にコントローラー上のWCFポートを変更するには、特別な注意が必要 注: XD4:TCP/IPポート8080(コントローラとVDA)

12 レジストリベースの登録の設定 ListOfDDCs
レジストリベースの登録を設定する最も簡単な方法は、ADで設定されたHDXポリシー(コントローラー設定)を使用することです。ただし、各コントローラーのFQDNをスペースで区切って入力することにより、VDAのインストール時に、VDAで使用するコントローラーの一覧を指定することもできます。

13 コントローラーのWCFポートのチェック BrokerService.exe /show 注:
- C:\Program Files\Citrix\Broker\Service\BrokerService.exe - VDA Port:VDAから受信するWCF通信に使用されるポートです。 - ポートを変更するにはvdaportスイッチを使用します。例:BrokerService.exe –vdaport 89

14 コントローラーのWCFポートの変更 BrokerService.exe –vdaport 89 注:
- Broker Serviceの設定ファイル(BrokerService.exe.config)でポート番号を変更します。 - このポート上での通信を許可するようにWindowsのファイアウォール設定を変更します。 - 必要なポート/URLの組み合わせでのリスンを許可するようにWindowsのHTTP共有設定(「netsh http add/remove/show urlacl」を参照)を変更します。

15 VDAのWCFポートの変更 VDAの再設定 または HDXコンピューターポリシー (プログラムの追加と削除) 注:
テスト目的で新しいHDXポリシーを直ちに適用するには、gpudate /force /target:computerを実行します。

16 VDAのWCFポートの変更 変更の確認(レジストリ) 注: WCF_Portレジストリ値:
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\VirtualDesktopAgent\InstallData\"WCF_PORT“(REG_SZ) WorkstationAgent.exe.config C:\Program Files\Citrix\Virtual Desktop Agent\ VDAの再設定時には、メタインストーラーにより、BrokerService.exe –vdaport <port>に似たその他のアクションも実行されます。 - Desktop Serviceの設定ファイル(WorkstationAgent.exe.config)でポート番号を変更します。 - このポート上での通信を許可するようにWindowsのファイアウォール設定を変更します。 - 必要なポート/URLの組み合わせでのリスンを許可するようにWindowsのHTTP共有設定(「netsh http add/remove/show urlacl」を参照)を変更します。

17 VDAのWCFポートの変更 変更の確認(.configファイル) 注: WCF_Portレジストリ値:
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\VirtualDesktopAgent\InstallData\"WCF_PORT“(REG_SZ) WorkstationAgent.exe.config C:\Program Files\Citrix\Virtual Desktop Agent\ VDAの再設定時には、メタインストーラーにより、BrokerService.exe –vdaport <port>に似たその他のアクションも実行されます。 - Desktop Serviceの設定ファイル(WorkstationAgent.exe.config)でポート番号を変更します。 - このポート上での通信を許可するようにWindowsのファイアウォール設定を変更します。 - 必要なポート/URLの組み合わせでのリスンを許可するようにWindowsのHTTP共有設定(「netsh http add/remove/show urlacl」を参照)を変更します。

18 ControllerRegistrarPort
詳細 ポート80を使用するようにVDAでハードコード コントローラーでVDA WCFポートが変更された場合には、値の手動での変更が必要 ADベースの登録を使用する場合 WCFポートはURL属性の一部として含まれており、各コントローラーは自身の詳細情報をADで更新するため、手動での変更は不要

19 ControllerRegistrarPort
VDAの再設定後に作成されるレジストリ値

20 ControllerRegistrarPort - 既知の問題
[プログラムの追加と削除]を使用してVDAポートを変更すると失敗する 原因:ControllerRegistrarPortの最後にスペースが含まれ、正しく作成されていない 解決方法:レジストリ値を手動で削除し、再作成する 注:CTX131263には、レジストリを手動で編集せずにこの問題を解決するために導入できる更新されたバイナリも含まれる

21 VDAハートビート 詳細 値:HeartbeatPeriodMs 当初は、1分間のタイムアウト(60000ミリ秒)と30秒(タイムアウト値の半分の間隔)ごとのVDAによるpingの送信 XD5 SP1のリリース以降、デフォルトのタイムアウトとping間隔は、10分と5分に変更 注: - 指定された期間(10分)内にpingを受け取らないと、コントローラーは接続が失われたと見なし、VDAの登録を破棄します。 XD 5.0 SP1から、デフォルトのハートビートタイムアウトは1分から10分に延長されたため、keep-alive pingも30秒ごとではなく5分ごとに送信されます。 登録: VDAの登録が確認されると、データベースに登録データが渡され、登録レコードがデータベース内に作成されます。この処理により、データベースによってVDAマシンが事前に認識されていたかどうかに応じて、「ハード」または「ソフト」登録が実行されます。ソフト登録はVDAがサイトで認識されていない場合に使用されます。これは、サイトに追加する前にVDAがインストールおよび設定されている場合に有用で、不要なネットワークトラフィック、イベントログメッセージ、およびこの時点での遅延を防ぎます。「ハード」登録の場合には、Registrarが他のブローカーサブコンポーネントに、新たに登録されたVDAについて同期的に通知します。「ソフト」登録の場合には、登録時には通知は実行されず、後で「ハード」登録に変わった時点で実行されます。通知されるその他のサブコンポーネントとは、Configuration NotifierおよびMonitorです。ソフト登録時には、ping(および場合によってはprobe、ただしVDAではこのAPIは使用されない)など、IRegistrar WCFサービスを介した呼び出しのみがVDAにより受け付けられます。 登録要求内でVDAにより提供されるデータの中には、VDAに保存されているFullArmor規則blobに関連するバージョンデータがあります(FullArmorポリシーでADベースではなくファイルベースの規則の継承が使用されている場合)。このバージョンデータは、FullArmor規則blobのコピーをVDAに送信するかどうかを後で判断する際に使用されます。 VDAが「ソフト」登録されており、それ以降のデータベースアクションによりVDAマシンがデータベースによって認識されていないことが示されると、「ソフト」登録は「ハード」登録に変換されます。このソフトからハードへの変換が必要であることを示すためにRegistrarサブコンポーネントが呼び出され(たとえばこの監視に使用されるデータベースサイトサービスにより)、適切なアクションが実行されます。この処理は、サイトサービスが実行されているDDCのブローカーコンポーネント(つまり、Registrar、Configuration Notifier、およびMonitorサブコンポーネント)により実行されます。これは、VDAが最初に登録されたDDCではない場合もあります。

22 ログとトレース

23 .NET <Service>.exe.Configファイル
使用可能なログメカニズム 「LogToCDF」 - 指定されており、1に設定されている場合は、提供されたCDFトレースモジュールを使用してCDFにログを記録 「LogFileName」 - 指定されている場合は、指定されたファイル名にログを記録 「OverwriteLogFile」 -指定されている場合は、既存のログファイルがあればそれを上書き 注:複数のシンクを指定可能であり、その場合はログはすべてのシンクに出力される 注:Rhoneでのログ機能の強化には、新しい「LogToConsoleLevel」、「LogToDebugLevel」、および「LogToFileLevel」設定(それぞれデフォルトは「5」)を使用した、コンソール、デバッグ、またはファイルそれぞれに対するしきい値ログ詳細レベルを設定する機能の追加などがあります。 <LogLevel>5</LogLevel> - 0、1、5、9 – テストおよび検証が必要 <appSettings> サービスにより使用されるログメカニズムを定義 「LogToCDF」 - 指定されており、1に設定されている場合は、提供されたCDFトレースモジュールを使用してCDFにログを記録。 「LogFileName」 - 指定されている場合は、指定されたファイル名にログを記録。サービスにその場所に対する書き込み権限があることを確認してください。 「OverwriteLogFile」 - 指定されている場合は、既存のログファイルがあればそれを上書き。 複数のシンクを指定可能であり、その場合はログはすべてのシンクに出力されます。 --> <add key="LogToCDF" value="1" /> </appSettings>

24 出荷時には... すべてのサービスに対してCDFトレースが有効 <Service>.exe.Config
<appSettings> <add key="LogToCDF" value="1" /> </appSettings> デフォルトでは、すべてのWCF Web(.NET)サービスがCitrix診断ファシリティ(Citrix Diagnostic Facility:CDF)にのみログを記録するように設定されています。いずれかのサービスでCDFへのメッセージのログを無効にするには、LogToCDFパラメーターの値を0に更新し、.configファイルを保存し、該当するサービスを再起動します。

25 出荷時には... すべてのサービスに対してCDFトレースが有効 <Service>.exe.Config
<appSettings> <add key="LogToCDF" value="1" /> </appSettings> クリアテキストログは無効 デフォルトでは、すべてのWCF Web(.NET)サービスがCitrix診断ファシリティ(Citrix Diagnostic Facility:CDF)にのみログを記録するように設定されています。いずれかのサービスでCDFへのメッセージのログを無効にするには、LogToCDFパラメーターの値を0に更新し、.configファイルを保存し、該当するサービスを再起動します。

26 WCFサービスのログ - 例 クリアテキストログの有効化 WorkStationAgent.exe.Configを編集
以下の図で緑で示した行を追加し、クリアテキストログを有効化および制御 適切なNTFSアクセス権を設定 Citrix Desktop Service(WorkstationAgent.exe)を再起動 Citrix Desktop Serviceは、NT AUTHORITY\NetworkServiceアカウントで実行されます。このアカウントには、指定したフォルダーの下にログファイルを作成するために適切なアクセス権を与える必要があります。

27 サービス設定ログリファレンス - XD4 Module Configuration File Location
Controller service cdscontroller.exe.config DDC IMA proxy cdsimaproxy.exe.config Pool Management cdspoolmgr.exe.config AD Config Wizard ADSetupGui.exe.config* WorkStation Agent WorkStationAgent.exe.config VDA XD Setup Wizard SetupToolApplication.exe.config PVS * デフォルトでは存在しないため、ファイルの作成が必要です。 指定されたサービスまたはツールの詳細な出力を提供します。 解析にTMFファイルは不要です。 CdsController.exe.config %Program Files%\Citrix\Desktop Delivery Controller WorkstationAgent.exe.config %Program Files%\Citrix\Virtual Desktop Agent CdsPoolMgr.exe.config %Program Files%\Citrix\Vm Management

28 サービス設定ログリファレンス - XD5 Service Configuration File Location Component
Broker Service BrokerService.exe.Config %ProgramFiles%\Citrix\Broker\Service DDC Machine Creation Service Citrix.MachineCreation.SdkWcfEndpoint.exe.Config %ProgramFiles%\Citrix\MachineCreation\Service ADIdentity Service Citrix.ADIdentity.SdkWcfEndpoint.exe.Config %ProgramFiles%\Citrix\ADIdentity\Service Configuration Service Citrix.Configuration.SdkWcfEndpoint.exe.Config %ProgramFiles%\Citrix\Configuration\Service Machine Identity Service Citrix.MachineIdentity.SdkWcfEndpoint.exe.Config %ProgramFiles%\Citrix\MachineIdentity\Service Citrix Host Service Citrix.Host.SdkWcfEndpoint.exe.Config %ProgramFiles%\Citrix\Host\Service WorkStation Agent WorkStationAgent.exe.config %ProgramFiles%\Citrix\Virtual Desktop Agent VDA

29 ログは次の場所に保存されます。 PortICAのログ
PortICAではデバッグ目的で、CDFおよびクリアテキスト出力の両方を生成可能 デフォルトでは無効 PorticaConfig.XMLを作成し、VM上の次のディレクトリに配置 C:\Program Files\citrix\ICAService\XML XMLディレクトリは手動での作成が必要 - PortICAは常時アクティブ/リスン中ではないため、ログファイルは生成されません。 - PortICAはWorkStationAgentサービスにより起動されます。 ログは次の場所に保存されます。 XP C:\Documents and Settings\LocalService\Local Settings\Temp Vista/W7 C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp 注:PorticaConfig.xmlを作成して適切なディレクトリに配置したら、設定が必要

30 PorticaConfig.XMLの設定 LogFile CdfTrace FunctionTrace レベル0、1、5、9をサポート
<?xmlversion="1.0"encoding="utf-8"?> <Configxmlns="Portica.xsd"> <Portica> <LogFile> <LogLevel>5</LogLevel> </LogFile> <CdfTrace> <LogLevel>5</LogLevel> </CdfTrace> <FunctionTrace> <LogLevel>5</LogLevel> </FunctionTrace> </Portica> </Config> LogFile レベル0、1、5、9をサポート 0 = 無効 CdfTrace レベル1、5、9をサポート FunctionTrace マスターフロー制御 上記のXML出力をコピーし、fileLogFileに貼り付けます。 LogFile 0、1、5、9に設定します。高い値では、それより低いすべてのトレースレベルが有効になります。つまり、9以上の値に設定すると、使用可能なすべてのトレースが出力されます。トレースレベル0がサポートされているのはログファイルトレースレベルのみです。ログファイルトレースに対するデフォルト値は0です。つまり、トレースはファイルには記録されません。0より大きい値を指定すると、前述の場所にログファイルが作成されます。 CDFTrace 1、5、9に設定します。CDFを介したトレース出力のレベルを制御します。 FunctionTrace 1、5、9に設定します。すべてのトレースに対する、マスターフロー制御です。ここでトレースレベルを下げると、CDFおよびログファイルの両方へのトレースのレベルが引き下げられます。 注:PortICAに対して、CDFトレースはデフォルトで有効。上記の値は出力の詳細度のみを制御する。

31 PortICAのクリアテキストログ ログファイルは自動的に次の場所に保存される
XP C:\Documents and Settings\LocalService\Local Settings\Temp Win7 C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp 注: - XPでLocalSettingsフォルダーを表示するには、Windowsエクスプローラーで[保護されたオペレーティングシステムファイルを表示しない]チェックボックスをオフにする必要があります。

32 プロセスを簡単に... Logging Enabler v2.0 注:
- Sakthi Ganesh(Lead Escalation Engineer)が開発したツール。 - 既存のログファイルを上書きするオプション(OverwriteLogFile)を含みます。 - サービスを再起動するように要求されます。 - ログはC:\XDLogsフォルダーに作成されます。 - コントローラーおよびVDA上でのサービスのログを有効にするために使用できます。

33 Logging Enabler v2.0 VDA Logging EnablerはVDA上でも実行でき、WorkStationAgentおよびPortICAサービスに対してログを自動的に有効にするために使用できます。

34 Windowsイベントビューアーも忘れずに
アプリケーションログ - VDA XenDesktop VDA Event Log Messages

35 Windowsイベントビューアーも忘れずに
アプリケーションログ - コントローラー XenDesktop VDA and DDC Event Log Messages -

36 コントローラーの検索と確認 VDA.log(WorkstationAgent.exe)

37 ソフト登録の成功の確認 Broker.log(BrokerService.exe)

38 ログの検索のヒント ヒント: - OverwriteLogFileオプションが設定されていない場合、いずれかの.NETサービスが再起動されるたびに、ログ内でその箇所がわかるように「start of new log」タグが挿入されます。 - サービスの最後の再起動後のログの開始位置を見つけるには、ログの一番下から上方向に向かって検索します。

39 ソフト登録 ソフト登録 VDAはデスクトップグループにまだ属さない 登録処理の一部のみが実行される
設定(XML)は送信されず、ステータス監視も開始されない セッションの起動または管理は不可 Desktop StudioにはVDAは登録済みと表示される 不要な登録遅延を回避できる ネットワークトラフィックおよびイベントログを回避できる ソフト登録はSonomaリリース(XD3.0)で最初に導入され、その目的は登録の遅延に関連するいくつかの問題を解決することでした。遅延の主な理由の1つが、VDAがDDCへの登録を試みる際に、VDAがまだデスクトップグループのメンバーになっていない可能性があるということでした。以前のXDバージョンでは、このような早い段階での登録の試行は拒否されました。その後VDAがデスクトップグループに追加されても、VDAが次に登録を試行するまでに、最大で10分もの長い遅延が発生しました。この問題を解決するために、ソフト登録メカニズムでは、VDAがデスクトップグループのメンバーではなくてもVDAからの登録を受け入れます。ただし、通常のすべての登録処理はまだ実行しません。後でVDAがデスクトップグループに追加されると、それまでに行っていなかった登録手順を実行することにより、ソフト登録は「ハード」登録に変換されます。

40 ソフト登録されたマシンの表示 XDDBDiag - XenDesktopサイトの概要

41 ハード登録 ソフトからハード登録への変換 VDAがグループに追加された時点で 設定データがサイトデータベースに送信される
ステータス監視が開始される(準備完了、パワーオフなど) 注:ハード登録への変換はBroker Serviceにより管理されます。 RegistrationHardeningサイトサービス

42 CDFトレースの概要 略語に対して複数の名称が存在
Citrix Diagnostic Facility Common Diagnostic Facility Common Diagnostic Function CDFはCitrix製品の特定のモジュールからの診断出力をキャプチャするシステムであり、問題のトラブルシューティング時に非常に有用 トレースメッセージは製品内にコーディングされており、実行時に適切なステータスおよびエラーコードとともに表示される

43 [ [ ソースコード内のCDFメッセージ または 43
DLL内に含まれるCitrix機能をロードする関数があります。 PrintCDFMsg()を呼び出すことにより、ここが開始位置であることを示すCDFメッセージを出力することによって、関数を開始します。 次に、LoadLibrary()を呼び出して、モジュールをロードします。 ここで「if」条件文を使用して、変数hCitrixDLLが未定義/nullであるかどうかを確認します。nullの場合は、失敗を示すCDFメッセージを印字し、関数からfalseを返します。それ以外の場合は、成功を示すCDFメッセージを印字し、trueを返します。 [ 43

44 TMF(Trace Message Format)ファイル
仕組み Citrixモジュールからの未加工のCDFイベントがGUIDとしてキャプチャされる。人間が判読できる文字列に変換するために、GUIDを対応する説明と一致させる必要がある。 GUIDの説明へのマッピングは、PDBデバッグファイルに似たTMFファイルを使用して行われる。 注: これは、MicrosoftのDebugViewなどのツールを使用して変換する必要なくデバッグ情報を表示できるOutputDebugStringとは異なります。

45 TMFファイル 2種類のTMFファイル:公開と非公開
非公開TMFはCitrix内部使用専用であり、エスカレーションエンジニアおよび開発者によりデバッグ時に使用される。これらのファイルにはソースコードへの参照が含まれる。 公開TMFサーバー: 公開TMFは外部使用のためにftp.citrix.comでも提供

46 主要なサポートツール

47 主要なサポートツール トレースとログ 監視と収集 データベースとサービス CDFControl CDFCheck CDFMarker
CDFMonitor LogEnabler 監視と収集 Scout XD Site Checker HDXMonitor データベースとサービス XDPing XDDBDiag

48 トレースとログ

49 CDFControl(1/2) CDFトレースの制御と消費に使用される主要なツール 使用可能なすべてのCitrixモジュール 追加の機能
パフォーマンスデータのキャプチャ システム起動時のトレース 一般的なエラーコードの検索 本当のエラーおよび失敗に的を絞るためのエキスパート制御 機能: モジュールの選択 トレースの開始/停止 CTLの作成 - CDFControl CTLファイルの作成 リモートトレース - CDFControlリモートトレース 起動時のトレース - CDFControl起動時のトレース ETLファイルの解析 - CDFControl ETLファイルの解析 リアルタイムトレース - CDFControlリアルタイムトレース エキスパート制御 - CDFControlエキスパート情報 コマンドライン引数 - CDFControlコマンドラインスイッチ

50 CDFControl(2/2) 選択できるモジュールが表示されたCDFControlのメイン画面
トレースがキャプチャ済みおよびリアルタイムで解析済み オプションダイアログでは、トレースファイル設定、トレースパス、TMF検索パスなどを設定可能 CTX133900を参照してください。FP1リリースでは、ユニバーサルプリントサーバー(UPS)に関連付けられたもの、XTE、名前がすべてMXで始まるポリシー固有のモジュールなど、いくつかのカテゴリが追加されています。

51 CDFControlリモートトレース CDFControlの起動 モジュールの選択
[View]>[Remote Providers]を選択 ファイアウォールが存在しないことを確認 リモートレジストリサービスが実行されていることを確認 モジュールの選択 [Tools]>[Remote Tracing]を選択 CDFControlのサブディレクトリ 「CDFControl_Remote_Traces\%computername%」に保存 マシンのIPアドレスまたはFQDNを入力します。 これが機能しない場合は、次の方法によりリモートマシンへの接続を確認します。 管理マシン上でregeditを開始し、リモートマシンに接続します。 手順: 1つまたは複数のIPアドレスまたはFQDNを入力します。 [Add]をクリックして、デバイスを[Selected Targets]ボックスに追加します。 ***フォームの下にある[Collect trace file after trace is stopped]チェックボックスをオンにする必要があります。 トレースを開始します。

52 リモートプロバイダーエラー リモートマシン上のレジストリに接続できることを確認
リモートシステム上でリモートレジストリサービスが起動していることを確認 ファイアウォールにより通信が阻止されていないことを確認 上記のエラーの主な2つの理由: - リモートシステム上でリモートレジストリサービスが起動されていない。 - ファイアウォールにより、CDFControlが実行されているシステムとリモートシステム間の適切な通信が阻止されている。 注: 内部テスト状況での特定の信頼関係が設定されていない複数のドメインの使用時には、CDFControlを実行するマシン上のhostsファイルをリモートシステムの名前とIPで更新する必要があります。これを行うと、リモートプロバイダーを使用して接続できるようになります。

53 複数ドメイン/信頼関係なしの場合の回避策

54 CDFControl起動時のトレース CDFControlの起動 – モジュールの選択
[Tools]>[Options](トレースファイルパスの設定) [Tools]>[Startup tracing]>[Enable] ETLファイルは起動トレースファイルパスにある

55 CDFMarker v1.3 スタンドアロンの実行可能ファイル
CDFMarker.exe 絞り込み検索を支援するカスタマイズ可能なCDFトレース文をCDFトレースに挿入 CDFMarkerは文をMF_Hook_MMHookに出力するため、このモジュールは常に選択する必要がある CDFMarkerは、XenAppサーバーまたはXenDesktop Virtual Desktop Agent上で実行中のCDFトレース内に、カスタマイズ可能なCDFトレース文をオンデマンドで送信できる、小型のユーティリティです。 CDFトレース文は次の5つの方法で送信できます。 ショートカットキー(Ctrl+M)を使用する。 システムトレイアイコンをクリックする。 システムトレイアイコンをクリックし、ポップアップメニューから[Send CDF Trace Message]を選択する。 コマンドラインで、CDFトレース文で使用する文字列を渡す(例 c:\cdfmarker.exe Hello!)。 コマンドラインで、1つのプロセスの出力をCDFMarkerの入力としてパイプする。たとえば、コマンドプロンプトで次のように入力すると、 C:\echo "Up the Dubs!"| C:\cdfmarker.exe CDFトレースに次のCDFメッセージが記録されます。 CDFMarker:"Up the Dubs!" CDFMarkerによりCDF文が書き込まれると、システムトレアイコンに少しの間、文が送信されたことを示す黄色い「x」が表示されます。 CDFトレースは通常どおり収集されます。トレース対象のCDFモジュールの1つとして、CDFモジュールMF_Hook_MMHookを必ず含めてください。これは、CDFMarkerがCDF文をMF_Hook_MMHookモジュールに出力するためです。 挿入されたCDFMarker文を読むには、キャプチャされたCDFトレースを後で解析する際に、付属のTMFファイルを使用する必要があります。 参照: CDFMarker On Demand - For XenApp and XenDesktop How to Use CDFMarker to Add CDF Tracing to Batch Files and Scripts

56

57 CDFCheck CDFChkCmd.exe 特定のバイナリが問題の根本的原因として疑われる場合 注:
- CDFCheck 1.0 – CMDはスタンドアロンの実行可能ファイルです。インストールルーチンはありません。CDFChkCmd.exeファイルをターゲットシステムにコピーするだけです。

58 CDFCheck BrokerService.exe CdsController CdsInterService ControllerDal

59 トレースモジュールの場所 HKLM\SYSTEM\ControlSet001\Control\Citrix\Tracing\Modules

60 監視と収集

61 XenDesktop Site Checker
V1.1 機能 ログの制御(有効化/無効化) サービスの再起動 サービスインスタンスのチェック ビュー サイトの詳細 ノードの詳細 アクティブなサイトサービス(リース) 割り当て(デスクトップグループ) XenDesktop Site Checkerは、XenDesktop Powershell SDKを使用して、XenDesktop 5のサービスグループ、サービスインスタンス、アクティブなサイトサービス、およびホストユニットの一覧を作成します。サービスが実行されているかどうかをチェックし、各サービスのログを有効化する機能を提供し、チェックした各コンポーネントに関する詳細な情報を表示します。

62 Scout V2.4.0.2 データポイントおよびCDFトレースを収集 データパッケージをCitrixテクニカルサポートにアップロード
自動更新 [Help]>[Check for updates] (注:インストールされているScoutの現在のバージョンを確認するには、[Help]メニューの[About]を選択します。) お客様がツールの最新バージョンを使用していることを確認します。 5.6以降では以前のバージョンは使用できません。 基本的には、ご覧のように、ツールはデータポイントとトレースを収集し、 テクニカルサポートにアップロードするために、収集したデータをパッケージ化します。 詳細: - Scoutはデータとログファイルをキャプチャします。 - システムは変更しません。 - フォルダーを削除するだけでアンインストールできます。 - フィードバックを送信してください。 [Help]メニューの[Feedback]を選択します。

63 Scout データポイント(1/2) ハードウェア ソフトウェア コンピューター Bios メモリ デバイス プロセッサ PNPデバイス
論理ドライブ ページファイルの使用状況 ネットワークアダプターと設定 ビデオコントローラー プリンター IDEコントローラー SCSIコントローラー OS/Service Pack PNPドライバー ドライバー プロセス MS Hotfix グループポリシー情報(RSOP)

64 Scout データポイント(2/2) サーバーファーム ハイパーバイザー サイト情報 コントローラー カタログ デスクトップグループ
設定済みVDA ブローカー管理者 インストールされているDBバージョン XDDBDiag出力 ブローカーのハイパーバイザー接続 接続ログ

65 Scout 設定

66 Scout CDFトレース

67 Scout データの収集とアップロード アップロード: - 「6」で始まる8桁のサービス要求番号。
- アップロードにはCDFトレースファイルが含まれます。 - ステータスレポートがCitrixテクニカルサポートに送信されます。 - 確認電子メールが連絡先電子メールアドレスに送信されます。

68 Scout 情報メッセージ 「File not found or no read permission error」
[OK]をクリック 収集プロセス中に表示される情報メッセージ 情報メッセージ 解決方法 Check Network ネットワーク接続またはマシンの電源状態を確認する Enable Remote Registry Service リモートレジストリサービスを有効にする Enable WinRM VDA上でWinRMを有効にする Enable File ファイルとプリンタの共有を有効にする(ネットワークアダプターのプロパティ) ここでは、Scoutにより返される可能性がある情報メッセージを示しています。 最初のメッセージについては、 [OK]をクリックするだけで十分です。このメッセージは無視して構いません。 次に、表内にいくつかの有効な情報メッセージを示します。 リモートレジストリサービスを有効にするには、[スタート]>[ファイル名を指定して実行]で「services.msc」と入力し、[Remote Registry]を選択して開始します。 VDA上でWinRMを有効にするには、コマンドプロンプトで次のように入力します。WinRM quickconfig

69 Scout アップデートのチェック ローカルバージョンとオンラインの最新バージョンを比較
ローカルとサーバーバージョンが一致しない場合は、[Download]をクリック Scoutに対するアップデートの有無をチェックするには [Help]メニューの[Check for Updates]を選択します。 ローカルとサーバーバージョンが一致しない場合は、[Download]をクリックします。 注:インストールされているScoutの現在のバージョンを確認するには、[Help]メニューの[About]を選択します。

70 データベースとサービス

71 XDPing データベースとサービス CLIベースのツール ローカルコンソールまたはリモートから実行可能 DDCとVDA上の設定を検証
xdping /host MyDDC01.citrix.com 注: - XDPingは、VDA設定の問題のトラブルシューティングに役立つ優れたツールです。 - XenDesktop環境で一般的に見られる設定に関する問題の原因をチェックするプロセスを自動化します。 - ネットワーク共有(完全なUNCパスを含む)からのこのツールの実行はサポートされていません。 - XDPingをネットワークパスから実行すると、ツールは正しく実行されません。 ツールがどのようにどこから実行されたかにより、次のチェックおよび情報を表示できます。 - ネットワークインターフェイスおよびネットワーク設定に関する情報とステータス(コンソールのみ) - デバイスのIPアドレスに対するDNS参照と逆引き参照の実行 - Kerberos認証用の時刻同期と時刻チェックに関する情報(コンソールのみ) - ログインユーザーのユーザー情報(コンソールのみ) - ユーザーの詳細、使用する認証の種類、グループメンバーシップなど - マシン情報(コンソールのみ) - 環境情報(コンピューター名、オペレーティングシステムのバージョン、ドメイン)

72

73 73

74 XDDBDiag DBに対して整合性チェックを実行し、検出結果を要約 次の診断データをカンマ区切り値 (.csv)ファイルに出力
このコマンドラインサポートツールは、XenDesktop 5データベースで、データに対する整合性チェックおよび接続の検証を行います。また、次の診断データをカンマ区切り値(.csv)ファイルに出力し、computername_XDDBDiag_Output.zipという名前で圧縮し、プログラムと同じディレクトリに保存します。 サイト情報 Virtual Desktop Agent情報 現在の接続/接続ログ ハイパーバイザー接続 ポリシー情報 デスクトップグループ コントローラー情報 SQL情報 サイト情報、VDA情報、現在の接続/接続ログ、ハイパーバイザー接続、ポリシー情報、デスクトップグループ、コントローラー情報、SQL情報

75 XDDBDiag 詳細 データベースに対する整合性チェック データを.csvファイルに出力 SQLのデータリーダーロールが必要 サイト情報
VDA情報 現在の接続 コントローラー情報 ハイパーバイザー接続 ポリシー情報 デスクトップグループ 接続ログ ツールが置かれている作業ディレクトリにあるComputername_XDDBDiag_Output.zip DBに問題がないことを確認するための簡易チェック。DBの問題を迅速に特定または排除するための方法。 注:DBを直接クエリするため、Broker Serviceには依存しません。 詳細設定 プログラムのアップデート通知を無効にするには、XDDBDiag.exe.Configで次の行を変更します。 <add key="DisableUpdateNotification" value="true"/> データのエクスポートを無効にするには、XDDBDiag.exe.Configで次の行を変更します。 <add key="DisableDataExport" value="true"/> 使用可能なスイッチの一覧については、CTX128075を参照してください。

76 XDDBDiagの詳細設定 XDDBDiag.exe.Config:
<add key="DisableUpdateNotification" value="true"/> データのエクスポートを無効にするには、XDDBDiag.exe.Configで次の行を変更 <add key="DisableDataExport" value="true"/>

77 XDDBDiag出力

78 その他のツール HDX Monitor v2.0 仮想デスクトップでのHDXの動作を検証 主な機能 追加情報 リモート機能 レポート機能
設定の提案 追加情報

79 PowerShellを使用したサイトの監視

80 PowerShell - リファレンス XenDesktopスナップインのロード 使用可能なすべてのXenDesktopコマンドレットの表示
asnp citrix* 使用可能なすべてのXenDesktopコマンドレットの表示 Get-command –module citrix.* XenDesktop 5.6 SDK Cmdlet Help

81 PowerShell Remoting 組み込みのリモート機能 -AdminAddressパラメーター デフォルト=「LocalHost」
PowerShellスナップインが接続するコントローラーのホスト名またはIPアドレスを指定 デフォルト=「LocalHost」 注:いずれかのコマンドにより値が指定されると、その値が新しいデフォルトに XD5のコマンドレットはPowerShell Remotingを使用してリモート処理すべきではありません。代わりに、-AdminAddressパラメーターを使用してコントローラー名を指定します。

82 PoSH - サービスのステータスの確認 Get-BrokerServiceStatusを使用(Broker Service)
Get-ConfigServiceStatusを使用(Configuration Service) Get-HypServiceStatusを使用(Host Service) Get-AcctServiceStatusを使用(AD Identity Service) Get-ProvServiceStatusを使用(Machine Creation Service) Get-PvsvmServiceStatusを使用(Machine Identity Service)

83 Get-BrokerServiceStatus - 戻り値(1/2)
ステータス 意味 OK ブローカーは有効なデータベースに接続されており、サービスが実行されている。 DBUnconfigured ブローカーにはデータベース接続が設定されていない。 DBRejectedConnection データベースがBroker Serviceからのログオンを拒否した。アカウント情報が不正か、データベースがインストールされていないことが考えられる。 InvalidDBConfigured データベーススキーマがない(ストアドプロシージャのみの可能性)。 DBNotFound 指定されたデータベースを、設定された接続文字列を使用して検出できなかった。 DBMissingOptionalFeature ブローカーは有効なデータベースに接続されているが、最適なパフォーマンスに必要なすべての機能がない。データベースのアップグレードを推奨。 DBMissingMandatoryFeature ブローカーは有効なデータベースに接続されているが、必要なすべての機能がないため、ブローカーが機能できない。データベースのアップグレードが必要。 参照:

84 Get-BrokerServiceStatus - 戻り値(2/2)
ステータス 意味 DBNewerVersionThanService このデータベースを使用するにはブローカーが古すぎる。より新しいバージョンが必要。 DBOlderVersionThanService Broker Serviceに対してデータベースが古すぎる。データベースのアップグレードが必要。 DBVersionChangeInProgress データベーススキーマのアップグレードが進行中。 OK PendingFailure Broker Serviceとデータベース間の接続が失われた。一時的なネットワークエラーの可能性もあるが、管理者の介入が必要な接続の切断の可能性を示す場合もある。 Failed Broker Serviceとデータベース間の接続が長期間にわたって失われたか、設定の問題により失敗した。Broker Serviceはデータベースへの接続が利用できない間は動作できない。 Unknown サービスのステータスを判別できない。 参照:

85 DB接続文字列の設定 トラブルシューティング、DBの移行などに必要 既存のDB接続文字列を表示にするには サーバー データベース
Get-BrokerDBConnectionを使用 サーバー DBをホストするサーバーの名前 データベース XD5データベースの名前(CitrixXenDesktopDB =デフォルト)

86 DB接続文字列の設定(続き) Trusted_connection=true
統合Windows認証を有効に 上記のパラメーターを指定しないと、次のエラーメッセージが返される 理由 サービスインスタンスは、DBへの認証にローカルなDDCマシンのアカウントを使用するため SA認証はサポートされていない

87 DB接続文字列の設定(続き) Broker ServiceのDB接続文字列をリセットするには
Set-BrokerDBConnection –DBConnection $null Broker Serviceはリセットされ、有効な新しいDB接続文字列が指定されるまでアイドル状態に戻る 新しい値= DBUnconfigured

88 DB接続文字列の設定(続き) Broker ServiceのDB接続文字列を設定するには 新しい値= OK
Set-BrokerDBConnection –DBConnection "Server=dbserver;Database=XDDB;Trusted_Connection=True“ 新しい値= OK

89 DB接続文字列の設定 - リファレンス 各サービスに対して1つのコマンドレット
Set-BrokerDBConnection(Broker Service) Set-ConfigDBConnection(Configuration Service) Set-HypDBConnection(Host Service) Set-AcctDBConnection(AD Identity Service) Set-ProvDBConnection(Machine Creation Service) Set-PvsvmDBConnection(Machine Identity Service) PoSH picを適切なもので更新

90 DB接続文字列の設定 データベース接続文字列は、有効であるかどうかにかかわらず指定した値に更新される
無効な接続文字列を指定すると、エラーが修正されるまでサービスは機能しない いったん設定した接続は、クリア(接続を$nullに設定)しない限り変更できない $nullに設定すると、接続はリセットされ、サービスはアイドル状態に戻る 注:このコマンドを使用するために、データベース接続が設定済みである必要はありません。

91 PoSHでのホスト詳細の表示 ホストサービスPoSHプロバイダー 名前:Citrix.Hypervisor
ドライブ:<XDHyp> 疑似ドライブ 2つのディレクトリ Connections HostingUnits 各ハイパーバイザーまたはリンクされたハイパーバイザーのプールは、XdHyp疑似ドライブを通して記述および設定します。

92 PS XDHyp:\connections> dir
定義された各ホスト接続に関する詳細情報を表示

93 PS XDHyp:\hostingunits> dir
定義された各ホストユニットに関する詳細情報を表示 XDHyp:ツリーのもう1つの項目は「HostingUnits」です。ホストユニットは、ストレージリポジトリやネットワークなど、ハイパーバイザー接続に関連付けられるように設定されるリソースを定義します。ハイパーバイザー接続には複数のホストユニットを関連付けるけることができ、これによりハイパーバイザーインフラストラクチャを複数の方法でパーティション分割することが可能です。Machine Creation Serviceを使用してデスクトップをプロビジョニングする際に、これらのパーティションを「マシン」または「カタログ」の対象とすることができます。ホストユニットは、環境でマシンのカタログのプロビジョニングにMachine Creation Serviceを使用している場合にのみ使用されます。次の出力例は、2つのホストユニットが定義された1つのハイパーバイザー接続を示しています。

94 IntelliCacheステータスのチェック
UselocalStorageCaching set-item -path xdhyp:\hostingunits\res* -UseLocalStorageCaching $true/$false XenServer 5.6 Feature Pack 1には、XenDesktopでホストされた仮想マシン環境での使用向けにXenServerハイパーバイザーを最適化する新機能が含まれています。IntelliCacheはXenServerの1つの機能であり、デスクトップワークロードに対する一時ファイルおよび非永続的ファイルをホストサーバーのローカルディスク上にキャッシュします。 ローカルにキャッシュすることにより、仮想マシンの実行時読み取りおよび書き込みの一部が、よりコストの高いNASまたはSANリソースを介して送信されるのではなく、サーバーに接続された低コストのストレージで行われます。この結果、IntelliCacheにより、中央ストレージに必要なリソースを最大で90%削減できます。IntelliCacheとMachine Creation Serviceの組み合わせにより、管理者はすべての仮想マシンをマスターVMのシンコピーとして展開および管理し、そのイメージのキャッシュをホストサーバー上に構築できます。 ローカル状態はキャッシュでしかないため、管理者は必要に応じて専用VMのライブマイグレーションを実行でき、VMは必要な場合にはいつでも簡単に中央ストレージにフォールバックできます。また、ローカルディスクのストレージ容量がいっぱいになると、IntelliCacheはセーフモードにフォールバックし、すべての読み取りと書き込みを共有ストレージに転送します。 可能な限り高速にデータを転送できるように、高性能なローカルストレージデバイスを使用することをお勧めします。IntelliCacheを使用するには、少なくともXenServer 5.6 Service Pack 2とXenDesktop 5 Service Pack 1の両方をインストールし、この機能をXenServerとXenDesktopの両方で有効にする必要があります。

95 トラブルシューティング例

96 サイトからコントローラーを削除しようとするとエラーが出る
トラブルシューティング例2 目的:Desktop Studioを使用してサイトから適切にコントローラーを削除する。 問題:Desktop Studioでコントローラーがオフラインと表示されている場合に、「そのようなホストは不明です」エラーが返される。

97 Desktop Studioでコントローラーのステータスをチェック

98 PoSHを使用してコントローラー状態をチェック
Get-BrokerController PoSHを使用してコントローラーの状態を確認します。

99 Desktop Studioのログを有効化
C:\Program Files\Citrix\Desktop Studioの下のMmcSnapin.dll.Configを編集 ファイルへのログの記録メカニズム「LogFileName」を有効に 注: Log Enablerには、Desktop Studioのログを有効にするオプションはありません。

100 何が表示されるか 内部例外: System.Net.Sockets.SocketException No such host is known at System.Net.Dns.GetAddrInfo(String name) at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) at System.Net.Dns.GetHostEntry(String hostNameOrAddress) at Citrix.Console.Models.ServiceStateModel.<GetAddressesWithExclusions>b__3(ServiceInstanceStatus address) at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext() at System.Linq.Enumerable.<SelectManyIterator>d__31`3.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at Citrix.Console.Models.ServiceStateModel.GetAddressesWithExclusions(IEnumerable`1 addressesToExclude) at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<GetWorkingServiceInstanceSet>d__25.MoveNext() at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<ExecuteNext>d__c.MoveNext() at Citrix.Console.PowerShellInteraction.PowerShellScript`1.<ExecuteNext>d__9.MoveNext() at Citrix.Console.InteractionCore.ScriptBase.<ExecuteImplementation>d__1.MoveNext() at Citrix.Console.InteractionCore.Scheduler.ExecuteNext(ScriptExecution execution)

101 何が表示されるか 内部例外: System.Net.Sockets.SocketException No such host is known at System.Net.Dns.GetAddrInfo(String name) at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) at System.Net.Dns.GetHostEntry(String hostNameOrAddress) at Citrix.Console.Models.ServiceStateModel.<GetAddressesWithExclusions>b__3(ServiceInstanceStatus address) at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext() at System.Linq.Enumerable.<SelectManyIterator>d__31`3.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at Citrix.Console.Models.ServiceStateModel.GetAddressesWithExclusions(IEnumerable`1 addressesToExclude) at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<GetWorkingServiceInstanceSet>d__25.MoveNext() at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<ExecuteNext>d__c.MoveNext() at Citrix.Console.PowerShellInteraction.PowerShellScript`1.<ExecuteNext>d__9.MoveNext() at Citrix.Console.InteractionCore.ScriptBase.<ExecuteImplementation>d__1.MoveNext() at Citrix.Console.InteractionCore.Scheduler.ExecuteNext(ScriptExecution execution)

102 何が表示されるか 内部例外: 注: -hostNameOrAddress:解決するホスト名またはIPアドレス
System.Net.Sockets.SocketException No such host is known at System.Net.Dns.GetAddrInfo(String name) at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) at System.Net.Dns.GetHostEntry(String hostNameOrAddress) at Citrix.Console.Models.ServiceStateModel.<GetAddressesWithExclusions>b__3(ServiceInstanceStatus address) at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext() at System.Linq.Enumerable.<SelectManyIterator>d__31`3.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at Citrix.Console.Models.ServiceStateModel.GetAddressesWithExclusions(IEnumerable`1 addressesToExclude) at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<GetWorkingServiceInstanceSet>d__25.MoveNext() at Citrix.Console.PowerShellSdk.HealthMonitor.Scripts.ReloadServiceInstancesScript.<ExecuteNext>d__c.MoveNext() at Citrix.Console.PowerShellInteraction.PowerShellScript`1.<ExecuteNext>d__9.MoveNext() at Citrix.Console.InteractionCore.ScriptBase.<ExecuteImplementation>d__1.MoveNext() at Citrix.Console.InteractionCore.Scheduler.ExecuteNext(ScriptExecution execution) 注: -hostNameOrAddress:解決するホスト名またはIPアドレス -GetHostEntry:メソッドがホスト名またはIPアドレスに関連付けられているIPアドレスについてDNSサーバーをクエリします。 DNSサーバーが応答しない場合は、上記の例外が返されます。この例外は、名前が正式なホスト名または別名ではない場合、またはクエリ対象のデータベース内で見つからない場合にも返されます。

103 例外について調査... www.google.com 例外の種類 条件 ソース SocketException
hostNameOrAddressパラメーターの解決時にエラーが発生 ソース

104 例外について調査... www.google.com 例外の種類 条件 ソース SocketException
hostNameOrAddressパラメーターの解決時にエラーが発生 ソース

105 ADでマシンの詳細をチェック DDC256はADで正しく表示されます。

106 CDF出力

107 サービス状態をチェック Get-<Service>ServiceStatus
たとえば、DDC56.glover.comに対してGet-BrokerServiceStatusを実行すると、CDFトレースからの出力が示していること(つまり、サイトから削除するコントローラー上のすべてのサービスがリセット済みであること)を確認できる 注:-AdminAddressパラメーターはコマンドレットをどのコントローラーに対して実行するかを指定するために使用(組み込みのPoSH Remoting機能)

108 サービスステータスを確認 リファレンス Get-BrokerServiceStatusを使用(Broker Service)
Get-ConfigServiceStatusを使用(Configuration Service) Get-HypServiceStatusを使用(Host Service) Get-AcctServiceStatusを使用(AD Identity Service) Get-ProvServiceStatusを使用(Machine Creation Service) Get-PvsvmServiceStatusを使用(Machine Identity Service)

109 登録済みサービスをチェック DDC256.glover.com上の各サービスはDBUnconfiguredにリセットされているため、同じコントローラーに対してGet-ConfigRegisteredServiceInstanceを実行すると、予想どおりに次のエラーが返される

110 サービスインスタンスをチェック

111 登録済みサービスをチェック(続き) 問題は、ddc256.glover.comに対するサービスがまだサイトのConfiguration Serviceに登録されており、したがってサイトデータベースに登録されていることにあるようです。

112 登録済みサービスをチェック(続き) Get-ConfigRegisteredServiceInstance –ServiceType
問題は、ddc256.glover.comに対するサービスがまだサイトのConfiguration Serviceに登録されており、したがってサイトデータベースに登録されていることにあるようです。

113 手順1 データベースの手動でのクリーンアップと孤立したDBエントリの削除
サービスにより使用されているServiceAccountSidを確認 注:これはサービスが実行されているマシンのobjectSidである

114 ADExplorer ADExplorerを使用すると、孤立したサービスに割り当てられたServiceAccountSidを取得可能
objectSid = ServiceAccountSid

115 手順2 データベースの手動でのクリーンアップと孤立したDBエントリの削除
参照: XenDesktop 5.6 SDK Cmdlet Help

116 手順3 Config ServiceのエビクションスクリプトをサイトDBに対して実行

117 手順4 残りのサービスのエビクションスクリプトをサイトDBに対して実行

118 手順5 Desktop Studioを更新 問題のあるコントローラーはDesktop Studioには表示されなくなる

119 手順6 クリーンアップ ADベースの登録 レジストリベースの登録 Set-ADControllerDiscovery –syncを実行
ADグループポリシーによりListOfDDCsレジストリ値を更新 コンピューターポリシー\コントローラー 注: C:\Program Files\Citrix\Broker\Service\Setup Scripts\Set-ADControllerDiscovery.ps1: - Active Directoryでサイトの組織単位を作成または設定し、ADベースのコントローラー検出を使用してXenDesktopコントローラーをVDA用に設定するためのスクリプト

120 オプションの手順 コントローラーを同じサイトに再追加
問題のあるコントローラーをサイトから削除したら、最後の手順として、後から再追加できます。コントローラーは完全に機能する状態(Active)として表示されるはずです。

121 関連文書

122 ツール トレースとログ CDFControl CDFCheck 1.0 - Cmd
CDFCheck Cmd CDFMarker On Demand - For XenApp and XenDesktop LogEnabler

123 ツール 監視と収集 Citrix Scout XenDesktop Site Checker HDX Monitor 2.0
XenDesktop Site Checker HDX Monitor 2.0

124 ツール データベースとサービス XDPing XDDBDiag for XenDesktop
XDDBDiag for XenDesktop

125 操作手順 How to Use IntelliCache with XenDesktop
How to Enable PortICA Logging How to Enable the Controller Service Logging Feature of XenDesktop 5

126 トラブルシューティング Troubleshooting Virtual Desktop Agent Registration with Controllers in XenDesktop

127 KB記事 - CDFMarker CDFMarker may not send a CDF Trace Message from the Command Line How to Use CDFMarker and PerfMon when a Process Intermittently Spikes How to Use CDFMarker to Add CDF Tracing to Batch Files and Scripts How to Use CDFMarker to Mark an Intermittent End User Issue in a CDF Trace

128 KB記事 - CDFMarker(続き) How to Use CDFMarker and PerfMon to Identify Large LHC Writes How to Mark High Bandwidth in a CDF Trace using CDFMarker and PerfMon How to Mark a Service Termination in a CDF Trace using CDFMarker How to Mark when a Process Crash Occurs in a CDF Trace using CDFMarker

129


Download ppt "SUM303:XenDesktopの高度なトラブルシューティング"

Similar presentations


Ads by Google