Hitachi

JP1 Version 12 JP1/Performance Management - Remote Monitor for Platform


10.2.5 共通メッセージログに「KAVL17016-W パフォーマンスデータが前回のデータと同じため,Storeデータベースに保存しません」というメッセージが出力される

インスタンス内のすべての監視対象ホストで性能情報の収集が完了する時間が,収集プロセスの収集間隔(インスタンス環境の「Interval」の設定値),および各性能情報の収集間隔(各レコードの「Collection Interval」の設定値)よりも大きい場合,共通メッセージログにKAVL17016-Wのメッセージを出力し,性能情報の収集をスキップすることがあります。

各収集間隔の設定値は,次に示す見積もり方法を参考に見積もりを実施した値に15秒以上の余裕を持った値を設定してください。

■収集間隔の設定値の見積もり方法

次に示す流れで収集間隔の設定値の見積もりを実施してください。

  1. すべての監視対象の収集時間の計測

    次の手順で接続テストを実施して,収集時間を計測してください。ここで計測したすべての監視対象のホストの収集に必要な時間から最大値を抽出します。

    注意

    監視対象ホスト1台当たりの性能情報の取得に掛かる平均時間の目安は,監視対象ホストがWindowの場合は5秒,監視対象ホストがUNIXの場合は20秒です。測定結果がこれらの値を大きく上回る場合は,測定結果が上記の平均時間の目安に近い値となるように,ご使用環境を見直してください。

    監視対象ホストがWindowsの場合

    1. インスタンスの設定の際に「RMHost_User」に指定したユーザーでPFM - RMホストにログインする。

    2. コマンドプロンプトでwmicコマンドを使用し,次に示すすべてのwmiオブジェクトの取得に掛かる時間を計測する。

    注※ 初めてwmicコマンドを実行する場合,wmicコマンドのインストールが行われます。

    Win32_OperatingSystem

    Win32_ComputerSystem

    Win32_PerfRawData_PerfOS_System

    Win32_PerfRawData_PerfOS_Memory

    Win32_PerfFormattedData_PerfOS_Memory

    Win32_PerfRawData_PerfOS_Processor

    Win32_PerfRawData_Counters_ProcessorInformation

    Win32_PerfRawData_PerfDisk_LogicalDisk

    Win32_Volume

    Win32_PerfFormattedData_PerfDisk_LogicalDisk

    Win32_PerfRawData_PerfDisk_PhysicalDisk

    Win32_PerfRawData_Tcpip_NetworkInterface

    Win32_PerfFormattedData_PerfProc_Process

    Win32_Process

    Win32_Service

    注※ 設定によりPFM - RMで収集しない場合があります。

    wmicコマンドでwmiオブジェクトの取得を行うバッチファイルの例を次に示します。なお,wmicコマンドの前後には時刻をログファイルに出力する処理を入れています。

    @echo off
    set TARGET=監視対象ホスト名
    set USER=ユーザー名
    set PASSWORD=パスワード
    set WMIC=wmic /node:%TARGET% /user:%USER% /password:%PASSWORD% path
    echo #WMIC command > C:\time.log
    echo %date%_%time% >> C:\time.log
    %WMIC% Win32_OperatingSystem
    %WMIC% Win32_ComputerSystem
    %WMIC% Win32_PerfRawData_PerfOS_System
    %WMIC% Win32_PerfRawData_PerfOS_Memory
    %WMIC% Win32_PerfFormattedData_PerfOS_Memory
    %WMIC% Win32_PerfRawData_PerfOS_Processor
    %WMIC% Win32_PerfRawData_Counters_ProcessorInformation
    %WMIC% Win32_PerfRawData_PerfDisk_LogicalDisk
    %WMIC% Win32_Volume
    %WMIC% Win32_PerfFormattedData_PerfDisk_LogicalDisk
    %WMIC% Win32_PerfRawData_PerfDisk_PhysicalDisk
    %WMIC% Win32_PerfRawData_Tcpip_NetworkInterface
    %WMIC% Win32_PerfFormattedData_PerfProc_Process
    %WMIC% Win32_Process
    %WMIC% Win32_Service
    echo %date%_%time% >> C:\time.log

    監視対象ホスト名には,監視対象の設定の際に「Target Host」に指定した値を使用してください。また,必ず「"(ダブルクォーテーション)」で囲んでください。

    ユーザー名には,監視対象の設定の際に「User」に指定した値を使用してください。また,監視対象の設定の際に「Domain」を指定した場合は,「Domain」に指定した値と「User」に指定した値の間に「\」をはさんで使用してください。

    パスワードには,監視対象の設定の際に「Password」に指定した値を使用してください。

    3. wmicコマンドの実行結果を確認する。

    本接続テストを実施した場合に全てのコマンドの実行におよそ45秒以上要している場合,ネットワーク環境の設定を見直す必要があります。WMIに関するログはPFM - RMホストの次のログファイルを確認してください。

    <システムフォルダ>\system32\WBEM¥Logs\

    注※ 別のフォルダにログファイルが出力されるように設定している場合は,該当するフォルダから資料を採取してください。

    監視対象ホストがUNIXの場合

    1. インスタンスの設定の際に「RMHost_User」に指定したユーザーでPFM - RMホストにログインする。

    2. SSH接続に掛かる時間を計測する。

    ・PFM - RMホストがWindowsの場合

    SSHクライアントとしてPuTTYを使用しているときはplinkコマンドを使用したバッチファイル,SSHクライアントとしてOpenSSH(Windows Server 2019同梱)を使用しているときはsshコマンドを使用したバッチファイルを作成し,SSH接続に掛かる時間を計測する。なお,plinkコマンド,sshコマンドの前後には時刻をログファイルに出力する処理を入れる。

    ・PFM - RMホストがUNIXの場合

    sshコマンドを使用したシェルスクリプトを作成し,SSH接続に掛かる時間を計測する。なお,sshコマンドの前後には時刻をログファイルに出力する処理を入れる。

    PuTTYのplinkコマンドを使用したバッチファイルの例(PFM - RMホストがWindowsの場合)

    @echo off
    set TARGET=監視対象ホスト名
    set USER=ユーザー名
    set PASSWORD=パスワード
    set PLINK=plink.exeが配置されているパス
    set KEY=秘密鍵が配置されているパス
    set COMMON_CMD=共通コマンド
    set OS_CMD=OS固有コマンド
    echo #Common command > C:\time.log
    echo %date%_%time% >> C:\time.log
    %PLINK% -ssh -noagent -i %KEY% -P 22 %USER%@%TARGET% %COMMON_CMD%
    echo %date%_%time% >> C:\time.log
    echo #OS peculiar command >> C:\time.log
    echo %date%_%time% >> C:\time.log
    %PLINK% -ssh -noagent -i %KEY% -P 22 %USER%@%TARGET% %OS_CMD%
    echo %date%_%time% >> C:\time.log

    OpenSSH(Windows Server 2019同梱)のsshコマンドを使用したバッチファイルの例(PFM - RMホストがWindowsの場合)

    @echo off
    set TARGET=監視対象ホスト名
    set USER=ユーザー名
    set PASSWORD=パスワード
    set SSH=ssh.exeが配置されているパス
    set KEY=秘密鍵が配置されているパス
    set COMMON_CMD=共通コマンド
    set OS_CMD=OS固有コマンド
    echo #Common command > C:\time.log
    echo %date%_%time% >> C:\time.log
    %SSH% -i %KEY% -o "PubkeyAuthentication=yes" -o "PasswordAuthentication=no" -p 22 %USER%@%TARGET% %COMMON_CMD%
    echo %date%_%time% >> C:\time.log
    echo #OS peculiar command >> C:\time.log
    echo %date%_%time% >> C:\time.log
    %SSH% -i %KEY% -o "PubkeyAuthentication=yes" -o "PasswordAuthentication=no" -p 22 %USER%@%TARGET% %OS_CMD%
    echo %date%_%time% >> C:\time.log

    sshコマンドを使用したシェルスクリプトの例(PFM - RMホストがUNIXの場合)

    #!/bin/sh
    echo "#Common command" > /tmp/time.log
    date -u +'%Y/%m/%d_%H:%M:%S.%N' >> /tmp/time.log
    /usr/bin/ssh△-i△秘密鍵が配置されているパス△-p△22△
    ユーザー名@監視対象ホスト名共通コマンド
    date -u +'%Y/%m/%d_%H:%M:%S.%N' >> /tmp/time.log
    echo "#OS peculiar command" >> /tmp/time.log
    date -u +'%Y/%m/%d_%H:%M:%S.%N' >> /tmp/time.log
    /usr/bin/ssh△-i△秘密鍵が配置されているパス△-p△22△
    ユーザー名@監視対象ホスト名OS固有コマンド
    date -u +'%Y/%m/%d_%H:%M:%S.%N' >> /tmp/time.log

    注 △はスペースを示します。

    秘密鍵が配置されているパスには,監視対象の設定の際に「Private_Key_File」に指定した値を使用してください。

    監視対象ホスト名には,監視対象の設定の際に「Target Host」に指定した値を使用してください。

    監視対象ホスト名plink.exeが配置されているパスssh.exeが配置されているパス秘密鍵が配置されているパスは,必ず「"(ダブルクォーテーション)」で囲んでください。

    ユーザー名には,監視対象の設定の際に「User」に指定した値を使用してください。

    共通コマンドには,次の内容を使用してください。

    "LANG=C;LC_ALL=C;export LANG;export LC_ALL;
    /bin/date -u +%Y-%m-%dT%H:%M:%SZ;/bin/uname -s;/bin/uname -a;
    /bin/uname -n;/bin/uname -r;/bin/uname -v;/bin/uname -m;
    /bin/uname -p;/bin/uname -o;/bin/uname -i"

    OS固有コマンドには,次の内容を使用してください。

    ■AIXの場合

    "LANG=C;LC_ALL=C;export LANG;export LC_ALL;/usr/bin/mpstat 5 1;
    /usr/sbin/pstat -s;/usr/sbin/sar -r 5 1;
    /usr/sbin/sar -u -P ALL 5 1;/usr/bin/uptime;/usr/bin/vmstat -s;
    /usr/bin/vmstat -v;/usr/bin/df -k;/usr/sbin/sar -d 5 1;
    /usr/bin/netstat -i -n;/usr/bin/ps -A -X -o st,pid,ppid,comm,st,pid,ppid,etime,tty,wpar,st,pid,ppid,args"

    ■HP-UXの場合

    "LANG=C;LC_ALL=C;export LANG;export LC_ALL;
    /sbin/crashconf | grep system:;/usr/sbin/sar -Muw 5 1;
    /usr/sbin/swapinfo -m;/usr/bin/uptime;/usr/bin/vmstat 5 2;
    /usr/bin/vmstat -s;/usr/bin/df -lk;/usr/sbin/ioscan -m dsf;
    /usr/bin/iostat;/usr/sbin/sar -d 5 1;/usr/bin/netstat -i -n;UNIX95=1;export UNIX95;/usr/bin/ps -A -o state,pid,ppid,comm,state,pid,ppid,etime,tty,args"

    ■Linuxの場合

    "LANG=C;LC_ALL=C;export LANG;export LC_ALL;/usr/bin/free -m -w;
    if [ $? -ne 0 ];then /usr/bin/free -m;fi;/usr/bin/mpstat -A 5 1;
    if [ $? -ne 0 ];then /usr/bin/mpstat -P ALL 5 1;fi;
    /usr/bin/sar -W 5 1;/usr/bin/uptime;/usr/bin/vmstat -s;
    /bin/df -lkP;/usr/bin/iostat -x -k -d 5 2;
    /bin/netstat -i -n;/bin/ps -e -o state,pid,ppid,comm,state,pid,ppid,etime,tty,args"

    ■Solarisの場合

    "LANG=C;LC_ALL=C;export LANG;export LC_ALL;/usr/bin/mpstat -p 5 2;
    /usr/bin/pagesize;/usr/sbin/prtconf | grep Memory;
    /usr/sbin/sar -rw 5 1;/usr/sbin/swap -l;/usr/bin/uptime;
    /usr/bin/vmstat -s;/usr/bin/df -lk;/usr/bin/iostat -x 5 2;
    /usr/bin/netstat -i -n;/usr/bin/ps -e -o s,pid,ppid,fname,s,pid,ppid,etime,tty,zone,s,pid,ppid,args"

    注※

    ・コマンドの内容はコピーアンドペーストして使用し,1行になるように指定してください。

    ・必ず全体を「"(ダブルクォーテーション)」で囲んでください。

    ・実行時にコンソールに出力される内容は無視してください。

    3. 実行結果のログファイルを確認する。

    本接続テストを実施したときに,共通コマンドの実行に10秒以上要している場合,あるいはOS固有コマンドの実行に60秒以上要している場合は,ネットワーク環境の設定を見直す必要があります。

    SSHに関するログは監視対象ホストのsyslogファイルを確認してください。ただし,SSHに関するログを監視対象ホストのsyslogファイルに出力させる場合,監視対象ホストで設定が必要になります。設定方法については,OSのマニュアルを参照してください。

    メモ

    ■運用開始後の環境での収集時間の確認

    運用開始後の環境では,次に示すPFM - RM for Platformのログファイルの出力内容から収集開始時間と収集完了時間の差を算出することで,収集時間(インスタンス内のすべての監視対象ホストで性能情報の収集が完了する時間)を確認できます。

    ●ログファイル名

    • Windowsの場合

      インストール先フォルダ\agt7\agent\インスタンス名\log\timer_01

    • UNIXの場合

      インストール先ディレクトリ/agt7/agent/インスタンス名/log/timer_01

    ●ログファイルの記載例と収集時間の算出

    <収集開始時間>

    2016/03/16 11:20:10.135 TimerThread.cpp 141 I collecting start

    <収集完了時間>

    2016/03/16 11:20:47.923 TimerThread.cpp 144 I collecting end

    <収集時間>

    収集完了時間−収集開始時間=47.923−10.135=約38秒

    また,次に示すPFM - RM for Platformのログファイルの出力内容から収集開始時間と収集完了時間の差を算出することで,各監視対象ホストごとの収集時間も確認できます。

    ●ログファイル名

    • Windowsの場合

      インストール先フォルダ\agt7\agent\インスタンス名\log\target_監視対象名_01

    • UNIXの場合

      インストール先ディレクトリ/agt7/agent/インスタンス名/log/target_監視対象名_01

    ●ログファイルの記載例と収集時間の算出

    • Windowsの場合

      <収集開始時間>

      2016/03/16 11:20:19.575 WMI_Collector.cpp 58 I collect start

      <収集完了時間>

      2016/03/16 11:20:26.024 WMI_Collector.cpp 261 I collect end

      <収集時間>

      収集完了時間−収集開始時間=26.024−19.575=約6秒

    • UNIXの場合

      <収集開始時>

      2015/10/21 18:43:02.501 SSH_Collector.cpp 65 I collection start

      <収集完了時間>

      2015/10/21 18:43:22.563 SSH_Collector.cpp 75 I collection end

      <収集時間>

      収集完了時間−収集開始時間=22.563−2.501=約20秒

  2. 性能情報を収集する1スレッド当たりの平均処理台数の算出

    PFM - RM for Platformでは,性能情報の収集を,10個のスレッドの並列処理で行っています。次に示す計算式で,性能情報を収集する1スレッド当たりの平均処理台数を算出します。

    1スレッド当たりの平均処理台数=すべての監視対象ホストの台数÷10(小数点以下は切り上げ)

  3. 収集間隔の設定値の算出

    1.および2.で算出した値を基に,次に示す計算式で,収集間隔の設定値を算出します。

    収集間隔の設定値 = (1.で算出した最長の収集時間×2.で算出した平均処理台数) + オフセット値 + 15

    注※

    Remote Monitor Collector サービス起動情報ファイル(jpcagt.ini)のOffsetラベルの設定値を示します。