1台のSystemMonitor性能監視の管理サーバに管理対象や性能情報がいくつ指定可能かどうかを検討するための考え方について説明します。
簡易的な目安として、管理対象マシンの管理可能な数を物理マシン環境では300 台ぐらい、仮想環境では500 台ぐらいまでとしていますが、実際は利用する環境や利用内容に依存します。また、実環境で問題がないか検証を実施する必要があります。
管理対象や性能情報の数や種類など具体的な情報から、確認する観点は以下のとおりです。
性能データの収集処理が時間内に終わるかどうか?
定期的に実行される性能データの収集処理が、指定の性能データの収集間隔内に終了できるかどうかを検討します。
指定の時間内に終わらない場合、次の間隔の収集処理に影響するため、時間内に終わらせる必要があります。また、下記の処理負荷の考慮も必要です。
収集した性能データを保存するデータベースに容量不足が発生しないか?
性能データを保存するデータベースの容量が利用する環境の上限を超えないように利用する必要があります。
管理サーバ内で動作するすべてのプログラムについて、処理負荷の影響はないか?
SystemMonitor性能監視の処理の負荷が管理サーバの他の製品動作に影響を与えないように考慮する必要があります。
また、定常的に行われる処理以外に普段は動作しない処理が動作した場合に影響がでないように、あらかじめ余裕を持たせておく必要があります。SigmaSystemCenter、SystemMonitor性能監視に限らず、管理サーバ上で動作するすべてのプログラムについて、考慮する必要があります。
上記の容量、時間、負荷の3つの観点について、以下に説明します。
性能データの収集処理が時間内に終わるかどうかを見積もるための、考慮すべき点を説明します。
なお、計算方法は単純化しているため、見積もり結果が実環境の動作と異なる可能性がありますので、注意してください。
実環境での確認は必ず行ってください。
まず、収集処理全体にどれくらい時間がかかるかを計算します。収集処理全体の時間は、以下の項目から概算することができます。
1回の性能データ収集処理の時間: x (秒)
1回の性能データ収集処理で収集できる性能データの数は、収集する対象の性能情報により異なりますので、注意してください。
収集時間の目安や収集処理の詳細については「2.7.7. SystemMonitor性能監視の性能データ収集の動作」を参照してください。
1回の収集間隔で性能データ収集処理が行われる回数: y (回)
上記1の性能情報の収集処理が行われる回数です。1回の収集処理で収集できる性能情報の数は性能情報の種類により異なるため、注意してください。
多重度: z
管理サーバ環境で収集処理が並列に同時に多重実行できる数です。
多重度は管理サーバのCPU数で考えてください。8の場合は管理サーバに8個CPUがあり、8個の収集処理が同時に実行できると想定します。
また、多重度の上限以上は同時実行できません。多重度上限は性能データ収集の方式により決まっています。「2.7.7. SystemMonitor性能監視の性能データ収集の動作」の(5)の表を参照してください。
なお、性能データ収集処理の多重実行は複数の対象マシンに行われる場合に動作します。同一の管理対象マシンに対して複数の性能情報の指定がある場合、管理対象マシン側に影響が出ないように多重アクセスを行わずに1つ1つ性能データを順に収集するように動作します。
上記の項目を使用した次のような計算式で1回の収集間隔で行われる収集処理にかかる時間を簡易的に計算することができます。
全体の収集時間 = x × y ÷ z
たとえば、管理対象マシン100台、各対象に性能データ収集処理が行われる回数は8回、1回の性能データ収集にかかる時間が10ms、多重度:8とした場合、以下のように計算できます。
1回の性能データ収集にかかる時間:0.01(秒)
性能データの収集の回数:800(回)(管理対象マシンの台数×対象別の性能データ収集処理回数)
多重度:8
800×0.01÷8 = 1(秒)
上記では1秒と算出できましたが、管理サーバのCPUが100%使用されると1秒間で収集できることになります。
※実際は、性能データ収集のためにCPU以外にネットワーク、ディスク、メモリなどが使用され、これらのオーバヘッドの影響も考えられるため、このようにはならない可能性があります。
収集間隔の時間内に終了できない場合、SystemMonitor性能監視上で以下の警告が出力されます。この警告が頻発する状況の場合は管理対象・性能情報の数を少なくしたり、収集間隔を長くしたりしてください。
ID:63
性能データ収集期間(time1 - time2)内にマシンmachineの性能データ(タイトル:title)の収集を完了できませんでした。
性能データを保存するデータベースの容量が利用する環境の上限を超えないように利用する必要があります。
データベースに必要となる容量は以下に依存します。収集する情報が多ければ多いほど、保存する期間が長ければ長いほど、必要となる容量は増加します。
性能データの収集対象(マシン、LUN、リソースプールなど)の数
性能データの収集対象から収集する性能情報の数
性能データ、集計データを保存する期間、収集の間隔
具体的なサイズの見積もり方法については、「SystemMonitor 性能監視 ユーザーズガイド」の「10.9.1. 性能データ保存のために必要なディスク容量の見積もり」を参照してください。
また、システムのディスク空き容量が十分な場合でも、SQL Serverの上限にも注意してください。製品媒体に収録されているSQL Server Express Editionの場合、上限が10GBです。製品版の場合は上限はありません。
管理サーバでは、SystemMonitor性能監視の性能データ収集以外の処理も行われることを想定する必要があります。他の処理も行われることを想定すると、「(2)データベース容量の見積もり」の方法で見積もった性能データ収集処理の時間が収集間隔の時間内に終了するという目安だけでは不十分です。
管理サーバにおける運用内容に依存しますが、通常は実施しない管理サーバの利用が行われるような状況も想定して、十分に余裕があるように管理対象や性能情報の数を検討してください。
SystemMonitor性能監視で性能データ収集処理の負荷の影響について、次の考慮が必要です。
SystemMonitor性能監視で性能データ収集処理により、管理サーバの他の利用に影響がでないようにする。
管理サーバ上でのSystemMonitor性能監視の性能データ収集処理以外の処理により、性能データの収集処理への影響が出ないようにする。
たとえば、「(2)データベース容量の見積もり」の方法で見積もった性能データの収集処理の全体時間が30秒で収集間隔が1分の場合、管理サーバ上では恒常的にSystemMonitor性能監視の性能データ収集処理により管理サーバの半分の能力が使用されることになります。影響がある場合は収集時間が短くなるように管理対象や性能情報の数を変更する必要があります。
また、他の処理負荷による性能データ収集処理への影響として、性能データ収集処理の遅延が発生します。収集間隔の時間内に終了できない場合、SystemMonitor性能監視上で以下の警告が出力されます。この警告が頻発する状況の場合は管理対象・性能情報の数を少なくしたり、収集間隔を長くしたりしてください。
ID:63
性能データ収集期間(time1 - time2)内にマシンmachineの性能データ(タイトル:title)の収集を完了できませんでした。
SystemMonitor性能監視で、性能データ収集処理以外で処理負荷の影響の考慮が必要な機能は以下のとおりです。
グラフ表示
ssc-perfコマンド
レポート機能
上記のいずれにおいても、SystemMonitor性能監視から蓄積された性能データを取得する処理が行われますが、極端なデータ数の取得が発生しないように考慮する必要があります。
極端なデータ数の取得が行われると、以下の影響が発生します。
データ取得時間が長くなる。
長くなることによる影響は実行する操作に依存します。グラフ表示の場合、処理時間が長くなるとタイムアウトエラーが発生するなどの影響が考えられます。
管理サーバやWebコンソールの端末の負荷が増加する。
極端なデータ数の取得が発生しないように利用するための確認観点は以下のとおりです。
取得する期間とデータの間隔のバランスは適切か?
グラフ表示の場合、グラフの期間とグラフ内の各点の間隔(プロット間隔)の指定のバランスについて、考慮する必要があります。
たとえば、グラフの表示期間が1年間で、プロット間隔を1分間隔で表示するような指定を行った場合、約52万個のデータ取得が行われることになります。
目的が1年間のリソースの概要的な使用状況を確認したい場合、視認できる細かすぎないデータ量として約50個程度(1週間間隔ぐらい)のデータ取得でよいと考えられます。
デフォルトでは、グラフ表示のプロット間隔は自動で設定され、極端なデータ取得が行われないように動作しますが、明示的にプロット間隔の指定を行う場合はグラフ表示期間と比較してプロット間隔が極端に短くならないように注意してください。