この節では SNMP の概要を述べるとともに、レガシー SNMP エージェントをSun Management Center エージェントのサブエージェントとして構成する方法について説明します。
Sun Management Center サーバは、SNMP を使用して Sun Management Center エージェントとの通信を行います。SNMP は、トポロジマネージャー、構成マネージャー、トラップハンドラなどのような他のサーバコンポーネントとも通信を行います。これに対して、Sun Management Center サーバは RMI(リモートメソッド呼び出し)を使用して Sun Management Center コンソールと通信を行います。
Sun Management Center コンポーネントの SNMP ポートは、次の 2 つのファイルで定義されます。
ファイル /var/opt/SUNWsymon/cfg/domain-config.x は、Sun Management Center コンポーネントが動作するあらゆるマシンに存在します。
ファイル /var/opt/SUNWsymon/cfg/server-config.x は、Sun Management Center サーバコンポーネントがインストールされたマシン上に存在します。
ファイル domain-config.x には、SNMP ベースの Sun Management Center エージェントごとに 1 つの構成ブロックが含まれます。各構成ブロックには、対応するエージェントのポートアドレスを定義する行が 1 つ以上含まれます。Sun Management Center サーバのデフォルトのポートは、ファイル server-config.x で定義されています。
161 以外のポートアドレスを使用する Sun Management Center エージェントがインストールされたホストは、Create Topology Object ウィンドウを使用して手作業で管理ドメインに追加できます。あるいは、検出パラメータにポート番号を指定してこれらのホストを自動的に検出することもできます。Create Topology Object ウィンドウの詳細については、『Sun Management Center 3.5 ユーザーガイド』の「オブジェクトのトポロジデータベースへの手動追加」を参照してください。ホストを自動的に検出する方法の詳細については、『Sun Management Center 3.5 ユーザーガイド』の「Discovery Manager を使用したオブジェクトのトポロジデータベースへの追加」を参照してください。 ポート 161 以外に指定できるのは 1 つのポート番号だけであるため、代替ポート番号を選択してすべてのエージェントインストールに使用する必要があります。
レガシー SNMP エージェントとは、Sun Management Center エージェントフレームワークに含まれない SNMP エージェントのことです。1 つ以上のレガシーエージェントを Sun Management Center で使用したい場合は、それらのエージェントを Sun Management Center エージェントのサブエージェントとして構成する必要があります。
以下の基準を満たすかぎり、どのようなレガシー SNMP エージェントでも Sun Management Center エージェントのサブエージェントとして構成できます。
レガシーエージェントが 161 以外のポートで稼動できる
そのレガシーエージェント構成において、レガシーエージェントをデーモンプロセスではないプロセスとして稼動させることができる
レガシーエージェント MIB 定義ファイルが存在する
以下の作業は、Sun Management Center サーバまたはエージェント、あるいはサーバとエージェントの両方がインストールされたマシンに適用できます。
root としてログインします。
ファイル /var/opt/SUNWsymon/cfg/subagent-registry-d.x が存在しない場合は、次のコマンドで /opt/SUNWsymon/base/cfg ディレクトリからこのファイルをコピーします。
# cp /opt/SUNWsymon/base/cfg/subagent-registry-d.x /var/opt/SUNWsymon/cfg/ |
ファイル /var/opt/SUNWsymon/cfg/subagent-registry-d.x で、次のブロックに類似したブロックを見つけます。
# sa2 = { # type = legacy # persist = false # snmpPort = "20001" # errorAction = restart # startCommand = "/usr/lib/snmp/mibiisa -p %port" # stopCommand = "kill -9 %pid" # pollInterval = 60 # pollHoldoff = 60 # oidTrees = 1.3.6.1.2.1 # snmpVersion = SNMPv1 # securityLevel = noauth # securityName = espublic # } |
コードが次のような状態となるように、行の先頭にあるコメント記号 (#) を削除します。
sa2 = { type = legacy persist = false snmpPort = "20001" errorAction = restart startCommand = "/usr/lib/snmp/mibiisa -p %port" stopCommand = "kill -9 %pid" pollInterval = 60 pollHoldoff = 60 managedTrees = "mib-2 sun" oidTrees = 1.3.6.1.2.1 snmpVersion = SNMPv1 securityLevel = noauth securityName = espublic } |
これらの行を次のように変更します。
sa2 を、エージェントにとって一意のサブエージェント名になるように変更します。
type を legacy に設定します。
Sun Management Center エージェントの終了時にサブエージェントが停止する場合は、persist を false に設定します。この値を true にすると、Sun Management Center エージェント はその終了時にサブエージェントを停止しません。
snmpPort を、サブエージェントを実行させたいポート番号に設定します。
errorAction を restart、ignore、または kill に設定します。 restart オプションを使用すると、Sun Management Center エージェントはサブエージェントとの通信時にエラーが発生した場合に再起動を試みます。
startCommand を、サブエージェントの起動に必要なコマンドに設定します。このコマンドには %port (snmpPort で指定される値に置換される) を含める必要があります。
stopCommand を、プロセス停止用のコマンドに設定します。サブエージェントプロセスのプロセス ID (PID) は、%pid と指定できます。
pollInterval を、Sun Management Center エージェントがサブエージェントをポーリングする時間 (秒) に設定します。
pollHoldoff を、Sun Management Center エージェントがサブエージェントを起動したあと、最初のポーリングが実行するまでを秒単位に設定します。
oidTrees を、サブエージェントで管理される SNMP OID をスペースで区切った一覧に設定します。
snmpVersion を、SNMPv1 または SNMPv2 に設定します。
securityLevel を、priv、auth、または noauth に設定します。
securityName を、使用したい SNMPv1 コミュニティ名または SNMPv2 セキュリティ名に設定します。
詳細については、ファイル subagent-registry-d.x 内の説明を参照してください。
変更を適用するため、Sun Management Center を停止して再起動します。
/opt/SUNWsymon/sbin/es-stop -A と入力して Sun Management Center を停止します。
すべてのプロセスが正常に停止するまで待ってください。
/opt/SUNWsymon/sbin/es-start -A と入力して Sun Management Center を起動します。
すべてのプロセスが正常に起動するまで待ってください。
詳細については、第 8 章「Sun Management Center の起動と停止」を参照してください。