Solaris のシステム管理 (システム管理エージェント)

第 1 章 システム管理エージェントの紹介

システム管理エージェントは、オープンソースの Net-SNMP エージェントの、Sun Microsystems による実装です。この章では、SNMP の主要原理について説明します。この章ではまた、システム管理エージェントの概要を紹介します。

この章で扱うトピックは次のとおりです。

SNMP とネットワーク管理の概要

SNMP (Simple Network Management Protocol) は、インターネット標準のプロトコルです。SNMP は、IP ネットワークに接続されたデバイスを照会、監視、および管理するための共通の方式を提供します。このプロトコルは、RFC 2571 に定義されています。詳細については、http://www.ietf.org/rfc/rfc2571.txt を参照してください。SNMP の詳細情報は、その他の RFC にも定義されています。

SNMP は、システム、ネットワークデバイス、およびネットワークを効果的に管理するため、企業ネットワーク内で広く使用されています。SNMP の利点の 1 つとして、増加し続けるネットワークコンポーネントやアプリケーションに対応するためのソリューションを、迅速に提供できることが挙げられます。SNMP ネットワーク内では、システム、コンポーネント、およびアプリケーションを、「エンティティー」と呼びます。管理を必要とするエンティティーの数は急速に増加しています。

SNMP は、「マネージャー」と「エージェント」からなるアーキテクチャーを使用します。SNMP マネージャーはネットワーク上のホストで実行されるプログラムの一種で、「ネットワーク管理ステーション (NMS)」とも呼ばれます。この SNMP マネージャーには、ネットワークに接続されたデバイス上で実行されている 1 つ以上の SNMP エージェントに、要求を送信する働きがあります。SNMP マネージャーからの SNMP 要求を待機するプログラムを「エージェント (デーモン)」と呼びます。

エージェント階層は、単一のマスターエージェントと複数のサブエージェントで構成されます。マスターエージェントは、SNMP マネージャーから SNMP に基づく管理要求を受信します。マスターエージェントは、これらの管理要求に対する応答を送信します。応答は、それぞれのサブエージェントから適切な値を取得したあとで送信されます。

サブエージェントは、それぞれ異なったコンポーネントの管理を担当します。この管理は、コンポーネントまたはアプリケーション専用に設計された管理情報ベース (MIB) に基づいて行われます。MIB は、管理情報の定義を含む仕様です。MIB を利用して、ネットワークやネットワークシステムをリモート操作で監視、構成、および制御できます。

エージェントは、要求を受け取ると、MIB 内の情報を検索して、マネージャーに情報を返します。MIB 内の各オブジェクトは、管理対象デバイスに関するデータを表します。オブジェクトごとに、MIB 内で一意の識別子が割り当てられています。マネージャーとエージェントが管理対象デバイスに関する情報をやりとりするためには、それぞれが同一の MIB にアクセスする必要があります。マネージャーは、MIB を使って、エージェントが使用する情報の識別子を指定します。エージェントは、同じ MIB を使って、マネージャーの SNMP 要求で渡された識別子を検索します。そしてエージェントは、要求されたデータの値を取得または設定します。システム管理エージェントがサポートする MIB の一覧については、「サポートされる MIB」を参照してください。

SNMP のバージョン

システム管理エージェントは、3 つの SNMP プロトコルをサポートします。これらのプロトコルおよび関連する RFCは、次のとおりです。

SNMPv1

