IE2100 シリーズ Configuration Registrar ソフトウェアの概要
IE2100 シリーズ Configuration Registrar は、ネットワーク デバイスおよびサービスの配置と管理を自動化するためのコンフィギュレーション サービスとして機能するネットワーク管理デバイスです(図 4-1 を参照)。各 Configuration Registrar は、Cisco IOS デバイス(スイッチおよびルータ)のグループと、各デバイスが提供するサービスを管理し、その設定を保存したり、必要に応じて配信したりします。Configuration Registrar は、デバイス固有の設定変更を生成してデバイスに送信し、設定変更を実行してその結果をロギングすることによって、初期設定および設定の更新を自動化します。
Configuration Registrar は、スタンドアロン モードおよびサーバ モードをサポートし、次の CNS コンポーネントを備えています。
• コンフィギュレーション サービス(Web サーバ、ファイル マネージャ、ネームスペース マッピング サーバ)
• イベント サービス(イベント ゲートウェイ)
• データ サービス ディレクトリ(データ モデルおよびスキーマ)
スタンドアロン モードでは、Configuration Registrar は組み込み型 CNS ディレクトリ サービスをサポートします。このモードでは、外部ディレクトリまたはその他のデータ ストアは必要ありません。サーバ モードでは、Configuration Registrar はユーザ定義の外部ディレクトリの使用をサポートします。
図 4-1 Configuration Registrar アーキテクチャの概要
ここでは、次の概要について説明します。
• 「CNS コンフィギュレーション サービス」
• 「CNS イベント サービス」
• 「configID、deviceID、およびホスト名に関する重要事項」
CNS コンフィギュレーション サービス
CNS コンフィギュレーション サービスは、Configuration Registrar の中核コンポーネントです。スイッチ上にある CNS コンフィギュレーション エージェントと連携して動作するコンフィギュレーション サーバで構成されています。CNS コンフィギュレーション サービスは、初期設定と論理グループによる大規模な再設定のために、デバイスとサービスの設定をスイッチに配信します。スイッチはネットワーク上で初めて起動するときに、CNS コンフィギュレーション サービスから初期設定を受信します。
CNS コンフィギュレーション サービスは CNS イベント サービスを使用して設定変更イベントを送受信し、成功および失敗の通知を送信します。
コンフィギュレーション サーバは Web サーバであり、コンフィギュレーション テンプレートと組み込み型ディレクトリ(スタンドアロン モード)またはリモート ディレクトリ(サーバ モード)に保存されているデバイス固有の設定情報を使用します。
コンフィギュレーション テンプレートは、CLI(コマンドライン インターフェイス)コマンド形式で静的な設定情報を含んだテキスト ファイルです。テンプレートでは、変数は、Lightweight Directory Access Protocol(LDAP)URL を使用して指定します。この URL はディレクトリに保存されているデバイス固有の設定情報を参照します。
コンフィギュレーション エージェントは、受信したコンフィギュレーション ファイルに対する構文チェックを実行し、構文チェックの成功または失敗を示すイベントを発行することができます。コンフィギュレーション エージェントは設定をただちに適用することも、あるいは同期化イベントをコンフィギュレーション サーバから受信するまで適用を遅らせることもできます。
CNS イベント サービス
Configuration Registrar は、設定イベントの受信および生成に CNS イベント サービスを使用します。CNS イベント エージェントはスイッチ上に存在し、スイッチと Configuration Registrar のイベント ゲートウェイの間の通信を容易にします。
CNS イベント サービスは、非常に有効なパブリッシュ サブスクライブ通信方式です。CNS イベント サービスは、サブジェクトベースのアドレス指定を使用して、メッセージを宛先に送信します。サブジェクトベースのアドレス表記法では、メッセージおよび宛先には簡単で均一なネームスペースを定義します。
NSM
Configuration Registrar には、NameSpace Mapper(NSM)が含まれています。NSM は、アプリケーション、デバイス ID またはグループ ID、およびイベントに基づいてデバイスの論理グループを管理するための検索サービスを提供します。
Cisco IOS デバイスは、たとえば cisco.cns.config.load といった、Cisco IOS ソフトウェアで設定されたサブジェクト名と一致するイベント サブジェクト名のみを認識します。ネームスペース マッピング サービスを使用すると、希望する命名規則を使用することでイベントを指定できます。サブジェクト名でデータ ストアにデータを入力した場合、NSM は、イベント サブジェクト名ストリングを IOS が認識するものに解決します。
サブスクライバの場合、一意のデバイス ID とイベントが指定されると、ネームスペース マッピング サービスは、サブスクライブ対象のイベント セットを返します。同様にパブリッシャの場合、一意のグループ ID、デバイス ID、およびイベントが指定されると、マッピング サービスは、パブリッシュ対象のイベント セットを返します。
configID、deviceID、およびホスト名に関する重要事項
Configuration Registrar では、設定済みのスイッチごとに固有識別子が関連付けられていることを前提にしています。一意の識別子は複数の同義語を持つことができますが、各同義語は特定のネームスペース内で一意です。イベント サービスは、ネームスペースの内容を使用してメッセージのサブジェクトベース アドレス指定を行います。
Configuration Registrar では、2 つのネームスペース(イベント バス用とコンフィギュレーション サーバ用)があります。コンフィギュレーション サーバのネームスペースでは、configID という用語がデバイスの固有識別子です。イベント バスのネームスペースでは、deviceID という用語がデバイスの CNS 固有識別子です。
Configuration Registrar は、イベント バスとコンフィギュレーション サーバの両方を使用してデバイスに設定を提供するので、設定済みのスイッチごとに configID と deviceID の両方を定義する必要があります。
コンフィギュレーション サーバの 1 つのインスタンスでは、設定済みの 2 つのスイッチが同じ configID 値を共有できません。イベント バスの 1 つのインスタンスでは、設定済みの 2 つのスイッチが同じ deviceID 値を共有できません。
ConfigID
設定済みのスイッチごとに一意の configID があります。これは対応するスイッチ CLI 属性に対する Configuration Registrar ディレクトリへのキーの役割を果たします。スイッチ上で定義された configID は、Configuration Registrar の対応するスイッチ定義の configID と一致している必要があります。
configID は起動時に固定され、スイッチ ホスト名が再設定された場合でも、再起動するまで変更できません。
DeviceID
イベント バスに参加している設定済みのスイッチごとに一意の deviceID があります。これはスイッチの送信元アドレスに似ているので、スイッチをバス上の特定の宛先として指定できます。 cns config partial グローバル コンフィギュレーション コマンドを使用して設定されたすべてのスイッチは、イベント バスにアクセスする必要があります。したがって、スイッチから発信される deviceID は、Configuration Registrar の対応するスイッチ定義の deviceID と一致する必要があります。
deviceID の発信元は、スイッチの Cisco IOS ホスト名によって定義されます。ただし、deviceID 変数およびその使用は、スイッチに隣接するイベント ゲートウェイ内にあります。
イベント バス上の Cisco IOS の論理上の終点は、イベント ゲートウェイに組み込まれ、それがスイッチの代わりにプロキシとして動作します。イベント ゲートウェイはイベント バスに対して、スイッチおよび対応する deviceID を表示します。
スイッチは、イベント ゲートウェイとの接続が成功するとすぐに、そのホスト名をイベント ゲートウェイに宣言します。接続が確立されるたびに、イベント ゲートウェイは deviceID 値を Cisco IOS ホスト名に組み合わせます。イベント ゲートウェイは、スイッチと接続している間にこの deviceID 値をキャッシュします。
ホスト名および DeviceID
deviceID は、イベント ゲートウェイと接続したときに固定され、スイッチ ホスト名が再設定された場合でも変更されません。
スイッチのスイッチ ホスト名を変更する場合、deviceID を更新する唯一の方法はスイッチとイベント ゲートウェイ間の接続を中断することです。 no cns event グローバル コンフィギュレーション コマンドを入力してから、 cns event グローバル コンフィギュレーション コマンドを入力します。
接続が再確立されると、スイッチは変更したホスト名をイベント ゲートウェイに送信します。イベント ゲートウェイは、deviceID を新しい値に再定義します。
注意 Configuration Registrar ユーザ インターフェイスを使用する場合は、スイッチで
cns config initial グローバル コンフィギュレーション コマンドを使用する
前ではなく、使用した
後にスイッチが取得したホスト名の値に、deviceID フィールドを最初に設定する必要があります。そうしないと、後続の
cns config partial グローバル コンフィギュレーション コマンドの操作が誤動作します。
ホスト名、DeviceID、ConfigID の使用方法
スタンドアロン モードでは、ホスト名の値をスイッチに設定すると、コンフィギュレーション サーバはイベントをホスト名に送信する場合、そのホスト名を deviceID として使用します。ホスト名が設定されていない場合、イベントはデバイスの cn=< value >で送信されます。
サーバ モードでは、ホスト名は使用されません。このモードでは、バス上のイベント送信には常に一意の deviceID 属性が使用されます。この属性が設定されていない場合、スイッチを更新できません。
Configuration Registrar で Setup を実行する場合、これらの属性および関連する属性(タグ値のペア)を設定します。
(注) Configuration Registrar のセットアップ プログラムの実行の詳細については、『Cisco Intelligence Engine 2100 Series Configuration Registrar Manual』を参照してください。
CNS 組み込みエージェントの概要
CNS イベント エージェント機能によって、スイッチはイベント バス上でイベントにパブリッシュおよびサブスクライブを行い、CNS コンフィギュレーション エージェントと連携できます。CNS コンフィギュレーション エージェント機能は、次の機能によりスイッチをサポートします。
• 「初期設定」
• 「差分(部分)設定」
• 「同期設定」
初期設定
スイッチが最初に起動すると、ネットワークで Dynamic Host Configuration Protocol(DHCP)要求をブロードキャストすることで IP アドレスを取得しようとします。サブネット上には DHCP サーバがないものと想定し、ディストリビューション スイッチは DHCP リレー エージェントとして動作し、要求を DHCP サーバに転送します。DHCP サーバは要求を受信すると、新しいスイッチに IP アドレスを割り当て、Trivial File Transfer Protocol(TFTP; 簡易ファイル転送プロトコル)サーバの IP アドレス、ブートストラップ コンフィギュレーション ファイルへのパス、デフォルト ゲートウェイの IP アドレスを、DHCP リレー エージェントに対するユニキャスト応答に組み入れます。DHCP リレー エージェントは、この応答をスイッチに転送します。
スイッチは、割り当てられた IP アドレスを自動的にインターフェイス VLAN 1(デフォルト)に設定し、TFTP サーバからブートストラップ コンフィギュレーション ファイルをダウンロードします。ブートストラップ コンフィギュレーション ファイルが正常にダウンロードされると、スイッチはそのファイルを実行コンフィギュレーションにロードします。
CNS 組み込みエージェントは、該当する configID および eventID を使用して IE2100 Configuration Registrar との通信を開始します。Configuration Registrar は configID をテンプレートにマッピングし、完全なコンフィギュレーション ファイルをスイッチにダウンロードします。
図 4-2 に、DHCP ベースの自動設定を使用して初期ブートストラップ コンフィギュレーション ファイルを取得するためのネットワーク構成例を示します。
図 4-2 初期設定の概要
差分(部分)設定
ネットワークが稼働すると、CNS コンフィギュレーション エージェントを使用して新しいサービスを追加できます。差分(部分)設定は、スイッチに送信できます。実際の設定を、イベント ペイロードとしてイベント ゲートウェイを介して(プッシュ処理)、またはスイッチにプル オペレーションを開始させる信号イベントとして送信できます。
スイッチは、適用する前に設定の構文をチェックできます。構文が正しい場合は、スイッチは差分設定を適用し、コンフィギュレーション サーバに成功を信号で伝えるイベントを発行します。スイッチが差分設定を適用しない場合、エラー ステータスを示すイベントを発行します。スイッチが差分設定を適用した場合、NVRAM(不揮発性 RAM)に書き込むか、または書き込むように指示されるまで待つことができます。
同期設定
スイッチは、設定を受信した場合、書き込み信号イベントの受信時に設定の適用を遅らせることができます。書き込み信号イベントは、更新された設定を NVRAM に保存しないようにスイッチに指示します。スイッチは更新された設定を実行コンフィギュレーションとして使用します。これによりスイッチの設定は、次の再起動時の使用のために NVRAM に設定を保存する前に、他のネットワーク アクティビティと同期化されます。
CNS 組み込みエージェントの設定
スイッチの Cisco CNS ソフトウェアに組み込まれた IOS エージェントによって、スイッチを接続して自動的に設定できます(「自動 CNS 設定のイネーブル化」を参照)。設定を変更する場合、またはカスタム コンフィギュレーションをインストールする場合は次の手順を参照してください。
• 「CNS イベント エージェントのイネーブル化」
• 「CNS コンフィギュレーション エージェントのイネーブル化」
自動 CNS 設定のイネーブル化
スイッチの自動 CNS 設定をイネーブルにするには、まず 表 4-1 の条件を満たす必要があります。条件設定を完了したらスイッチの電源を入れます。 setup プロンプトでは何も入力しません。スイッチは初期設定を開始します(「初期設定」を参照)。コンフィギュレーション ファイル全体がスイッチにロードされると作業は完了です。
表 4-1 自動設定イネーブル化の条件
|
|
アクセス スイッチ |
出荷時の設定(コンフィギュレーション ファイルなし) |
ディストリビューション スイッチ |
• IP ヘルパー アドレス • DHCP リレー エージェントのイネーブル化 • IP ルーティング(デフォルト ゲートウェイとして使用する場合) |
DHCP サーバ |
• IP アドレスの割り当て • TFTP サーバの IP アドレス • TFTP サーバのブートストラップ コンフィギュレーション ファイルへのパス • デフォルト ゲートウェイの IP アドレス |
TFTP サーバ |
• スイッチが IE2100 Configuration Registrar と通信できるようにする CNS コンフィギュレーション コマンドを含むブートストラップ コンフィギュレーション ファイルを作成します。 • (デフォルトのホスト名の代わりに)スイッチ MAC アドレスまたはシリアル番号のいずれかを使用して configID および eventID を生成するようにスイッチを設定します。 • スイッチにコンフィギュレーション ファイルをプッシュするように CNS イベント エージェントを設定します。 |
IE2100 Configuration Registrar |
デバイスのタイプごとに 1 つまたは複数のテンプレートを作成し、デバイスの configID をテンプレートにマッピングします。 |
(注) Configuration Registrar でのセットアップ プログラムの実行およびテンプレートの作成の詳細については、『Cisco Intelligence Engine 2100 Series Configuration Registrar Manual』を参照してください。
CNS イベント エージェントのイネーブル化
(注) スイッチ上で CNS イベント エージェントをイネーブルにしてから、CNS コンフィギュレーション エージェントをイネーブルにする必要があります。
スイッチ上で CNS イベント エージェントをイネーブルにするには、特権 EXEC モードで次の手順を実行します。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
cns event { ip-address | hostname } [ port-number ] [ backup ] [ init-retry retry-count ] [ keepalive seconds retry-count ] [ source ip-address ] |
イベント エージェントをイネーブルにして、ゲートウェイ パラメータを入力します。 • { ip-address | hostname } に、イベント ゲートウェイの IP アドレスまたはホスト名を入力します。 • (任意) port number に、イベント ゲートウェイのポート番号を入力します。デフォルトのポート番号は 11011 です。 • (任意)バックアップ ゲートウェイであることを示す場合は、 backup を入力します (省略した場合は、プライマリ ゲートウェイになります)。 • (任意) init-retry retry-count に、バックアップに切り替えるまでの最初の再試行回数を入力します。デフォルトは 3 です。 • (任意) keepalive seconds に、スイッチがキープアライブ メッセージを送信する間隔を入力します。 retry-count に、キープアライブ メッセージへの応答がない場合に接続を終了するまでのメッセージ送信回数を入力します。デフォルト値はいずれも 0 です。 • (任意) source ip-address に、このデバイスの送信元 IP アドレスを入力します。 キーワードは、コマンドラインのヘルプ ストリングに表示されますが、サポートされていません。 |
ステップ 3 |
end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
show cns event connections |
イベント エージェントに関する情報を確認します。 |
ステップ 5 |
show running-config |
入力内容を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
CNS イベント エージェントをディセーブルにするには、 no cns event { ip-address | hostname } グローバル コンフィギュレーション コマンドを使用します。
次に、CNS イベント エージェントをイネーブルにして、IP アドレス ゲートウェイを 10.180.1.27、キープアライブ間隔を 120 秒、再試行回数を 10 回に設定する例を示します。
Switch(config)# cns event 10.180.1.27 keepalive 120 10
CNS コンフィギュレーション エージェントのイネーブル化
CNS イベント エージェントをイネーブルにした後、スイッチ上で CNS コンフィギュレーション エージェントを起動します。次のコマンドを使用して、コンフィギュレーション エージェントをイネーブルにできます。
• cns config initial グローバル コンフィギュレーション コマンドは、コンフィギュレーション エージェントをイネーブルにして、スイッチの初期設定を開始します。
• cns config partial グローバル コンフィギュレーション コマンドは、コンフィギュレーション エージェントをイネーブルにして、スイッチの部分的な設定を開始します。次に、Configuration Registrar から、スイッチに差分設定をリモートで送信できます。
初期設定のイネーブル化
スイッチ上で CNS コンフィギュレーション エージェントをイネーブルにして初期設定を開始するには、特権 EXEC モードで次の手順を実行します。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
cns config connect-intf interface-prefix [ ping-interval seconds ] [ retries num ] |
connect-interface-config サブモードを開始して、Configuration Registrar に接続するためのインターフェイスを指定します。 • 接続するインターフェイスの interface-prefix を入力します。インターフェイス タイプを指定する必要がありますが、インターフェイス番号を指定する必要はありません。 • (任意) ping-interval seconds に、連続する ping の試行間隔を入力します。指定できる範囲は 1 ~ 30 秒です。デフォルトは 10 秒です。 • (任意) retries num に、ping の再試行回数を入力します。指定できる範囲は 1 ~ 30 です。デフォルトは 5 です。 |
ステップ 3 |
config-cli または line-cli |
cns config connect-intf で定義されたインターフェイスを介して Configuration Registrar に接続するには、 config-cli を入力します。モデム ダイヤルアップ回線を介して Registrar に接続するには、 line-cli を入力します。 を生成します。 |
ステップ 4 |
exit |
グローバル コンフィギュレーション モードに戻ります。 |
ステップ 5 |
hostname name |
スイッチのホスト名を入力します。 |
ステップ 6 |
ip route network-number |
IP アドレスが network-number である Configuration Registrar へのスタティック ルートを確立します。 |
ステップ 7 |
cns id interface num { dns-reverse | ipaddress | mac-address } [ event ] または cns id { hardware-serial | hostname | string string } [ event ] |
Configuration Registrar が使用する一意の eventID または configID を設定します。 • interface num に、インターフェイスの種類(たとえば、イーサネット、Group-Async、Loopback、Virtual-Template)を入力します。この設定では、一意の ID を定義するためにどのインターフェイスから IP アドレスまたは MAC アドレスを取得するかを指定します。 • { dns-reverse | ipaddress | mac-address } では、ホスト名を取得してそのホスト名を一意の ID として割り当てるには dns-reverse を入力し、IP アドレスを使用するには ipaddress を入力し、MAC アドレスを一意の ID として使用するには mac-address を入力します。 • (任意)ID をスイッチの識別に使用する event-id 値になるように設定するには、 event を入力します。 • { hardware-serial | hostname | string string } で、 hardware-serial を入力してスイッチのシリアル番号を一意の ID として設定するか、 hostname (デフォルト)を入力してスイッチのホスト名を一意の ID として選択するか、または string string に任意のテキスト ストリングを一意の ID として入力します。 |
ステップ 8 |
cns config initial { ip-address | hostname } [ port-number ] [ event ] [ no-persist ] [ page page ] [ source ip-address ] [ syntax-check ] |
コンフィギュレーション エージェントをイネーブルにして、初期設定を開始します。 • { ip-address | hostname } に、コンフィギュレーション サーバの IP アドレスまたはホスト名を入力します。 • (任意) port number に、コンフィギュレーション サーバのポート番号を入力します。デフォルトのポート番号は 80 です。 • (任意)設定が完了したときの設定の成功、失敗、または警告のメッセージ用に event をイネーブルにします。 • (任意) cns config initial グローバル コンフィギュレーション コマンドの入力結果によってプルされた設定の NVRAM への自動書き込みを抑制するには、 no-persist を入力します。 no-persist キーワードを入力しない場合、 cns config initial コマンドを使用すると、その結果の設定が自動的に NVRAM に書き込まれます。 • (任意) page page に、初期設定の Web ページを入力します。デフォルトは /Config/config/asp です。 • (任意)送信元 IP アドレスに使用するには、 source ip-address を入力します。 • (任意)このパラメータを使用したときの構文をチェックするには、 syntax-check をイネーブルにします。 キーワードは、コマンドラインのヘルプ ストリングに表示されますが、サポートされていません。 |
ステップ 9 |
end |
特権 EXEC モードに戻ります。 |
ステップ 10 |
show cns config connections |
コンフィギュレーション エージェントに関する情報を確認します。 |
ステップ 11 |
show running-config |
入力内容を確認します。 |
CNS コンフィギュレーション エージェントをディセーブルにするには、 no cns config initial { ip-address | hostname } グローバル コンフィギュレーション コマンドを使用します。
次に、リモート スイッチで初期設定を実施する例を示します。スイッチのホスト名は一意の ID です。CNS Configuration Registrar の IP アドレスは 172.28.129.22 です。
Switch(config)# cns config connect-intf serial ping-interval 1 retries 1
Switch(config-cns-conn-if)# config-cli ip address negotiated
Switch(config-cns-conn-if)# config-cli encapsulation ppp
Switch(config-cns-conn-if)# config-cli ip directed-broadcast
Switch(config-cns-conn-if)# config-cli no keepalive
Switch(config-cns-conn-if)# config-cli no shutdown
Switch(config-cns-conn-if)# exit
Switch(config)# hostname RemoteSwitch
RemoteSwitch(config)# ip route 10.1.1.1 255.255.255.255 11.11.11.1
RemoteSwitch(config)# cns id Ethernet 0 ipaddress
RemoteSwitch(config)# cns config initial 10.1.1.1 no-persist
部分設定のイネーブル化
スイッチ上で CNS コンフィギュレーション エージェントをイネーブルにして部分設定を開始するには、特権 EXEC モードで次の手順を実行します。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
cns config partial { ip-address | hostname } [ port-number ] [ source ip-address ] |
コンフィギュレーション エージェントをイネーブルにし、部分設定を開始します。 • { ip-address | hostname } に、コンフィギュレーション サーバの IP アドレスまたはホスト名を入力します。 • (任意) port number に、コンフィギュレーション サーバのポート番号を入力します。デフォルトのポート番号は 80 です。 • (任意)送信元 IP アドレスに使用するには、 source ip-address を入力します。 キーワードは、コマンドラインのヘルプ ストリングに表示されますが、サポートされていません。 |
ステップ 3 |
end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
show cns config stats または show cns config outstanding |
コンフィギュレーション エージェントに関する情報を確認します。 |
ステップ 5 |
show running-config |
入力内容を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
CNS コンフィギュレーション エージェントをディセーブルにするには、 no cns config partial { ip-address | hostname } グローバル コンフィギュレーション コマンドを使用します。部分設定を取り消すには、 cns config cancel 特権 EXEC コマンドを使用します。