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 イベント サービスでは、サブジェクト ベースのアドレス指定を使用して宛先にメッセージを送信します。サブジェクト ベースのアドレス表記は、メッセージとその宛先に対して単純で均一なネームスペースを定義します。
NameSpace Mapper
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 つのネームスペースが交差します。1 つはイベント バス用で、もう 1 つはコンフィギュレーション サーバ用です。コンフィギュレーション サーバのネームスペースの範囲内では、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 ユーザ インターフェイスを使用する場合、最初に deviceID フィールドにホスト名の値を設定する必要があります。この値は、スイッチで
cns config initialグローバル コンフィギュレーション コマンドを
使用してから(
使用する前ではない)取得します。そうしないと、続けて入力する
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 コンフィギュレーション エージェント機能は、次の機能を提供してスイッチをサポートします。
• 「初期設定」
• 「増分(部分)設定」
• 「設定の同期化」
初期設定
スイッチが最初に起動すると、ネットワークで DHCP 要求をブロードキャストして IP アドレスを取得しようとします。サブネット上には DHCP サーバがないものと見なして、ディストリビューション スイッチは DHCP リレー エージェントとして動作し、要求を DHCP サーバに転送します。DHCP サーバは、要求を受信すると新しいスイッチに IP アドレスを割り当て、Trivial File Transfer Protocol(TFTP; 簡易ファイル転送プロトコル)サーバの IP アドレス、ブートストラップ コンフィギュレーション ファイルへのパス、デフォルト ゲートウェイの IP アドレスを、DHCP リレー エージェントに対するユニキャスト応答に組み入れます。DCHP リレー エージェントは、その応答をスイッチに転送します。
スイッチは、割り当てられた IP アドレスをインターフェイス VLAN 1(デフォルト)上に自動的に設定し、TFTP サーバからブートストラップ コンフィギュレーション ファイルをダウンロードします。ブートストラップ コンフィギュレーション ファイルのダウンロードが成功すると、スイッチは実行コンフィギュレーションにそのファイルをロードします。
組み込み CNS エージェントは、該当する configID および eventID を使用して IE2100 Configuration Registrar との通信を開始します。Configuration Registrar は、configID をテンプレートにマッピングしてコンフィギュレーション ファイル全体をスイッチにダウンロードします。
図4-2に、DHCP ベースの自動設定を使用して初期ブートストラップ コンフィギュレーション ファイルを取得するための、ネットワーク構成の例を示します。
図4-2 初期設定の概要
増分(部分)設定
ネットワークの稼働後、CNS コンフィギュレーション エージェントを使用して新しいサービスを追加できます。増分(部分)設定は、スイッチに送信できます。実際の設定を、イベント ゲートウェイを介してイベント ペイロードとして(プッシュ処理)、またはスイッチにプル処理を開始させる信号イベントとして送信できます。
スイッチは、設定を適用する前に設定の構文をチェックできます。構文が正しい場合は、スイッチは増分設定を適用し、コンフィギュレーション サーバに成功を信号通知するイベントを発行します。スイッチは増分設定を適用しない場合、エラー ステータスを示すイベントを発行します。スイッチが増分設定を適用した場合、増分設定を NVRAM(不揮発性 RAM)に保存することも、保持を指示する信号が送信されるまで待つこともできます。
設定の同期化
スイッチは設定を受信した場合、書き込み信号イベントの受信時に設定の適用を遅らせることができます。書き込み信号イベントは、更新された設定を NVRAM に保存しないようにスイッチに指示します。スイッチは更新された設定を実行コンフィギュレーションとして使用します。これによりスイッチの設定は、次回の再起動時に使用するために NVRAM に設定を保存する前に、他のネットワーク アクティビティと同期化されます。
CNS 組み込みエージェントの設定
スイッチの IOS ソフトウェアに組み込まれた CNS エージェントにより、スイッチの接続および自動設定が可能になります(自動 CNS 設定のイネーブル化を参照)。設定を変更するか独自の設定をインストールする場合は、次の手順を参照してください。
• 「CNS イベント エージェントのイネーブル化」
• 「CNS コンフィギュレーション エージェントのイネーブル化」
自動 CNS 設定のイネーブル化
スイッチの自動 CNS 設定をイネーブルにするには、最初に 表4-1 の条件を満たす必要があります。条件を満たしたらスイッチの電源を入れます。 setup プロンプトには何も入力しないでください。スイッチが初期設定を開始します(初期設定を参照)。コンフィギュレーション ファイル全体がロードされたら、何もする必要はありません。
表4-1 自動設定イネーブル化の条件
|
|
アクセス スイッチ |
出荷時の設定(コンフィギュレーション ファイルなし) |
ディストリビューション スイッチ |
• IP ヘルパー アドレス • DHCP リレー エージェントのイネーブル化 • IP ルーティング(デフォルト ゲートウェイとして使用する場合) |
DHCP サーバ |
• IP アドレスの割り当て • TFTP サーバ IP アドレス • TFTP サーバ上のブートストラップ コンフィギュレーション ファイルへのパス • デフォルト ゲートウェイの IP アドレス |
TFTP サーバ |
• CNS コンフィギュレーション コマンド(スイッチが IE2100 Configuration Registrar と通信できるようにする)を格納したブートストラップ コンフィギュレーション ファイルの作成 • スイッチの 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 ] |
ステップ 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 ] |
インターフェイス接続コンフィギュレーション サブモードを開始し、Configuration Registrar に接続するようにインターフェイスを指定します。 • インターフェイスの接続には、 interface-prefix を入力します。インターフェイスの種類を指定する必要がありますが、インターフェイス番号は指定する必要はありません。 • (任意) ping-interval seconds には、連続する ping 間の試行間隔を入力します。指定できる範囲は 1 ~ 30 秒です。デフォルト値は 10 秒です。 • (任意) retries num には、ping の再試行回数を入力します。指定できる範囲は 1 ~ 30 です。デフォルトは 5 です。 |
ステップ 3 |
config-cli または 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 には、インターフェイスの種類(たとえば、 Ethernet、Group-Async、Loopback、Virtual-Template)を入力します。この設定は、どのインターフェイスから IP または MAC アドレスを取得して一意の ID を定義するかを指定します。 • { dns-reverse | ipaddress | mac-address }には、 dns-reverse を入力してホスト名を取得して一意の ID として割り当てるか、 ipaddress を入力して IP アドレスを使用するか、 mac-address を入力して MAC アドレスを一意の ID として使用します。 • (任意)スイッチの特定に使用するイベント ID 値を 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 ] |
ステップ 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 ] |
ステップ 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 コマンドを使用します。