SNMP v1 は、RFC 1155 および 1157 (http://www.ietf.org/rfc/rfc1155.txt および http://www.ietf.org/rfc/rfc1157.txt ) で定義されています

SNMPv2c

SNMPv2c は、RFC 1901 (http://www.ietf.org/rfc/rfc1901.txt ) で定義されています

SNMPv3

SNMPv3 は、RFC 2570 (http://www.ietf.org/rfc/rfc2570.txt ) で定義されています

システム管理エージェントでサポートされる SNMP のこれらのバージョンは、共存が可能です。共存のガイドラインについては、RFC 3584 (http://www.ietf.org/rfc/rfc3584.txt ) を参照してください。

このマニュアルで紹介するセキュリティーモデルやその他のインスタンスの中には、SNMP の一部のバージョンをサポートしていないものがあります。使用可能な SNMP のバージョンの制約については、このマニュアルおよび関連するマニュアルページに記載されています。この制約は、SNMPv3 の拡張パケット構造に部分的に起因しています。SNMPv3 パケット構造については、 図 1–1 を参照してください。

図 1–1 SNMPv3 パケット構造

この図は、SNMPv3 のパケット構造を表します。

図 1–1 に示された各パケットの概要は、次のとおりです。

msgVersion

パケットの SNMP バージョン。使用可能な値は 1、2、3 です。3 の場合、SNMPv3 を表します。

msgID

マネージャーとエージェント間でやりとりされる要求メッセージと応答メッセージの調整に使用されます。応答の msgID は要求の msgID と一致している必要があります。

msgMaxSize

送信側が別の SNMP エンジンから受信できるメッセージの最大サイズ。

msgFlags

メッセージの処理方法を指定する 8 ビット。詳細については、「VACM セキュリティー情報の格納場所」を参照してください。

msgSecurityModel

メッセージの生成に使用されるセキュリティーモデルを指定します。詳細については、「VACM セキュリティー情報の格納場所」を参照してください。

msgSecurityParameters

セキュリティーモデルに関するデータを含む 8 ビットの文字列。詳細については、「VACM セキュリティー情報の格納場所」を参照してください。

scopedPDU

標準のプロトコルデータユニット (PDU) と、この PDU の処理に使用される管理上一意のコンテキストの識別情報を含みます。詳細については、「VACM セキュリティー情報の格納場所」を参照してください。

管理情報構造

MIB の書記法は、「管理情報構造 (SMI: Structure of Management Information)」と呼ばれる一連の規則に従っています。この文書セットには、次の情報を指定するものとして業界で広く受け入れられている方法および規則が含まれています。

システム管理エージェントはSMIv2 を使用します。SMIv2 は、論理アクセスが可能になるようにオブジェクト名編成を規定しています。SMIv2 によれば、管理対象の各オブジェクトには次の属性が必要です。

名前

この名前が、オブジェクトを一意に識別するオブジェクト識別子 (OID) です。オブジェクトに OID 値を割り当てると、そのオブジェクトが登録されます。詳細については、「ISO 名前空間ツリー」を参照してください。

構文

構文は、整数型、8 ビット文字列型などのデータ型を定義します。

エンコーディング

エンコーディングは、管理対象オブジェクトに関連付けられた情報をマシン間で伝送するために直列化する方法を示します。

コミュニティー文字列

SNMP では、マネージャー (複数可) と 1 つのエージェントで、1 つの「コミュニティー」を構成します。SNMPv1 および v2c のメッセージには、コミュニティーの名前が含まれています。これは、「コミュニティー文字列」と呼ばれます。SNMPv3 パケットが USM 設定で指定されたユーザーに関連付けられるのに対して、SNMPv2 および v1 のパケットは、コミュニティー文字列に関連付けられています。コミュニティー文字列は 8 ビットの文字変数であり、これを使って次のチェックを行うことができます。

SMA でサポートされる VACM には、コミュニティー文字列モデルと動的アクセス制御モデルの詳細が記載されています。SNMPv3 の動的アクセス制御モデルについては、「VACM によるアクセス制御」を参照してください。

com2sec トークンは、コミュニティーで VACM ビューを使用できるようにするため、コミュニティーと SNMPv3 セキュリティー名のマッピングを行います。詳細については、第 4 章「セキュリティーの管理」を参照してください。

システム管理エージェントの概要

システム管理エージェントは RFC 3411 (http://www.ietf.org/rfc/rfc3411.txt ) を実装しています。SMA は、SNMP プロトコルを使ってシステム管理を行う軽量エージェントです。SMA は、Solaris ソフトウェアに標準 SNMP エージェント基盤を提供します。SMA は、アプリケーションプログラミングインタフェースに書き込まれたモジュールと AgentX サブエージェントを使って拡張できます。システム管理エージェントでモジュールを拡張する方法については、『Solaris System Management Agent Developer’s Guide 』を参照してください。AgentX の詳細については、http://www.ietf.org/rfc/rfc2741.txt を参照してください。

システム管理エージェントは、スタンドアロンエージェントとして設計されています。SNMP プロトコルを使って SMA と通信する管理アプリケーションは、複数で同時に SMA にアクセスできます。SMA は既存の SNMP エージェントと共存できます。SMA は、従来の SNMP エージェントの一部の代わりになります。

SMA は、Net-SNMP オープンソース実装バージョン 5.0.9 に基づく、Sun の新しい SNMP エージェントです。このオープンソース実装については、http://www.net-snmp.org/ を参照してください。このオープンソース実装は、以前は「UCD-SNMP」と呼ばれていました。システム管理エージェントは、最新の SNMP 標準をサポートするように設計されています。

今回の Solaris リリースでは、システム管理エージェントと Solstice Enterprise AgentsTM ソフトウェアを共存させることができます。Solstice Enterprise Agents ソフトウェアの詳細については、『Solstice Enterprise Agents 1.0 ユーザーズガイド』を参照してください。システム管理エージェントは、SNMP マネージャーとしては、Solstice Enterprise Agents ソフトウェアと同様に機能します。Solstice Enterprise Agents ソフトウェアとは異なり、システム管理エージェントは SNMPv3 をサポートしています。システム管理エージェントは、Solstice Enterprise Agents ソフトウェアよりも多くのデフォルト MIB をサポートしています。

Solstice Enterprise Agents から システム管理エージェントへの移行方法については、「Solstice Enterprise Agents ソフトウェアからの移行」を参照してください。Solstice Enterprise Agents から システム管理エージェントへのアプリケーションの移行方法については、『Solaris System Management Agent Developer’s Guide 』を参照してください。

システム管理エージェントのコンポーネント

システム管理エージェントは、SNMP 管理フレームワークに関連する標準のエージェントコンポーネントを実装しています。このフレームワークは、複数の標準で構成されています。たとえば、次のような標準があります。

関連する他の RFC の詳細については、「サポートされる MIB」を参照してください。システム管理エージェントの構成は変更可能です。構成の変更やその他の単純な SNMP 操作を実行するためのコマンド行ツールが用意されています。システム管理エージェントは、動的モジュールと Agent-X サブエージェントを使って拡張できます。詳細については、『Solaris System Management Agent Developer’s Guide 』を参照してください。

システム管理エージェントに付属している各種パッケージの概要については、「プラットフォームとパッケージ」を参照してください。

システム管理エージェントの一部のコンポーネントの関係については、図 1–2 を参照してください。

図 1–2 システム管理エージェントのコンポーネント

この図は、SMA コンポーネントの相互関係を示します。

この図は、セキュリティーおよび承認を使用して、メッセージプロセッサ、ディスパッチャー、および OID の登録処理を行うプログラム群の相互関係を示しています。この図では、その他の SNMP エージェントが、プロキシを介してシステム管理エージェントと通信しています。この図ではまた、AgentX サブエージェントが、AgentX プロトコルを使ってシステム管理エージェントと通信しています。AgentX の詳細については、「AgentX プロトコルの使用」を参照してください。図 1–2 に記載されたコンポーネントの通信の詳細については、『Solaris System Management Agent Developer’s Guide』「Overview of the System Management Agent」を参照してください。

ISO 名前空間ツリー

すべての管理対象オブジェクト (デバイスまたはデバイスの特性) は、名前、構文、およびエンコーディングを持っています。この名前が、オブジェクトを一意に識別するオブジェクト識別子 (OID) です。OID は、整数をピリオドで区切った形式で表されます。たとえば、1.3.6.1.2.1.1.1.0 は、管理サブツリーのシステムグループ内のシステムの説明を指定します。OID スキーマの一部は、ISO 組織によって作成されました。このため、OID 値を表すのに使用されるツリー構造の図を「ISO 図」と呼びます。システム管理エージェント全体の ISO 図を、図 1–3 に示します。

SMA の OID は 1.3.6.1.4.1.42.2.2.4 です。

この OID は次のデータに相当します。

iso.org.dod.internet.private.enterprises.sun.products.management.sma
図 1–3 ISO 名前空間ツリーの図

図は、SMA の OID データを示します。

サポートされる MIB

システム管理エージェントは次の MIB をサポートしています。

SNMP-COMMUNITY MIB

RFC 2576 で定義されています。 http://www.ietf.org/rfc/rfc2576.txt を参照してください

SNMPv2-TM (トランスポートのマッピング)

RFC 3417 で定義されています。http://www.ietf.org/rfc/rfc3417.txt を参照してください

SNMP-MPD-MIB (メッセージ処理と振り分け)

RFC 3412 で定義されています。http://www.ietf.org/rfc/rfc3412.txt を参照してください

SNMP-TARGET-MIB (トラップのターゲットの仕様)

RFC 3413 で定義されています。http://www.ietf.org/rfc/rfc3413.txt を参照してください

SNMP-NOTIFICATION-MIB (トラップフィルタリング)

RFC 3413 で定義されています。http://www.ietf.org/rfc/rfc3413.txt を参照してください

SNMP-PROXY-MIB (トラップ転送)

RFC 3413 で定義されています。http://www.ietf.org/rfc/rfc3413.txt を参照してください

SNMP-USER-BASED-SM-MIB (SNMPv3 用のユーザーに基づくセキュリティーモデル)

RFC 3414 で定義されています。http://www.ietf.org/rfc/rfc3414.txt を参照してください

SNMP-VIEW-BASED-ACM-MIB (SNMP 用のビューに基づくアクセス制御モデル)

RFC 3415 で定義されています。http://www.ietf.org/rfc/rfc3415.txt を参照してください

SNMPv2-MIB

RFC 3418 で定義されています。http://www.ietf.org/rfc/rfc3418.txt を参照してください

MIB II

RFC 1213 で定義されています。http://www.ietf.org/rfc/rfc1213.txt を参照してください

ホストリソース MIB

RFC 2790 で定義されています。http://www.ietf.org/rfc/rfc2790.txt を参照してください

Sun MIB

Solstice Enterprise Agents ソフトウェアからの移行に関連しています。詳細については、「Solstice Enterprise Agents ソフトウェアからの移行」を参照してください。Solstice Enterprise Agents ソフトウェアからのアプリケーションの移行については、『Solaris System Management Agent Developer’s Guide』の第 10 章「Migration of Solstice Enterprise Agents to the System Management Agent」を参照してください。

システム管理エージェントの起動後に初期化されるMIB の一覧については、「初期化された MIB を確認するには」に記述されている手順に従うと参照できます。

MIB 定義のテキストファイルは、/etc/sma/snmp/mibs/ にあります。