仮想マシンのパフォーマンスを高める「Hyper-V管理」の極意はこれだ:Hyper-Vのトラブルを防ぐ方法【後編】
仮想化基盤の安定稼働には、定期的なメンテナンスが不可欠だ。Microsoftの「Hyper-V」や仮想マシンを放置せず、適切にメンテナンスすれば処理速度や安定性などのパフォーマンスが改善する。メンテナンスのポイントとは。
ハイパーバイザーや仮想マシン(VM)を効果的に運用するためには、定期的なメンテナンスが欠かせない。ハイパーバイザーやVMを放置すると、さまざまな問題が起こる。Microsoftのハイパーバイザー「Hyper-V」を前提として、仮想化基盤を管理するためのポイントを解説する。
仮想化基盤のメンテナンスのポイントとは
併せて読みたいお薦め記事
連載:Hyper-Vのトラブルを防ぐ方法
Hyper-Vを深く学ぶ
システムのパフォーマンスの良しあしはさまざまな側面から評価できるものの、パフォーマンスが低いVMには共通する指標がある。それが応答時間の遅さやCPU使用率の高さだ。これらの指標が悪化すると、タスクやアプリケーションが停止したり応答しなくなったり、完了に通常よりも時間がかかったりする。
こうした状態を防ぐために注目すべき点の一つが、リソースの競合だ。Hyper-Vホスト(Hyper-Vを稼働させるサーバ)には限られたRAM(ランダムアクセスメモリ)とCPUしかない。
複数のVMで応答時間や使用率などのパフォーマンスが悪化している場合、物理システムが限界に達している可能性がある。サーバのパフォーマンスモニタリングツールを使用して統計を取得しよう。VM内では、パフォーマンスモニタリングツールを使用して、仮想CPUが物理CPUを使用するのにどれだけの時間待機しなければならないのかを測定できる。仮にこの指標で問題があった場合、ハードウェアの増設が必要になる場合がある。管理者が取れる一時的な解決策は、同時に実行するVMの数を減らすことだ。
仮想CPU(vCPU)が常にフル稼働している場合、CPUの追加が必要だ。ただし、vCPUは段階的に追加することが望ましい。
十分なメモリが確保されているかどうかの確認は非常に重要だ。Hyper-Vの有用な機能の一つは動的メモリ確保だ。デフォルトでオンになっている。この機能により、Hyper-Vホストは仮想マシンに割り当てられたメモリの範囲で、需要に応じて動的にメモリをVMに追加したり、不要なメモリを回収したりできる。この機能は一部のアプリケーションではうまく機能しない可能性があるため、事前のテストが不可欠だ。
定期的にHyper-Vのメンテナンスタスクを実行する
Hyper-Vの定期的なメンテナンスで重要なポイントは以下の通りだ。
- Microsoftから提供されるパッチを適用する
- MicrosoftはHyper-Vホストの対象となるサーバやサーバOSにメインストリームサポート(注)をリリースしており、これを適用する
※注:Microsoftが特定のソフトウェアに対して、製品発売から一定期間提供するセキュリティ更新パッチやバグ修正、新機能追加などのサポートのこと
- MicrosoftはHyper-Vホストの対象となるサーバやサーバOSにメインストリームサポート(注)をリリースしており、これを適用する
- メインストリームサポートには仮想マシンから Hyper-V ホストに通信できるようにする「Hyper-Vゲストサービス」(Hyper-V統合サービスと呼ばれることもある)の更新プログラムも含まれている
- 接続されていないVHDX(仮想ディスクイメージ用のファイル形式)ファイルを削除する
- VHDXファイルが、管理者がVMを削除する際にディスクを削除するオプションを選択しなかった場合に残る可能性がある
- 手動でVHDXファイルを消去する場合は、ミスに備えて事前に別の場所にファイルをバックアップしておくことが望ましい
特定の時点でのファイルや構成、メモリなどを保存する機能「Hyper-Vスナップショット」はロールバックの際に有用だが、管理者が放置するとディスク容量の大部分を占有する可能性がある。スナップショットが増え過ぎると、システムの読み取りや書き込みの操作がより複雑になるため、VMの処理速度や応答時間などのパフォーマンスも悪化することがある。この場合、特定のVMだけでなく同じHyper-Vホストが使用する全てのVMのパフォーマンスを悪化させる可能性がある。
Hyper-Vの信頼性を維持するためには
Hyper-V環境をうまく稼働させるための鍵は、リソースの効果的な管理だ。ディスク容量の不足は深刻な影響を与える。
特にシンプロビジョニングディスク(必要な時に容量が拡張される仮想ディスク)は、慎重に監視する必要がある。Hyper-Vが管理している個々の仮想ディスクファイルは、OSのディスクファイルとは分けて別の場所に保存するべきだ。仮想マシンのI/O(データの入出力)とホストOSのI/Oを分離することで、お互いに干渉し合う可能性が減り、仮想マシンとホストOSの双方で処理速度や応答時間が改善する可能性がある。
ディスク容量が90%など、特定のしきい値に達した場合にアラートを送信するよう監視ツールを設定しておくと便利だ。
Hyper-Vのブートディスク(起動ディスク)がいっぱいになると、仮想マシンが起動できなくなる可能性がある。こうした事態を防ぐためには、Hyper-Vディスクファイルを別のパーティション(物理的なディスクを分割した区画)に配置することだ。
TechTarget発 世界のインサイト&ベストプラクティス
米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.