ViewDbChk コマンドを使用して、自動デスクトップ プールにあるデスクトップ仮想マシンおよび自動ファームにある RDS ホストに関する情報を保管するデータベースの不整合を解決できます。

Horizon 7 環境では、デスクトップ仮想マシンと自動ファームの RDS ホストの情報は、次の場所に保管されます。

  • LDAP データベース
  • vCenter Server データベース
  • View Composer リンク クローン マシンのみ:View Composer データベース

通常、Horizon Administrator を使用してデスクトップ仮想マシンや RDS ホストを削除またはリセットすることで、プロビジョニングまたは他の操作中に発生するエラーからリカバリできます。まれに、エラー状態になっているマシンに関するさまざまなデータベース上の情報が不整合になり、Horizon Administrator を使用してもエラーからリカバリできない場合があります。次のいずれかの兆候が見られる可能性があります。

  • 次のエラー メッセージが表示されてプロビジョニングが失敗します。入力仕様のある仮想マシンはすでに存在しています
  • 次のエラー メッセージが表示されてデスクトップ プールの再構築が失敗しますDesktop Composer の障害:入力仕様のある仮想マシンはすでに存在しています
  • Horizon Administrator が、デスクトップ マシンや RDS ホストが削除中状態のままであることを示します。
  • デスクトップ プールや自動ファームは削除できません。
  • デスクトップ マシンや RDS ホストは削除できません。
  • Horizon Administrator の [インベントリ] タブで、デスクトップ マシンや RDS ホストのステータスが欠落しています。

データベース不整合によってデスクトップ マシンや RDS ホストがリカバリ不可能なエラー状態になるか、Horizon Administrator のタスクを正常に完了できない状況で、ViewDbChk コマンドを使用して不整合を解決できます。ViewDbChk コマンドには次の特徴があります。

  • Horizon スタンダード サーバまたは Horizon レプリカ サーバをインストールすると、ViewDbChk は自動的にインストールされます。Horizon セキュリティ サーバをインストールするときに、ユーティリティはインストールされません。
  • ViewDbChk は、Windows コマンド プロンプトまたはスクリプトから実行できるコマンドです。
  • ViewDbChk は自動ファームとフル仮想マシンの自動デスクトップ プールとともに、View Composer リンク クローンをサポートしています。
  • マシンを削除する場合、ViewDbChk はマシンでヘルス チェックを実行し、マシンが正常であるかどうかをさらに確認するプロンプトを表示します。
  • ViewDbChk はエラーのある、または不完全な LDAP エントリを削除できます。
  • ViewDbChk は国際化文字セットを使用した入力および出力をサポートします。
  • ViewDbChk はユーザー データを削除しません。 フル デスクトップ仮想マシンの場合、ViewDbChk はインベントリから仮想マシンを削除しますが、ディスクからは削除しません。リンククローン デスクトップ仮想マシンの場合、ViewDbChk は仮想マシンを削除し、VMFS データストアの場合はルート フォルダに、vSAN および Virtual Volumes データストアの場合は archiveUDD という名前のサブフォルダに、ユーザー ディスクをアーカイブします。
  • ViewDbChk は、管理対象外のデスクトップ マシンや手動ファームの RDS ホストをサポートしません。

ViewDbChk 構文

ViewDbChk --findDesktop --desktopName <desktop pool or farm name> [--verbose]

ViewDbChk --enableDesktop --desktopName <desktop pool or farm name> [--verbose]

ViewDbChk --disableDesktop --desktopName <desktop pool or farm name> [--verbose]

ViewDbChk --findMachine --desktopName <desktop pool or farm name> --machineName <machine name> [--verbose]

ViewDbChk --removeMachine --machineName <machine name> [--desktopName <desktop pool or farm name>] [--force] [--noErrorCheck] [--verbose]

ViewDbChk --scanMachines [--desktopName <desktop pool or farm name>] [--limit <maximum deletes>] [--force] [--verbose]

