地方エンジニアが頑張るブログ

地方で働くエンジニアがどこまで最新の情報についていけるか、いろんな視点で書いていきます。

Hyper-V上の仮想マシンが遅い時の対処方法

WindowsサーバーにてHyper-V仮想マシンを立てて動かしたときに、想定以上に遅くなることがあります。

そのときにどのような調査を行い、どのような対応ができるのか箇条書きしてみました。

 

◆調査方法

まずは現状の把握です。パフォーマンス状態を見てきましょう。

パフォーマンスは「タスクマネージャ」や「パフォーマンスモニター」で確認できます。

・ホスト(物理)マシン上のCPU使用率、メモリ使用量、ディスク稼働率、通信量の状態を確認する。
仮想マシン上のCPU使用率、メモリ使用量、ディスク稼働率、通信量の状態を確認する。
・データベースのメモリ割り当て量と使用量を確認

 Oracleのメモリ割り当て量

  sqlplus / as sysdba

  show parameter sga_;

  Oracleのメモリ使用状況

  以下のサイトを参考にしてみてください。

  http://www.doppo1.net/oracle/tuning/memory.html

   サイトを見てもわからなければ、タスクマネージャを立ち上げて、

  「Oracle~」から始まるプロセスを見たら、メモリの利用状況だけは確認できます。

 SQL Serverの場合はマネージャを立ち上げて、サーバを選択してプロパティ

・MS SQL ServerのクエリアナライザでSQLを解析

OracleのPerformance ManagerでSQLを解析

 ◆ホスト上

・ホストマシンのメモリを潤沢にするホストマシンのHDDを速くする(HDDを増やす、

 SSDにする、RAID構成を考える)ホストマシンのCPUを追加する。

・電源管理を「高パフォーマンス」に変更する。

・システムの視覚効果にて「パフォーマンスを優先する」を選択

・不要なサービスは無効

・不要なアプリケーションはアンインストール

◆仮想上

・仮想のCPUとメモリを増やす・HDDを可変から固定にする・仮想マシンに割り当てるメモリにて、「動的」のチェックを外す・スナップショットを無効にする

◆データベース上

・データベースへのメモリ割り当て

・必要なインデックスの定義

・テーブルの最適化