日本語フォーラム参加者各位
現在利用中のvSphere環境にて性能調査を行っております。
vSphere Clientで、ESXiホストを選択してパフォーマンスチャートの物理サーバのCPU Ready値(ミリ秒)を確認しています。
本パフォーマンスチャートでは、過去データがロールアップされて粒度があらくなるため、esxtopをバッチモードで採取しています。
esxtopは、以下のコマンド実行して全エンティティを取得を試みています。
esxtop -a -b -d 20 -n 180 > esxtop_yyyymmddhhmmss.csv
採取されたデータから、vSphere Clientのパフォーマンスチャートで物理サーバのCPU Readyと同等の項目をお分かりになるかたは
いますでしょうか?
esxtopの性能情報で、「Ready値」はGroup CPUカテゴリ内に複数存在しており物理サーバのReady値としてはどの項目を参照すべきかが
判りません。
esxtopに細かく解説されているサイトなど情報がありましたら、コメントいただけると幸いです。
vSphere ClientのパフォーマンスチャートのCPU Ready値の単位はミリセカンドですが、esxtopのReady値はパーセンテージですね。
ですので直接の値の参照、変換はできないかと考えます。
esxtopの値は更新間隔ごとに差分が表示されていますが、パフォーマンスチャートとは非同期になりますので、ご質問の実現は難しいかと…
すでに参照済みかもしれませんが、esxtopについてはvSphereドキュメントに記載があります。
残念ながら、ドキュメントにはパフォーマンスチャートの詳細表示における各パラメーターの説明はありませんでした。
こんにちは。
vCenterのパフォーマンスチャートでのCPU Readyは、
ESXi上の Readyの合計をもとに算出しているようです。
算出方法については、下記のKB差参考になると思います。
※このKBでは、Readyは「作動可能」と訳されています。
CPU 作動可能の合計値とパーセント値の間の変換
https://kb.vmware.com/kb/2002181?lang=ja
しかしesxtopのCSVからの算出は大変なので、
もしどうしても情報取得が必要なのであれば、PowerCLI を利用すると簡単かなと思います。
Ready だけに絞ってコマンドラインを例示すると下記のようになります。
vCenterでリアルタイムの場合に見られる統計情報なので「-Realtime」が必要です。
Get-VMHost <対象ESXiの名前> | Get-Stat -Realtime -Stat cpu.ready.summation
下記のような感じで、パフォーマンスチャートと同様の情報取得ができるので、
これを1時間以内ごとに取得して保存しておくと、ロールアップされてしまう情報も残すことができるはずです。
取得される情報は20秒単位です。
PowerCLI> Get-VMHost hv-i22* | Get-Stat -Realtime -Stat cpu.ready.summation | select Entity,MetricId,Timestamp,Value,Unit
| Export-Csv -Encoding UTF8 -NoTypeInformation -Path C:\work\ready.csv
PowerCLI> cat C:\work\ready.csv -First 5
"Entity","MetricId","Timestamp","Value","Unit"
"hv-i22.go-lab.jp","cpu.ready.summation","2018/06/21 0:37:20","93","millisecond"
"hv-i22.go-lab.jp","cpu.ready.summation","2018/06/21 0:37:00","64","millisecond"
"hv-i22.go-lab.jp","cpu.ready.summation","2018/06/21 0:36:40","56","millisecond"
"hv-i22.go-lab.jp","cpu.ready.summation","2018/06/21 0:36:20","80","millisecond"
PowerCLI>
以上です。参考になりますでしょうか。
tnk4onさん
コメントありがとうございました。
パフォーマンスチャートとesxtopの値は、計測単位が違うことを失念しておりました。
パフォーマンスチャートに固執しているわけではないので、esxtopにて計測した値で性能確認を
行っていきたいと思います。
gowatanaさん
コメントありがとうございました。
esxtopで計測した値から、パフォーマンスチャートの値を算出できるのですね。
また、PowerCLIでの採取についても情報提供ありがとうございます。
どのような性能分析を行うべきか検討していきたいと思います。
VMware KB『ESX/ESXi 仮想マシンのパフォーマンス問題のトラブルシューティング (2001003)』で公開されている情報を
参考にして性能評価を行おうと考えておりますが、以下の考え方で問題ないか助言をお願い致します。
CPUの評価
-Load averageが「1.00以上」の値を示していないことの確認
→『Physical Cpu Load』が存在するため、1 Minute Avgの値を確認する。
-READYフィールドが「5%未満」を保っていることの確認
→『Group CPU(仮想マシン名)\% Ready』を確認する。
※『Group CPU』や『Vcpu』のカウンタに複数の『% Ready』が存在するが上記カウンタのみ確認?
-物理CPU使用率が「常時高い数値」ではないことの確認
→『Physical Cpu(x)\% Util Time』および『Physical Cpu(0)\% Core Util Time』の値を確認する。
※Core Util Timeは、Hyper-Threadingが有効化された場合に、偶数番号のみを確認する。
メモリの評価
-Memory Overcommitが「0」を維持していることを確認
→『Memory\Memory Overcommit』を確認する。
※メモリオーバコミットされていなければ、「0」を維持できる。
-バルーニングの値を確認
→『Group Memory(仮想マシン名)\Memctl MBytes』を確認する。
※『Group Memory』のカウンタに複数の『Memctl MBytes』が存在するが上記カウンタのみ確認?
-メモリスワップの値を確認
→『Group Memory(仮想マシン名)\Swapped MBytes』を確認する。
※『Group Memory』のカウンタに複数の『Swapped MBytes』が存在するが上記カウンタのみ確認?
ディスクの評価
-物理ディスクアクセスの評価
→以下のカウンタの値を確認する。
・Physical Disk(x)\Average Driver MilliSec/Read、Write
・Physical Disk(x)\Average Kernel MilliSec/Read、Write
・Physical Disk(x)\Average Guest MilliSec/Read、Write
-仮想ディスクアクセスの評価
→以下のカウンタの値を確認する。
・Virtual Disk(仮想マシン名)\Average MilliSec/Read
・Virtual Disk(仮想マシン名)\Average MilliSec/Write