ViewDbChk --help [--commandName] [--verbose]

ViewDbChk パラメータ

パラメータ 説明
--findDesktop デスクトップ プールやファームを検索します。
--enableDesktop デスクトップ プールやファームを有効にします。
--disableDesktop デスクトップ プールやファームを無効にします。
--findMachine マシンを検出します。
--removeMachine デスクトップ プールまたはファームからマシンを削除します。マシンを削除する前に、ViewDbChk はユーザーにデスクトップ プールまたはファームを無効にするように求めます。マシンを削除した後、ViewDbChk はユーザーにデスクトップ プールやファームを再度有効にするように求めます。
--scanMachines エラー状態またはクローンエラー状態のマシン、または仮想マシンが欠落しているマシンを検出し、デスクトップ プールまたはファームごとにグループ化して問題のあるマシンをリストし、マシンを削除するオプションを提供します。マシンを削除する前に、ViewDbChk はユーザーにデスクトップ プールまたはファームを無効にするように求めます。デスクトップ プールまたはファーム内でエラーを生じたすべてのマシンを削除した後、ViewDbChk はユーザーにデスクトップ プールまたはファームを再度有効にするように求めます。
--help ViewDbChk の構文を表示します。
--desktopName <desktop name> デスクトップ プールやファームの名前を指定します。
--machineName <machine name> マシン名を指定します。
--limit <maximum deletes> ViewDbChk が削除できるマシンの数を制限します。 デフォルトは 1 です。
--force ユーザーの確認なしで強制的にマシンを削除します。
--noErrorCheck エラーを生じていないマシンを強制的に削除します。
--verbose 詳細ログを有効にします。
注: すべてのパラメータ名は大文字と小文字が区別されます。

ViewDbChk の使用例

lc-pool2-2 という名前のデスクトップ マシンがエラー状態になっており、Horizon Administrator を使用してそれを削除することはできません。ViewDbChk を使用して Horizon 7 環境からそれを削除します。

C:\Program Files\VMware\VMware View\Server\tools\bin\viewdbchk.cmd --removeMachine --machineName lc-pool2-2 
Looking for desktop pool "lc-pool2" in LDAP...
   Desktop Pool Name: lc-pool2
   Desktop Pool Type: AUTO_LC_TYPE
   VM Folder: /vdi/vm/lc-pool2/
   Desktop Pool Disabled: false
   Desktop Pool Provisioning Enabled: true
Looking for machine "/vdi/vm/lc-pool2/lc-pool2-2" in vCenter...
   Connecting to vCenter "https://10.133.17.3:443/sdk". This may take some time...
Checking connectivity...
   Connecting to View Composer "https://10.133.17.3:18443". This may take some time...
The desktop pool "lc-pool2" must be disabled before proceeding. Do you want to disable the desktop pool? (yes/no):yes
Found machine "lc-pool2-2"
   VM Name: lc-pool2-2
   Creation Date: 1/25/15 1:20:26 PM PST
   MOID: vm-236
   Clone Id: b12a9ed2-8535-44ee-a9d6-6c9b5cf6f878
   VM Folder: /vdi/vm/lc-pool2/lc-pool2-2
   VM State: ERROR
Do you want to remove the desktop machine "lc-pool2-2"? (yes/no):yes
Shutting down VM "/vdi/vm/lc-pool2/lc-pool2-2"...
Archiving persistent disks...
Destroying View Composer clone "b12a9ed2-8535-44ee-a9d6-6c9b5cf6f878"...
Removing ThinApp entitlements for machine "/vdi/vm/lc-pool2/lc-pool2-2"...
Removing machine "/vdi/vm/lc-pool2/lc-pool2-2" from LDAP...
Running delete VM scripts for machine "/vdi/vm/lc-pool2/lc-pool2-2"...
Do you want to enable the desktop pool "lc-pool2"? (yes/no):yes