JP1/Cm2/Extensible SNMP Agent
システムのOSがAIXであるSNMPエージェントの,AIX固有の運用上の注意事項について説明します。OS共通の注意事項については,「3.5 運用上の注意事項」を参照してください。
- AIXのMIB pageグループの取得時の注意事項
システム構成によっては,日立企業固有MIBのpageグループのMIBを取得しようとすると,エラーが頻発する場合があります。この場合,まず,SNMPエージェントが提供するpage.exeコマンドの実行時間を計測してください。
page.exeコマンドの実行が10秒以上掛かる場合,pageグループのMIBを正しく取得することはできません。その状態のまま運用を続けると,page情報取得時に実行されるOSコマンドのプロセスが不当に動作し続け,システムに負荷を掛けるおそれがあります。
この問題を回避するためにpage.exeを次のように修正してください。修正をするとpageグループのMIBを取得した場合も,コマンドは実行されなくなり,pageグループのMIB値としては常にページ数0を意味する擬似情報が返されます。
- (修正前)
export PATH=$PATH:/usr/sbin export LANG=C lsps -a
- (修正後)
export PATH=$PATH:/usr/sbin export LANG=C echo- ネイティブエージェント機能の注意事項
- SNMPエージェントが提供するネイティブエージェントアダプター(naaagtプロセス)は,SNMPv1のSNMP get/get-next-requestにコミュニティ名「public」を指定して,AIXが提供するネイティブエージェント(snmpdプロセス)からMIBを取得します。snmpdプロセスのデフォルトの設定では,SNMPv1でコミュニティ名「public」のSNMP get/get-next-requestを許可しているので問題はありません。ただし,snmpdプロセスのコミュニティ名の設定を変更する場合は,必ずSNMPv1のSNMP get/get-next-requestを許可してください。またsnmpdプロセスのコミュニティ名を「public」以外に変更した場合は,naaagtプロセスの設定も変更してください。naaagtプロセスの設定変更方法については,「2.5.3 ネイティブエージェントアダプターの設定方法」を参照してください。
- snmpdプロセスはAIXが提供するsnmpv3_sswコマンドによってsnmpdv1エージェントを使用するかsnmpdv3エージェントを使用するのかを切り替えることができます。AIXのデフォルトはsnmpdv3エージェントを使用します。
SNMPエージェントとsnmpdv1エージェントまたはsnmpdv3エージェントを同時に起動すると,SNMP受信ポート(161/udp)の競合が発生します。そのため,snmpdv1エージェントまたはsnmpdv3エージェントのSNMP受信ポートを変更する必要あります。SNMPエージェントは,AIXのデフォルトで使用されるsnmpdv3エージェントを前提としてポートを変更します。変更方法はAIXのドキュメントを参照してください。
- AIXの提供するhostmibd,aixmibd,snmpmibdの各プロセスが161/udpを取得しているsnmpdmプロセスに対して,get/get-next-requestを発行してMIB値の取得をします。そのときに使用するコミュニティ名は「public」です。
AIXが提供するネイティブエージェント機能の流れを次の図に示します。
図3-1 AIXが提供するネイティブエージェント機能の流れ
SNMPエージェントをインストールしたあとに,SNMPエージェントのSNMP受信ポート番号を変更していない場合で,コミュニティ名「public」でのget/get-next-requestを許可していないときは,snmpdプロセス(hostmibd,aixmibd,snmpmibd)がSNMP get/get-next-requestを発行するときに使用するコミュニティ名を変更してください。
変更手順を次に示します。なお,変更作業はスーパーユーザーで実行してください。
- /usr/CM2/ESA/opt/SnmpNativeをviなどのエディタで開く。
- 次に示す行の「public」をSNMPエージェントがget/get-next-requestを許可しているコミュニティ名に変更する。
SNMP_SNMPMIBD_OPTIONS="-c public"
SNMP_HOSTMIBD_OPTIONS="-c public"
SNMP_AIXMIBD_OPTIONS="-c public"
- SNMPエージェントを再起動する。
SNMPエージェントを再起動することでhostmibd,aixmibd,snmpmibdも再起動されます。次のコマンドを実行してください。
/usr/CM2/ESA/bin/snmpstart- OSのメモリー不足によるプロセス終了の回避についての注意事項
AIXではOSでメモリー不足が生じるとSIGKILLが発行され,プロセスが終了することがあります。この現象を回避するには,SNMPエージェントを起動するユーザーの環境変数にPSALLOC=earlyを設定し,設定後,SNMPエージェントを起動してください。なお,環境変数PSALLOCにearlyを設定する場合には,同時に環境変数NODISCLAIM=trueを設定してください。指定後にSNMPエージェントを再起動してください。
環境変数PSALLOCおよびNODISCLAIMはSnmpMasterファイルに設定してください。
次に例を示します。
- (例)
SNMP_MASTER_OPTIONS="-tcplocal" # Master Agent options export SNMP_MASTER_OPTIONS PSALLOC=early export PSALLOC NODISCLAIM=true export NODISCLAIM- CPU利用率情報の取得についての注意事項
SNMPエージェントが取得するCPU利用率は,デフォルトでは個々のCPUの利用率を加算しCPU数で割り算した結果の小数点以下を切り捨てた値です。
SMT環境では,環境変数定義ファイルSnmpHtcMonagt1でSNMP_HTC_AIX_CPU_SMT環境変数にYを指定すると,マシン全体のCPU利用率を取得できます。環境変数定義ファイルのパスは,「付録A SNMPエージェントのファイルの一覧」を参照してください。
SNMP_HTC_AIX_CPU_SMT環境変数の指定例を次に示します。
- (例)
SNMP_HTC_AIX_CPU_SMT=Y export SNMP_HTC_AIX_CPU_SMT- 使用中の物理メモリー容量の取得についての注意事項
AIXでは使用中の物理メモリーをファイルキャッシュとして利用することで,ファイルアクセスを向上させています。そのため,SNMPエージェントが取得する使用中の物理メモリー容量には,デフォルトでファイルキャッシュ値が含まれています。
環境変数定義ファイルSnmpHpunixファイルでSNMP_HTC_AIX_EXCEPT_FILECACHE環境変数にYを指定すると,ファイルキャッシュ値を含まない使用中の物理メモリー容量を取得できます。環境変数定義ファイルのパスは,「付録A SNMPエージェントのファイルの一覧」を参照してください。
SNMP_HTC_AIX_EXCEPT_FILECACHE環境変数の指定例を次に示します。
- (例)
SNMP_HTC_AIX_EXCEPT_FILECACHE=Y export SNMP_HTC_AIX_EXCEPT_FILECACHE
All Rights Reserved. Copyright (C) 2009, 2010, Hitachi, Ltd.
Copyright (C) 1993-1998, Hewlett-Packard Company
Copyright (C) 1989-2006, SNMP Research International, Incorporated