仮想マシンに関する注意事項
ここでは、仮想マシンに関するいくつかの注意事項について説明します。
仮想マシンの起動設定
仮想マシン起動時のVDIの動作として、以下の2つのモードがあります。
注:
仮想マシンの起動設定を変更する場合は、その仮想マシンをシャットダウンしておく必要があります。
固定
ヒント:
静的マシンまたは専用マシンであるCitrix Virtual Desktopをホストしている場合は、この起動動作を使用します。
仮想マシンのデフォルトの起動モードです。このモードの仮想マシンは、VDIが前回シャットダウン時の状態のまま起動します。
仮想デスクトップに対する永続的な変更をユーザーに許可する場合は、このオプションを選択します。このモードを指定するには、仮想マシンをシャットダウンしてから次のコマンドを実行します:
xe vdi-param-set uuid=vdi_uuid on-boot=persist
<!--NeedCopy-->
リセット
ヒント:
共有マシンまたはランダムに割り当てられたマシンであるCitrix Virtual Desktopsをホストしている場合は、この起動動作を使用します。
このモードで仮想マシンを起動すると、VDIが前回起動時の状態に復元されます。前回の仮想マシンセッション内での変更内容は、すべて削除されます。
仮想デスクトップに対する永続的な変更をユーザーに許可せず、常に標準的なデスクトップを提供する場合は、このオプションを選択します。このモードを指定するには、仮想マシンをシャットダウンしてから次のコマンドを実行します。
警告:
on-boot=reset
を変更すると、仮想マシンの次回シャットダウン時、起動時、または再起動時にVDI上の変更内容がすべて破棄されます。
XenServerホストでISOライブラリを使用できるようにする
XenServerホストでISOライブラリを使用できるようにするには、外部NFSまたはSMB/CIFS共有ディレクトリを作成します。NFSサーバーまたはSMB/CIFSサーバーは、共有ディレクトリへのルートアクセスができるように設定する必要があります。NFS共有の場合は、NFSサーバーの/etc/exports
に共有エントリを作成するときに、no_root_squash
フラグを設定します。
次に、XenCenterを使用してISOライブラリに接続するか、ホストコンソールに接続して次のコマンドを実行します:
xe-mount-iso-sr host:/volume
<!--NeedCopy-->
このマウントコマンドには、必要に応じて追加引数を指定することができます。
Windows SMB/CIFS共有をホストで利用できるようにするには、XenCenterを使用して接続するか、ホストコンソールに接続して次のコマンドを実行します:
xe-mount-iso-sr unc_path -t cifs -o username=myname/myworkgroup
<!--NeedCopy-->
unc_path
引数のバックスラッシュをスラッシュに置き換えます。例:
xe-mount-iso-sr //server1/myisos -t cifs -o username=johndoe/mydomain
<!--NeedCopy-->
共有をマウントすると、その中にあるISOをXenCenterの [インストール元ISOライブラリまたはDVDドライブ] の一覧から選択できるようになります。CLIコマンドからCDイメージとして指定することもできます。
適切なWindowsテンプレートにISOを添付します。
Windows仮想マシンへのリモートデスクトップ接続
次のいずれかの方法でWindows仮想マシンコンソールを表示できます。どちらもキーボードとマウスを完全にサポートしています。
-
XenCenterの使用XenCenterで表示する標準のグラフィックコンソールでは、XenServerに組み込まれているVNC技術により仮想マシンコンソールへのリモートアクセスが提供されます。
-
Windowsリモートデスクトップによる表示。この方法では、RDP(Remote Desktop Protocol)技術が使用されます。
XenCenterの [コンソール] タブには、[リモートデスクトップに切り替える] ボタンが表示されます。このボタンをクリックすると、XenCenterの標準グラフィックコンソールが無効になり、リモートデスクトップに切り替わります。
仮想マシンのリモートデスクトップ機能が有効になっていない場合、このボタンは使用できません。これを有効にするには、Windows向けXenServer VM Toolsをインストールします。リモートデスクトップ機能を使用して接続する各仮想マシンで有効にするには、以下の手順を実行する必要があります。
Windows仮想マシンのリモートデスクトップを有効にするには:
-
[スタート] ボタンをクリックし、[コンピューター] を右クリックして [プロパティ] を選択します。[システム] コントロールパネルが開きます。
-
[リモートの設定] をクリックします。管理者のパスワードを入力する画面が開いたら、仮想マシンのセットアップ時に指定したパスワードを入力します。
-
[リモートデスクトップ] の [リモートデスクトップを実行しているコンピューターからの接続を許可する] をクリックします。
-
このWindows仮想マシンへの接続を許可する、管理者以外のユーザーを選択するには、[リモートユーザーの選択] ボタンをクリックしてユーザー名を入力します。デフォルトでは、Windowsドメイン上で管理者権限を持つユーザーがリモートデスクトップに接続できます。
これにより、仮想マシンのコンソールにリモートデスクトップで接続できるようになります。詳しくは、Microsoft社のナレッジベースの記事「リモートデスクトップ接続を使用して別のコンピューターに接続する」を参照してください。
注:
スリープ状態または休止状態の仮想マシンには接続できません。リモートのコンピューターでこれらの機能が無効になっていることを確認してください。
Windows仮想マシン内での時間の処理
Windowsゲストマシンの場合、当初はコントロールドメインの時計に基づいて初期設定されます。時間は、仮想マシンのライフサイクル操作(サスペンド、再起動など)に応じてアップデートされます。このため、コントロールドメインおよびすべてのWindows仮想マシンで、信頼性の高いNTPサービスを実行することをお勧めします。
手動で仮想マシンの時計をコントロールドメインの時計よりも2時間進めて設定すると、その設定は保持されます。仮想マシン内でタイムゾーンのオフセットを使用して、時計を進めて設定できます。この場合、コントロールドメインの時計を(手作業またはNTPサービスを使用して)変更すると、仮想マシンの時計も調整されますが、2時間のオフセットは保持されます。ただし、コントロールドメインのタイムゾーン設定を変更しても、仮想マシンのタイムゾーンやオフセットは変更されません。XenServerは仮想マシンのハードウェアクロック設定を使用して仮想マシンと同期します。XenServerは仮想マシンのシステムクロック設定を使用しません。
仮想マシンのサスペンドや再開操作、ライブマイグレーションを使用する場合、最新のWindows向けXenServer VM Toolsがインストールされていることが重要です。これにより、サスペンド後の再開や異なる物理ホスト上への移行の後で、Windows向けXenServer VM Toolsが時計の同期が必要であることをWindowsカーネルに通知します。
注:
Citrix Virtual Desktops環境でWindows仮想マシンを実行する場合は、ホストの時計設定のソースがActive Directory(AD)ドメインと同じであることを確認してください。時計の同期に失敗すると、仮想マシンに誤った時間が表示され、Windows PVドライバーがクラッシュする可能性があります。
Linux仮想マシン内での時間の処理
XenServerで定義される動作に加えて、オペレーティングシステムの設定および動作がLinux仮想マシンの時間の処理動作に影響を与える可能性があります。Linuxオペレーティングシステムは定期的にシステムクロックとハードウェアクロックを同期することがあります。または、自身のNTPサービスをデフォルトで使用することがあります。詳しくは、Linux仮想マシンのオペレーティングシステムのドキュメントを参照してください。
注:
新しいLinux仮想マシンをインストールしたら、必ずタイムゾーンをデフォルトのUTCからローカルの値に変更してください。各ディストリビューションでの手順については、「Linuxリリースノート」を参照してください。
Linux仮想マシン内のハードウェアクロックがコントロールドメイン上の時計に同期せず、個別に変更できます。コントロールドメイン上の時計は、仮想マシンの起動後にハードウェアクロックおよびシステムクロックの初期の時間設定で使用されます。
ハードウェアクロックの時間を変更すると、仮想マシンが再起動されても変更は保持されます。
システムクロックの動作は、仮想マシンのオペレーティングシステムに依存します。詳しくは、お使いの仮想マシンのオペレーティングシステムのドキュメントを参照してください。
このXenServerの時間処理動作を変更することはできません。
BIOSでロックされたReseller Option Kitメディアからの仮想マシンのインストール
次の2種類の仮想マシンがあります:BIOS汎用およびBIOSカスタマイズ済み。ホスト上の仮想マシンに、BIOSでロックされたReseller Option Kit OEMバージョンのWindowsをインストールする場合は、そのReseller Option Kitメディアが添付されていたホストからBIOS文字列をコピーする必要があります。また、上級ユーザーはBIOS文字列にユーザー定義の値を設定できます。
BIOS汎用
汎用のXenServer BIOS文字列を持つ仮想マシンです。
注:
BIOS文字列が設定されていない仮想マシンを起動すると、標準的なXenServer BIOS文字列がコピーされ、BIOS汎用の仮想マシンになります。
BIOSカスタマイズ済み
BIOSのカスタマイズでは、コピーホストBIOS文字列とユーザー定義BIOS文字列の2つの方法を使用できます。
注:
仮想マシンを初めて起動するとき、起動したあとにそのBIOS文字列を変更することはできません。初めての場合は仮想マシンを起動する前に、BIOS文字列が正しいことを確認してください。
コピーホストBIOS文字列
仮想マシンが持つ、プール内の特定ホストのBIOS文字列のコピーです。BIOSで特定ホスト用にロックされたメディアをインストールするには、以下の手順に従います。
XenCenterの使用:
- 新規VMウィザードで [ホストのBIOS文字列をVMにコピーする] チェックボックスをオンにします。
CLIでの手順:
-
vm-install copy-bios-strings-from
コマンドを実行します。BIOS文字列のコピー元ホスト(つまりReseller Option Kitメディアが添付されていたホスト)のhost-uuid
を指定します。host uuidはホストUUID、template nameはテンプレート名、name of srはストレージリポジトリ名、name for new VMは新しい仮想マシンの名前です:xe vm-install copy-bios-strings-from=host uuid \ template=template name sr-name-label=name of sr \ new-name-label=name for new VM <!--NeedCopy-->
これにより、新しい仮想マシンのUUIDが返されます。
例:
xe vm-install copy-bios-strings-from=46dd2d13-5aee-40b8-ae2c-95786ef4 \ template="win7sp1" sr-name-label=Local\ storage \ new-name-label=newcentos 7cd98710-bf56-2045-48b7-e4ae219799db <!--NeedCopy-->
-
BIOS文字列が仮想マシンに正しくコピーされたかどうかを確認するには、次の
vm-is-bios-customized
コマンドを実行します。xe vm-is-bios-customized uuid=VM uuid <!--NeedCopy-->
例:
xe vm-is-bios-customized uuid=7cd98710-bf56-2045-48b7-e4ae219799db This VM is BIOS-customized. <!--NeedCopy-->
注:
この仮想マシンは、BIOS文字列のコピー元の物理ホスト上で起動されます。
警告:
BIOSでロックされたオペレーティングシステムを使用するには、専用のライセンス契約書に同意する必要があります。
ユーザー定義BIOS文字列
CLI/APIを使用して選択したBIOS文字列で、カスタム値を設定するオプションがあります。カスタマイズされたBIOSで仮想マシンにメディアをインストールするには、以下の⼿順に従います。
CLIでの手順:
-
vm-install
コマンド(copy-bios-strings-from
を除く)を実行します:xe vm-install template=template name sr-name-label=name of sr \ new-name-label=name for new VM <!--NeedCopy-->
これにより、新しい仮想マシンのUUIDが返されます。
例:
xe vm-install template="win7sp1" sr-name-label=Local\ storage \ new-name-label=newcentos 7cd98710-bf56-2045-48b7-e4ae219799db <!--NeedCopy-->
-
ユーザー定義BIOS文字列を設定するには、仮想マシンを初めて起動する前に次のコマンドを実行します:
xe vm-param-set uuid=VM_UUID bios-strings:bios-vendor=VALUE \ bios-strings:bios-version=VALUE bios-strings:system-manufacturer=VALUE \ bios-strings:system-product-name=VALUE bios-strings:system-version=VALUE \ bios-strings:system-serial-number=VALUE bios-strings:enclosure-asset-tag=VALUE <!--NeedCopy-->
例:
xe vm-param-set uuid=7cd98710-bf56-2045-48b7-e4ae219799db \ bios-strings:bios-vendor="vendor name" \ bios-strings:bios-version=2.4 \ bios-strings:system-manufacturer="manufacturer name" \ bios-strings:system-product-name=guest1 \ bios-strings:system-version=1.0 \ bios-strings:system-serial-number="serial number" \ bios-strings:enclosure-asset-tag=abk58hr <!--NeedCopy-->
注:
- 一度ユーザー定義BIOS文字列を単一のCLI/API呼び出しで設定すると、変更することはできません。
- ユーザー定義BIOS文字列を設定するために使用するパラメーターの数を指定できます。
警告:
以下は、お客様の責任の下で行う必要があります:
- 仮想マシンのBIOSで設定される値は必要なEULAおよび標準を遵守する。
- パラメーターで指定する値がパラメーターが機能していることを確認する。誤ったパラメーターを指定すると、起動エラーやメディアのインストールエラーが発生することがあります。
Windows仮想マシンへのGPUの割り当て(Citrix Virtual Desktops用)
XenServerでは、XenServerホストの物理GPUを、そのホスト上で実行するWindows仮想マシンに割り当てることができます。この機能は「GPUパススルー」と呼ばれ、CADデザイナーなど、高度なグラフィックパフォーマンスを要求するユーザー向けに用意されています。この機能は、Citrix Virtual Desktopsでのみ使用できます。
XenServerでサポートされる仮想マシンごとのGPU数は1つのみですが、リソースプール内の全ホストの物理GPUが自動的に検出され、GPUごとにグループ化されます。仮想マシンにGPUのグループの1つを割り当てると、そのグループのGPUを持つ任意のホスト上でその仮想マシンを起動できるようになります。GPUが割り当てられた仮想マシンでは、のライブマイグレーション、メモリを含んだスナップショット作成、サスペンド/再開などの一部の機能を使用できなくなります。
仮想マシンにGPUを割り当てても、プール内のほかの仮想マシンには影響しません。ただし、GPUが割り当てられた仮想マシンは、「非アジャイル」になります。高可用性が有効なプールで仮想マシンにGPUを割り当てると、この仮想マシンは高可用性の対象外になります。仮想マシンは自動的に移行されなくなります。
GPUパススルーは、XenCenterまたはxe CLIを使用して有効にできます。
要件
GPUパススルー機能は、特定のマシンおよびGPUでのみサポートされます。この機能を使用するには、XenServerホストでIOMMUチップセット機能(IntelのVT-dなど)が使用可能であり、有効になっている必要があります。GPUパススルー機能を有効にする前に、ハードウェア互換性リストを確認してください。
GPUを仮想マシンに割り当てる前に
GPUを仮想マシンに割り当てる前に、XenServerホストに十分な物理GPUを追加して、そのホストを再起動する必要があります。ホストが再起動すると、XenServerにより自動的に物理GPUが検出されます。プール内のホストで使用可能なすべての物理GPUを確認するには、xe pgpu-list
コマンドを使用します。
各ホストでIOMMUチップセット機能が有効になっていることを確認してください。これを行うには、以下のコマンドを実行します。
xe host-param-get uuid=uuid_of_host param-name=chipset-info param-key=iommu
<!--NeedCopy-->
IOMMUが無効なホストは、false
で示されます。この場合、そのXenServerホストではGPUパススルー機能を使用できません。
XenCenterを使用してWindows仮想マシンにGPUを割り当てるには:
-
GPUを割り当てる仮想マシンをシャットダウンします。
-
仮想マシンのプロパティを開きます:仮想マシンを右クリックして[プロパティ]を選択します。
-
仮想マシンにGPUを割り当てます。これを行うには、[GPU]ページでGPUの種類を選択し、[OK] をクリックします。
-
仮想マシンを起動します。
xe CLIを使用してWindows仮想マシンにGPUを割り当てるには:
-
xe vm-shutdown
コマンドを使用して、GPUを割り当てる仮想マシンをシャットダウンします。 -
次のコマンドを実行して、GPUグループのUUIDを確認します。
xe gpu-group-list <!--NeedCopy-->
このコマンドを実行すると、プール内のすべてのGPUグループが表示されます。割り当てるGPUグループのUUIDを控えておきます。
-
次のコマンドを実行して、GPUグループを仮想マシンに割り当てます。
xe vpgu-create gpu-group-uuid=uuid_of_gpu_group vm-uuid=uuid_of_vm <!--NeedCopy-->
GPUグループが正しく割り当てられたことを確認するには、
xe vgpu-list
コマンドを実行します。 -
xe vm-start
コマンドを使用して、仮想マシンを起動します。 -
仮想マシンが起動したら、その仮想マシンにグラフィックカードドライバーをインストールします。
仮想マシンはホスト上のハードウェアに直接アクセスするため、グラフィックカードドライバーをインストールすることは重要です。ドライバーの入手については、ハードウェアベンダーに問い合わせてください。
注:
GPUパススルー機能を有効にした仮想マシンを、適切なGPUグループのGPUが搭載されていないホスト上で起動しようとすると、XenServerにエラーが表示されます。
XenCenterを使用してWindows仮想マシンのGPU割り当てを解除するには:
-
仮想マシンをシャットダウンします。
-
仮想マシンのプロパティを開きます:仮想マシンを右クリックして[プロパティ]を選択します。
-
仮想マシンのGPU割り当てを解除します: [GPU] ページでGPUの種類として [なし] を選択し、[OK] をクリックします。
-
仮想マシンを起動します。
xe CLIを使用してWindows仮想マシンのGPU割り当てを解除するには:
-
xe vm-shutdown
コマンドを実行して、仮想マシンをシャットダウンします。 -
次のコマンドを実行して、割り当てられている仮想GPUのUUIDを確認します。
xe vgpu-list vm-uuid=uuid_of_vm <!--NeedCopy-->
-
次のコマンドを実行して、仮想マシンのGPU割り当てを解除します。
xe vgpu-destroy uuid=uuid_of_vgpu <!--NeedCopy-->
-
xe vm-start
コマンドを使用して、仮想マシンを起動します。
ISOイメージの作成
XenServerでは、ISOイメージを、Windows仮想マシンまたはLinux仮想マシンのインストールメディアおよびデータソースとして使用できます。ここでは、CD/DVDメディアからISOイメージを作成する方法について説明します。
LinuxシステムでISOを作成するには:
-
CD-ROMまたはDVD-ROMディスクをドライブに挿入します。ディスクがマウントされていないことを確認します。これを確認するには、次のコマンドを実行します。
mount <!--NeedCopy-->
ディスクがマウントされている場合は、アンマウントします。手順については、使用するオペレーティングシステムのドキュメントを参照してください。
-
ルートユーザーとして、次のコマンドを実行します。
dd if=/dev/cdrom of=/path/cdimg_filename.iso <!--NeedCopy-->
このコマンドには時間がかかります。処理が完了すると、次のようなメッセージが表示されます:
1187972+0 records in 1187972+0 records out <!--NeedCopy-->
これで、ISOファイルが作成されました。
WindowsシステムでISOを作成するには:
Windowsには、Linuxのddコマンドのような、ISOを作成するためのコマンドがありません。その代わり、ほとんどのCD作成ツールには、CDをISOファイルとして保存するための機能が用意されています。