BizTalk Server データベースを持つ BizTalk Server インスタンスまたは SQL Server インスタンスを、Hyper-V 仮想マシン上で実行する場合は、次の考慮事項が適用されます。
Hyper-V 仮想マシンに 110%–125% の CPU リソースとディスク リソースを割り当てる
110% を CPU リソースの 125% に割り当て、物理ハードウェア ソリューションで必要なディスク リソースの 105% - 110% を、ソリューションに使用される Hyper-V 仮想マシンに割り当てることを計画します。 Hyper-V 仮想マシンを追加のリソースで構成することで、仮想化テクノロジで必要なオーバーヘッドに対応しながら、物理ハードウェアと同等のパフォーマンス Hyper-V 提供できるようになります。
ステップ | リファレンス |
---|---|
BizTalk Server ソリューションのハードウェア要件の範囲を指定します。 | - ソリューションのハードウェア要件の範囲を指定するには、BizTalk Server 操作ガイドの「BizTalk Server の環境の計画」セクションのガイダンスに従います。 - ソリューションで必要となる BizTalk Server のエディションと数の範囲を指定するには、「BizTalk Server レベルの計画」に記載されている BizTalk Server の計画に関する考慮事項を確認してください。 - ソリューションに必要な SQL Server コンピューターのバージョンと数の範囲を指定するには、次のドキュメントのデータベース計画に関する考慮事項を確認します。 --- "データベース層の計画" 「「Hyper-V環境でのSQL Server 2008の実行に関するベストプラクティスとパフォーマンスに関する考慮事項」ホワイトペーパーの「Hyper-VでのSQL Serverの実行のパフォーマンスオーバーヘッド」セクションを参照してください。」 - 開発、テスト、ステージング、運用環境の計画を完了するには、「開発、 テスト、ステージング、および運用環境の計画」を確認してください。 |
BizTalk Server ソリューションのハードウェア要件の範囲を指定したら、可能であれば、110% - 125% の CPU リソースとディスク リソースを使用して Hyper-V マシンを構成することを計画します。 | たとえば、ソリューションで使用される物理 BizTalk Server コンピューターのハードウェア要件が 2 GB RAM、2 GHZ で実行されているデュアル コア CPU、2 x 500 GB の物理ディスクであると判断された場合、理想的には、ソリューションで使用される Hyper-V 仮想マシンは、 > = 2.2 GHZ を実行する 2 つ以上の仮想プロセッサで構成されます。 より高速な物理ディスク (通常はスピンドルを追加するか、より高速なディスクを使用します)。 |
Hyper-V パフォーマンスの最適化
最適なパフォーマンスを得るために Hyper-V を構成するには、次の一般的なガイドラインを使用します。
ステップ | リファレンス |
---|---|
パフォーマンス チューニング仮想化サーバーに推奨されるガイダンスを適用します。 注: BizTalk Server 仮想化パフォーマンスのテストで説明されているテスト シナリオについては、「テスト シナリオの概要」の「物理インフラストラクチャの詳細」および「仮想化の詳細」セクションで適用された構成オプションについて説明します。 |
「 Windows Server 2008 R2 のパフォーマンス チューニング ガイドライン」の「仮想化サーバーのパフォーマンス チューニング」セクション。 |
使用されていない仮想マシン接続ウィンドウを閉じます。 | Hyper-V マネージャーで、仮想マシン名をダブルクリックすると、[仮想マシン接続] ウィンドウが表示されます。 これらのウィンドウは、それ以外の場合は無料で使用できるリソースを使用します。 |
「Hyper-V マネージャーを閉じるか最小化してください。」 | Hyper-V マネージャーは、実行中の各仮想マシンの CPU 使用率とアップタイムを継続的にポーリングすることで、リソースを消費します。 Hyper-V マネージャーを閉じるか最小化すると、これらのリソースが解放されます。 |
Hyper-V 環境でのディスク、メモリ、ネットワーク、プロセッサのパフォーマンスを最適化する
Hyper-V 仮想環境でのディスク、メモリ、ネットワーク、プロセッサのパフォーマンスを最適化するには、次のガイドラインに従います。
プロセッサのパフォーマンスを最適化する
Hyper-V 仮想環境で実行されているゲスト オペレーティング システムのプロセッサ パフォーマンスを最適化するには、次のガイドラインに従います。
最適なパフォーマンスを得るために、使用可能な論理プロセッサへの仮想プロセッサの 1 対 1 の割り当てを構成する - CPU 負荷の高いアプリケーションを実行する場合、最適な構成は、ホスト オペレーティング システムで使用できる論理プロセッサに対するゲスト オペレーティング システム内の仮想プロセッサの 1 対 1 の比率です。 2:1 や 1:2 などの他の構成の効率は低下します。 次の図は、ゲスト オペレーティング システム内の仮想プロセッサ コアをホスト オペレーティング システムで使用できる論理プロセッサに 1 対 1 で割り当てる方法を示しています。
仮想と論理プロセッサの比率
異なるゲスト オペレーティング システムの仮想プロセッサの制限に注意し、それに応じて計画する - Hyper-V 仮想マシンで実行されているゲスト オペレーティング システムで使用できるプロセッサ コアの数は、ホストされているアプリケーションの全体的なパフォーマンスに影響する可能性があります。 そのため、BizTalk Server データベースをホストする BizTalk Server または SQL Server インスタンスをホストするために、Hyper-V 仮想マシンにインストールされるゲスト オペレーティング システムについて考慮する必要があります。 Hyper-V は、指定されたゲスト オペレーティング システムの次の数の仮想プロセッサに対応します。
オペレーティング システム | 仮想プロセッサの制限 |
---|---|
Windows Server 2008 R2。 Windows Server 2008 R2 のすべてのエディションは 64 ビット版のみです。 | 4 |
Windows Server 2008 SP2 64 ビット | 4 |
Windows Server 2008 SP2 32 ビット | 4 |
Windows 7 64 ビット | 4 |
Windows 7 32 ビット | 4 |
Windows Vista 64 ビット | 2 |
Windows Vista 32 ビット | 2 |
注
Hyper-V でサポートされているゲスト オペレーティング システムの詳細については、Windows Server 上の Hyper-V で サポートされている Windows ゲストオペレーティング システムとサポートされている Windows ゲスト オペレーティング システムを参照してください。
ディスクパフォーマンスの最適化
Hyper-V 仮想環境で実行されているゲスト オペレーティング システムのディスク パフォーマンスを最適化するには、次のガイドラインに従います。
ステップ | リファレンス |
---|---|
固定サイズの仮想ハード ディスク (VHD) オプションを使用して、Hyper-V 仮想マシンで使用する仮想ディスクを構成します。 固定サイズの VHD では、物理ディスクに近いパフォーマンスと、クラスタリングのサポートやスナップショット ディスクのサポートなどの機能の柔軟性が提供されます。 | Hyper-V 環境のディスク 記憶域には、仮想 IDE コントローラーまたは仮想 SCSI コントローラーを介してアクセスできます。 以前のバージョンの Microsoft 仮想化テクノロジとは異なり、仮想ハード ディスクにアクセスするときに仮想 IDE コントローラーまたは仮想 SCSI コントローラーを使用してもパフォーマンスに違いはありません。 Hyper-V 環境では、次のディスク ストレージ オプションを使用できます。 - 固定サイズのディスク - 固定サイズの仮想ハード ディスク (VHD) は、作成時に定義された最大ディスク サイズに基づいて、物理ディスクにデータ ブロックが事前に割り当てられるディスクです。 たとえば、100 GB の固定サイズの VHD を作成した場合、Hyper-V は、新しい VHD の作成時に VHD ヘッダーとフッターに必要なオーバーヘッドに加えて、100 GB のデータ ブロック ストレージをすべて割り当てます。 - ディスクを動的に拡張する - 動的に拡張される VHD は、初期の仮想ハード ディスクにデータ ブロックが含まれていません。 代わりに、VHD の作成時に指定された最大サイズまで、データが VHD に書き込まれると、領域が動的に割り当てられます。 たとえば、100 GB の動的に拡張するディスクには、最初は VHD ヘッダーのみが含まれており、2 MB 未満の物理記憶域領域が必要です。 仮想マシンによって動的に拡張される VHD に新しいデータが書き込まれると、追加の物理データ ブロックが VHD ファイルに最大 100 GB まで 2 MB ずつ割り当てられます。 - 差分ディスク - 差分ディスクは、"親" VHD に関連付けられている特別な種類の動的に展開される VHD ファイルです。 この親子ストレージ トポロジでは、親ディスクは変更されず、"子" 差分ディスクに対して行われた書き込み操作のみが行われます。 すべての読み取り操作は、まず差分ディスクに対してチェックされ、更新されたコンテンツが差分ディスクに書き込まれたかどうかを確認します。コンテンツが差分ディスクにない場合、コンテンツは親 VHD から読み取られます。 差分ディスクは、特定のベースライン構成を維持する必要があり、ベースラインへの変更を簡単にテストしてロールバックする必要があるシナリオに役立ちます。 差分ディスクを通じて提供される親子ストレージ トポロジの柔軟性はテストに役立ちますが、差分ディスクを使用する場合に必要な親子トポロジの維持に関連するオーバーヘッドがあるため、パフォーマンスに最適な構成ではありません。 - パススルー ディスク – パススルー ディスク機能を使用すると、ゲスト オペレーティング システムは Hyper-V ホスト ファイル システムをバイパスし、ディスクに直接アクセスできます。 パススルー経由でゲスト オペレーティング システムで使用できるディスクは、ホストとゲストの両方のオペレーティング システムが同時にディスクにアクセスしないように、Hyper-V ホストで "オフライン" に設定する必要があります。 パススルー ディスクは、他のディスク ストレージ オプションよりもパフォーマンス上の利点を提供しますが、仮想マシンのスナップショットやクラスタリングのサポートなど、仮想ディスクの特定の機能をサポートしていません。 そのため、BizTalk または SQL Server 環境ではパススルー ディスク機能を使用することはお勧めしません。限界パフォーマンスの利点は、不足している機能によるオフセットを超えるためです。 Hyper-V で提供されるディスク 記憶域の選択肢の相対的なパフォーマンスの詳細については、 ストレージ分析Hyper-V ブログ エントリを参照してください。 |
SCSI コントローラーを使用してデータ ボリュームのディスクを構成する | SCSI コントローラーは、Hyper-V 統合サービスがインストールされている場合にのみインストールできるのに対し、エミュレートされた IDE コントローラーは、Hyper-V 統合サービスをインストールせずに使用できるため、推奨されます。 統合サービスで提供される IDE フィルター ドライバーを使用して実行されるディスク I/O は、エミュレートされた IDE コントローラーで提供されるディスク I/O パフォーマンスよりも大幅に優れています。 そのため、Hyper-V 仮想化環境のデータ ファイルに最適なディスク I/O パフォーマンスを確保するには、ホストオペレーティング システムとゲスト オペレーティング システムの両方に統合サービスをインストールし、合成 SCSI コントローラーを使用してデータ ボリュームのディスクを構成します。 複数のデータ ドライブにまたがる大量のストレージ I/O ワークロードの場合は、全体的なパフォーマンスを向上させるために、各 VHD を個別の合成 SCSI コントローラーに接続する必要があります。 さらに、各 VHD は個別の物理ディスクに格納する必要があります。 大事な: SCSI コントローラーにシステム ディスクを接続しないでください。 オペレーティング システムを含む仮想ハード ディスクを IDE コントローラーに接続する必要があります。 |
メモリ パフォーマンスの最適化
Hyper-V 仮想環境で実行されているゲスト オペレーティング システムのメモリ パフォーマンスを最適化するには、次のガイドラインに従います。
ステップ | リファレンス |
---|---|
Hyper-V 仮想マシンをホストする物理コンピューターに十分なメモリがインストールされていることを確認します | - 多くの場合、使用可能な物理メモリは、Hyper-V 仮想マシンで実行されている BizTalk Server の最も重要なパフォーマンス要因です。 これは、各仮想マシンが非ページ プール メモリ、またはディスクにページングできないメモリに存在する必要があるためです。 ページ プール以外のメモリをディスクにページングできないため、仮想マシンをホストする物理コンピューターには、各仮想マシンに割り当てられたメモリの合計と次の合計と同じ使用可能な物理メモリが必要です。 ハイパーバイザーに 300 MB、各仮想マシンに割り当てられた最初の GB の RAM に 32 MB、各仮想マシンに割り当てられた追加の RAM ごとに 8 MB、ルート パーティションで実行されているホスト オペレーティング システム用に 512 MB たとえば、Hyper-V 仮想マシンに Hyper-V Manager で 2 GB のメモリが割り当てられている場合、その Hyper-V 仮想マシンを実行するときに使用される実際の物理メモリは約 2388 MB (ハイパーバイザーの場合は 300 MB、仮想マシンに割り当てられた場合は 2 GB+ 32 MB + 8 MB = 2388 MB) になります。 ハイパーバイザーは 1 回だけ読み込む必要があるため、後続の仮想マシンを初期化しても、ハイパーバイザーの読み込みに関連する 300 MB のオーバーヘッドは発生しません。 したがって、2 つの Hyper-V 仮想マシンにそれぞれ Hyper-V Manager で 2 GB のメモリが割り当てられている場合、これらの Hyper-V 仮想マシンを実行するときに使用される実際の物理メモリは約 4476 MB になります (ハイパーバイザーの場合は 300 MB +仮想マシンに割り当てられた 4 GB + 64 MB + 16 MB = 4476 MB)。 手記: 一般的な経験則として、ルート パーティションに少なくとも 512 MB のメモリを割り当てて、I/O 仮想化、スナップショット ファイルのサポート、子パーティション管理などのサービスを提供することを計画します。 - 可能な場合は 64 ビットのゲスト オペレーティング システムを使用 します。ゲスト オペレーティング システムごとに 64 ビット オペレーティング システムを使用することを検討してください。 既定では、32 ビット Windows オペレーティング システムではプロセスあたり最大 2 GB の仮想アドレス空間しかアドレス指定できないため、これを行う必要があります。 64 ビット オペレーティング システムをインストールすると、アプリケーションは、Hyper-V 仮想マシンをホストする物理コンピューターにインストールされているメモリを最大限に活用できます。 |
ネットワーク パフォーマンスの最適化
Hyper-V は仮想マシンで合成およびエミュレートされたネットワーク アダプターをサポートしますが、合成デバイスではパフォーマンスが大幅に向上し、CPU オーバーヘッドが削減されます。 これらの各アダプターは仮想ネットワーク スイッチに接続されます。外部ネットワーク接続が必要な場合は、物理ネットワーク アダプターに接続できます。 このセクションの推奨事項に従って、Hyper-V 仮想環境で実行されているゲスト オペレーティング システムのネットワーク パフォーマンスを最適化します。
注
これらの推奨事項は、ダウンロード可能な Windows Server 2008 R2 のパフォーマンス チューニング ガイドライン の「仮想化サーバーのパフォーマンス チューニング」セクションにあります。 割り込みモデレーションなど、ルート パーティション内のネットワーク アダプターを調整する方法については、このガイドの「ネットワーク サブシステムのパフォーマンス チューニング」セクションを参照してください。 そのセクションの TCP チューニングは、必要に応じて子パーティションに適用する必要があります。
ステップ | リファレンス |
---|---|
プライベート仮想ネットワーク Hyper-V 使用するように、同じ Hyper-V ホスト コンピューターで実行されている仮想マシンを構成する | ネットワーク最適化の「プライベート仮想ネットワークを使用するように、同じ Hyper-V ホスト コンピューターで実行されている仮想マシン Hyper-V 構成する」セクションの推奨事項に従います。 |
仮想マシン ネットワーク カードの TCP オフロードを無効にする | ネットワーク最適化の「仮想マシン ネットワーク カードの TCP オフロードを無効にする」セクションの推奨事項 に従います。 |
Hyper-V 合成ネットワーク アダプターを使用するようにゲスト オペレーティング システムを構成します。 | Hyper-V は、既存のハードウェアを模倣するエミュレートされたネットワーク アダプターと比較して、ネットワーク I/O の CPU オーバーヘッドを大幅に削減するために VM 専用に設計された合成ネットワーク アダプターを備えています。 合成ネットワーク アダプターは、より効率的なデータ転送のために共有メモリを使用して、VMBus 経由で子パーティションとルート パーティション間で通信します。 エミュレートされたネットワーク アダプターは、[VM 設定] ダイアログ ボックスから削除し、合成ネットワーク アダプターに置き換える必要があります。 ゲストは、VM 統合サービスをインストールする必要があります。 |
使用可能な場合は、ルート パーティション内の物理ネットワーク アダプター ドライバーのオフロード機能を有効にします。 | ネイティブ シナリオと同様に、物理ネットワーク アダプターのオフロード機能により、VM シナリオでのネットワーク I/O の CPU 使用率が削減されます。 Hyper-V は現在、LSOv1 および TCPv4 チェックサム オフロードを使用しています。 ルート パーティションの物理ネットワーク アダプターのドライバーでオフロード機能を有効にする必要があります。 ネットワーク アダプターのオフロード機能の詳細については、ダウンロード可能な Windows Server 2008 R2 のパフォーマンス チューニング ガイドライン の「仮想化サーバーのパフォーマンス チューニング」セクションの「ネットワーク アダプターの選択」セクションを参照してください。 特定のネットワーク アダプターのドライバーは LSOv1 を無効にしますが、既定では LSOv2 を有効にします。 システム管理者は、デバイス マネージャーの [ドライバーの プロパティ ] ダイアログ ボックスを使用して、LSOv1 を明示的に有効にする必要があります。 |
複数のネットワーク アダプターを使用するようにネットワーク スイッチ トポロジを構成します。 | Hyper-V では、複数の仮想ネットワーク スイッチの作成がサポートされています。各スイッチは、必要に応じて物理ネットワーク アダプターに接続できます。 VM 内の各ネットワーク アダプターは、仮想ネットワーク スイッチに接続できます。 物理サーバーに複数のネットワーク アダプターがある場合、ネットワーク負荷の高い VM は、物理ネットワーク アダプターをより適切に使用するために、異なる仮想スイッチに接続することでメリットを得ることができます。 |
Hyper-V ホスト コンピューターに複数の物理ネットワーク カードがインストールされている場合は、各ネットワーク カードのデバイス割り込みを 1 つの論理プロセッサにバインドします。 | 特定のワークロードでは、1 つのネットワーク アダプターのデバイス割り込みを 1 つの論理プロセッサにバインドすることで、Hyper-V のパフォーマンスを向上させることができます。 この高度なチューニングは、ネットワーク帯域幅を完全に使用する際の特定の問題にのみ対処することをお勧めします。 システム管理者は、IntPolicy ツールを使用して、デバイス割り込みを特定のプロセッサにバインドできます。 |
可能であれば、Hyper-V 合成ネットワーク アダプターの VLAN タグ付けを有効にします。 | Hyper-V 合成ネットワーク アダプターでは、VLAN のタグ付けがサポートされています。 物理ネットワーク アダプターが大規模な送信オフロードとチェックサム オフロードの両方に対してNDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOBカプセル化をサポートしている場合、ネットワーク パフォーマンスが大幅に向上します。 このサポートがないと、Hyper-V は VLAN タグ付けを必要とするパケットにハードウェア オフロードを使用できず、ネットワーク パフォーマンスを低下させることができます。 |
Hyper-V ホスト コンピューターに高速ネットワーク アダプターをインストールし、最大のパフォーマンスを実現するように構成します。 | Hyper-V ホスト コンピューターに 1 GB のネットワーク アダプターをインストールし、"自動ネゴシエート" を使用するのではなく、固定速度でネットワーク アダプターを構成することを検討してください。ネットワーク速度、双方向、およびフロー制御パラメーターが、接続先のスイッチの設定に対応するように設定されていることが非常に重要です。 |
ネットワーク パフォーマンスを最適化するためのベスト プラクティスに従ってください。 | ネットワークの 最適化に関する トピックでは、ネットワーク パフォーマンスを最適化するための一般的なガイダンスを提供します。 このトピックでは、Hyper-V 仮想化環境での BizTalk Server のパフォーマンスを最適化するための具体的な推奨事項を示していませんが、この手法は、物理ハードウェア上で実行されている場合でも、Hyper-V 仮想化環境でも、BizTalk Server ソリューションに適用できます。 |
SQL Server のパフォーマンスを最適化する
トピック「SQL Server の最適化」の推奨事項に従って、BizTalk Server ソリューションの SQL Server のパフォーマンスを最適化します。 このトピックでは、Hyper-V 仮想化環境での BizTalk Server のパフォーマンスを最適化するための具体的な推奨事項を示していませんが、この手法は、物理ハードウェア上で実行されている場合でも、Hyper-V 仮想化環境でも、BizTalk Server ソリューションに適用できます。
BizTalk Server ソリューションの最適化
BizTalk Server ソリューションのパフォーマンスを最適化するには、「 BizTalk Server の最適化 」トピックの推奨事項に従ってください。 このトピックでは、Hyper-V 仮想化環境での BizTalk Server のパフォーマンスを最適化するための具体的な推奨事項を示していませんが、この手法は、物理ハードウェア上で実行されている場合でも、Hyper-V 仮想化環境でも、BizTalk Server ソリューションに適用できます。