Cisco IP Solution Center API プログラマ ガイド 6.0
テンプレートの使用
テンプレートの使用
発行日;2012/02/04 | 英語版ドキュメント(2009/12/18 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 2MB) | フィードバック

目次

テンプレートの使用

ISC におけるテンプレートの概要

テンプレート定義

テンプレート データ

テンプレートの動的インスタンス化

テンプレート操作

テンプレート操作の概要

テンプレートのサブタイプ

テンプレート サービス定義

テンプレート サービス オーダー

テンプレート操作の例

新規テンプレートの追加

オプションのテンプレート アトリビュートのセットアップ

ネゲート テンプレートの作成

サブテンプレートの作成

ポリシー(N-PE)でのテンプレートの作成

ポリシー(U-PE)でのテンプレートの作成

サービス リクエストからのデータ ファイルの作成

プロビジョニングの例

前提条件

プロセスのまとめ

プロビジョニング プロセスの詳細

一時的テンプレート

サービス リクエストでのテンプレート

テンプレート ノード オブジェクトの使用

リンク テンプレート

SRAssociatedTemplate

データ バッファ オブジェクト

テンプレート コンフィギュレーションの削除

ネゲート テンプレートの使用

サービス リクエストの修正

テンプレートのオフ(MPLS サービス リクエストの場合)

テンプレートのオフ(他のすべてのサービス タイプの場合)

テンプレートの使用

Cisco IP Solution Center(ISC)は、ISC ではサポートされないデバイス コマンドを生成したり、これらのコマンドをシスコ デバイスにダウンロードしたりする際にテンプレートを使用します。たとえば、ISC はルート証明書のインポートを設定しません。テンプレートによって、この設定をデバイスに追加できます。テンプレート コンフィギュレーション ファイルは、部分的なコンフィギュレーション ファイルでも、完全なコンフィギュレーション ファイルでもかまいません。このテンプレート コンフィギュレーション ファイルは ISC コンフィグレットとマージ(最後または先頭に付加)されます。統合されたコンフィグレットは、サービス リクエストの一部または一時的なテンプレートとしてデバイスにダウンロードされます。

テンプレートはサービス定義内に定義され、次のように展開されます。

サービス オーダーを使用します。

別のサービスに対するサービス リクエストに付属します(「サービス リクエストでのテンプレート」を参照してください)。

API を使用して、テンプレート定義、テンプレート データ、テンプレートに基づいたデバイス コンフィグレットを生成できます。

この章の内容は、次のとおりです。

「ISC におけるテンプレートの概要」

「テンプレート操作」

「プロビジョニングの例」

「サービス リクエストでのテンプレート」

「テンプレート コンフィギュレーションの削除」

GUI Template Manager については、『 Cisco IP Solution Center Infrastructure Reference, 6.0 』を参照してください。

MPLS プロビジョニングの観点から見たテンプレートの詳細については、『 Cisco IP Solution Center MPLS VPN User Guide, 6.0 』を参照してください。

ISC におけるテンプレートの概要

テンプレートは、テンプレート定義とテンプレート データから構成されます。テンプレート定義には、テンプレート データが入力されたロジックおよび変数が含まれます。テンプレート データは、デバイスにダウンロードされる設定情報です。ISC がテンプレート定義の変数とテンプレート データ ファイル内のデータをマージすると、テンプレート コンフィギュレーション ファイルが作成されます。テンプレート コンフィギュレーション ファイルはデバイスにダウンロードされます。

テンプレートは、他の ISC 機能と別に展開することも、サービス リクエストに添付することもできます。

API は次のタイプのテンプレート操作をサポートします。

テンプレート定義およびデータ ファイルから作成されるテンプレート。

バッファ テンプレート:テンプレート データは、データ ファイルではなくデータ バッファから引き出され、サービス リクエスト(MPLS サービス リクエストの場合のみ)に直接挿入されます。

サービス リクエストの一部として組み込まれるテンプレート:サービス リクエストは、設定(テンプレート定義とテンプレート データ方式)を受け取るようにデバイスを設定します。

一時的テンプレート:一時的なテンプレート データは、ダウンロード後に廃棄される用途のみに使用されます。これは後続の表示では使用できません(テンプレートの直接ダウンロード サービス リクエストの場合のみ)。

テンプレート定義ファイルおよびテンプレートデータ ファイルは XML 形式で格納されます。テンプレート定義ファイル、そのデータ ファイル、およびすべてのテンプレート コンフィギュレーション ファイルは、1 つのディレクトリにマッピングされます。1 つのテンプレート定義には多くのデータ ファイルが含まれますが、1 つのテンプレート データ ファイルは 1 つのテンプレート定義にしか付属できません。


ヒント 特定のテンプレート データ ファイルを使用してテンプレート コンフィギュレーション ファイルを生成すると、コンフィギュレーション ファイル名がデータ ファイル名に関連付けられます。


テンプレートとデバイスとの間の関係を確認するには、タスク ログを使用します。詳細については、「タスク ログの表示」を参照してください。

テンプレート定義

テンプレート定義は、テンプレート データが入力された変数を定義します。この定義では、テンプレートが付属する任意のデバイスについて実行する必要のあるアクションが定義されます。

テンプレート定義は、テンプレート コンフィギュレーション ファイルの作成に必要なデータを指定し、変数名とデータの関連付け方法が含まれています。


) API でのテンプレート定義は、GUI でのテンプレートに対応します。


テンプレート データ

テンプレート データは、テンプレート定義で定義された個々の変数について、名前と値のペアから構成されます。個々のテンプレート データ ファイルは、1 つのテンプレート定義にのみ関連付けられます。

テンプレート データは GUI か API で作成できます。データはテンプレート データ ファイル内にあり、データ バッファからテンプレート定義にマージされるか、一時データとしてサービス リクエストに直接入力できます。

テンプレート データ ファイルの作成は別個の操作です。ただし、一時データまたはデータ バッファを使用する場合は、サービス定義またはサービス リクエストの作成と同時にテンプレート データの入力ができます。

データ ファイルには、テンプレート定義内のすべての変数に対応するデータが含まれます。


) テンプレートをデバイスにダウンロードせずに、テンプレートを使用して作成された設定を表示するには、ViewTemplateConfig XML 要求を使用してください。テンプレート定義とテンプレート データを指定すると、XML 応答で設定が戻ります。


テンプレートの動的インスタンス化

別のテンプレートを使用するテンプレートを、スーパー テンプレートと呼びます。別のテンプレートによって使用されるテンプレートを、サブテンプレートと呼びます。

ここでは、スーパー テンプレートとサブテンプレートがどのように機能するかについて、およびこれらのテンプレートの制約事項について説明します。

スーパー テンプレートは、サブテンプレートでの変数の値を渡すことで、必要なすべてのサブテンプレートをインスタンス化します。インスタンス化後、スーパー テンプレートは、サブテンプレート用に生成されたコンフィグレットをスーパー テンプレートに配置します。

サブテンプレートにはオプションのデバイス アトリビュートがあります。これらはポリシーまたはサービス リクエストに添付できます。展開中に、スーパー テンプレートはリアルタイムのリンク詳細に基づいて、サブテンプレートのいずれか 1 つを選択します。ISC は、デバイス タイプ、ライン カード タイプ、ポート タイプ、ロール タイプ、およびソフトウェアのバージョンに基づいて、テンプレートをサブテンプレートに分けます。これらのオプションのアトリビュートは、サブテンプレートの作成中に設定されます。サブテンプレートは、次の照合基準に基づいて選択されます。

カード タイプとポート タイプのアトリビュートの場合、完全に一致しているものだけが認識されます。これらのアトリビュートではワイルドカードは使用できません。

デバイス タイプ アトリビュートでは、完全に一致しているものが 1 つだけ認識されます。

ソフトウェアのバージョンのアトリビュートでは、照合は(利用可能な場合)現行バージョンと同じソフトウェア バージョンに対して行われます。利用できない場合、1 つ前のバージョンで照合されます。

一致するアトリビュートが 1 つもない場合は、デフォルトのサブテンプレートが適用されます。

デフォルトのサブテンプレートが存在しない場合は、アトリビュート値がすべて null のサブテンプレートで照合が行われます。

照合が発生しない場合、サブテンプレートは使用されません。警告メッセージが表示されます。

さらに、スーパー テンプレートとサブテンプレートには次の特性があります。

1 つのレベルのサブテンプレートしかサポートしていませんが、サブテンプレートの深さはチェックされません。

スーパー テンプレートとサブテンプレートが循環構造になっているかどうか確認する検証は行われません。

スーパー テンプレートによって参照されるサブテンプレートを削除しようとすると、警告メッセージが表示されます。サブテンプレートは修正できます。

サブテンプレートは、複数のスーパー テンプレートに添付できます。

スーパー テンプレート用に選択できるのは 1 つのサブテンプレートだけです。

データファイルはサブテンプレートではサポートされていません。複数のデータファイルが見つかった場合、展開中の英字によるソートに基づいて、最初の有効なデータファイルが選択されます。

利用可能なテンプレート操作の概要については、「テンプレート操作の概要」で説明します。

ISC でのサブテンプレート選択のプロセスの詳細については、『 Cisco IP Solution Center Infrastructure Reference, 6.0 』を参照してください。

テンプレート操作

ISC のテンプレート機能により、多くの基本操作、ポリシー レベル操作、サービス レベル操作を実行できます。テンプレート操作を実施するには、さまざまなサブタイプ、サービス定義、サービス オーダーが必要です。

ここでは、次の操作について説明します。

「テンプレート操作の概要」

「テンプレートのサブタイプ」

「テンプレート サービス定義」

「テンプレート サービス オーダー」

「テンプレート操作の例」

テンプレート操作の概要

ISC では次のテンプレート操作が可能です。これらの操作の選択例については、「テンプレート操作の例」で説明します。

Template Manager の基本機能

それぞれの設定に応じて、テンプレートとネゲート テンプレートを作成します。

そのテンプレートにデバイス アトリビュートを指定します。

該当する場合、サブテンプレートをテンプレートに関連付けます。

サブテンプレート用のデータ ファイルを作成します。

サブテンプレートごとにネゲート テンプレートを作成します。

ネゲート テンプレート用のデータ ファイルを作成します。

スーパー テンプレートを作成し、そこにサブテンプレートを添付します。

ポリシー レベルのテンプレート機能

ポリシーを作成し、そのポリシーに対してテンプレート サポートを有効にします。

必要な場合、テンプレートをポリシーに関連付けます。

サービス レベルのテンプレート機能


) ポリシーがテンプレートのみと関連付けられていて、データ ファイルがない場合、そのポリシーを使用したサービス リクエストの作成中に、テンプレートにデータ ファイルが 1 つしかない場合、そのテンプレートのデータ ファイルの選択が発生します。


サービス リクエストを作成し、テンプレートをリンクに関連付けます。

デバイス上にサービス リクエスト(7600 など)を展開します。

7600 に対するサブテンプレートと対応するデータ ファイルが、展開用に自動的に選択されます。

コンフィグレットがサブテンプレートから生成されます。

サービス リクエストを解放します。

サブテンプレート用のネゲート テンプレートが自動的に選択および展開されます。

テンプレートのサブタイプ

テンプレート定義およびテンプレート データ ファイルはサービス定義で指定されます。テンプレート コンフィギュレーションを受け取るデバイスと、一時データおよびデータ バッファ(ある場合)が、サービス オーダーの一部としてサービス リクエストで定義されます。

API は次のテンプレート サブタイプをサポートします。

TemplateDefinition:テンプレート自体。テンプレート データが入力された変数およびロジックが含まれます。

TemplateData:テンプレート定義とマージされるデータ。

TemplateConfig:テンプレート データとマージされるテンプレート定義の結果であるテンプレート コンフィグレット。

TemplateDownload:データ ファイルからテンプレート データを使用して、デバイスにテンプレート コンフィグレットをダウンロードするために使用されます。

TemplateTransient:XML 要求に直接追加されるテンプレート データを使用して、デバイスにテンプレート コンフィグレットをダウンロードするために使用されます。

TemplateFolder:テンプレート フォルダの作成または削除を行うために使用されます。

次のテンプレート操作が API を使用して実行できます。

サービス定義サブタイプの場合:

TemplateDefinition:作成、削除、修正、または表示

TemplateData:作成、削除、修正、または表示

サービス リクエスト サブタイプの場合:

TemplateConfig:作成、修正、または表示

TemplateDownload:作成、削除、修正、または表示

TemplateDataTransient:作成または表示

テンプレート サービス定義

テンプレートを定義するためにサービス定義を使用すると、XML 要求を他のサービス ポリシー(MPLS や L2VPN)と同様に処理できるようになり、それをサービス オーダーに指定できます。

テンプレート サービス定義は、テンプレート定義と、対応するテンプレート データ項目から構成されます。テンプレート定義は、BodyText プロパティで変数名とロジックを指定します。

図 4-1 に、テンプレート サービス定義のスキーマ図を示します。この図の item はテンプレート定義を示し、name/value のペアはテンプレート データを示しています。

図 4-1 テンプレート サービス定義のスキーマ図

 

テンプレート サービス オーダー

テンプレートはサービス オーダーを使用して実装されます。サービス リクエストの展開中にテンプレート定義とデータ ファイルがマージされ、その結果のコンフィギュレーション ファイルが ISC で生成されたコンフィグレットの末尾または先頭に付加されます。統合されたコンフィギュレーションは、サービス リクエストで指定されたデバイスにダウンロードされます。

テンプレートが付加される場所によって、次の動作になります。

先頭の場合:テンプレート コマンドは、サービス リクエスト コマンドの前に実行されます。

末尾の場合:テンプレート コマンドは、サービス リクエスト コマンドの後で実行されます。

サービス オーダーは、テンプレートのダウンロード、一時データのダウンロード、およびサービス リクエスト内で指定されたテンプレートを指定できます。

テンプレートのサービス オーダーを表示するには、次のようにします。

データ ファイルを指定するテンプレートの場合、データ ファイル名のみがサービス リクエストにリストされます。データ ファイルの表示は別個の操作です。

データ バッファを指定するテンプレートの場合、データはサービス リクエスト内に表示されます。テンプレート データ バッファは、サービス リクエストの表示によってのみ表示できます。enumerateInstances 操作を使用し、テンプレート データ バッファが含まれるサービス リクエストの LocatorId を入力します。

新規テンプレートの追加

オリジナルのテンプレート情報が使用できず、デバイスから削除されている場合、次を使用してテンプレートを新たに追加できます。

createInstance では、サービス リクエストを修正するためのサービス オーダーを作成します。

modifyInstance では、サービス リクエストとサービス リクエストの詳細を修正します。

createInstance サブアクションでは、テンプレートを新たに追加します。

テンプレートを新たに追加するために、サービス オーダーを新たに作成する必要はありません。1 回のサービス リクエスト修正において、テンプレートをオフにし、ネゲート テンプレートを追加して、テンプレートを新たに追加できます。ただし、この操作は正しい順序(オフ、ネゲートを追加、新規を追加)を守る必要があります。詳細については、「サービス リクエストの修正」に説明があります。

次の例を参照してください。

<ns1:performBatchOperation>
<actions xsi:type="ns1:CIMActionList"
soapenc:arrayType="ns1:CIMAction[]">
<action>
<actionName xsi:type="xsd:string">createInstance</actionName>
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceOrder</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">ServiceName</name>
<value xsi:type="xsd:string">Acme-Template1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">CarrierId</name>
<value xsi:type="xsd:string">22</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DesiredDueDate</name>
<value xsi:type="xsd:dateTime">2002-12-13T14:55:38.885Z</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Organization</name>
<value xsi:type="xsd:dateTime">NbiCustomer</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">NumberOfRequests</name>
<value xsi:type="xsd:string">1</value>
</item>
</properties>
</objectPath>
</action>
<action>
<actionName xsi:type="xsd:string">modifyInstance</actionName>
<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceRequest</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">RequestName</name>
<value xsi:type="xsd:string">Template1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Type</name>
<value xsi:type="xsd:string">Mpls</value>
</item>
</properties>
<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceRequestDetails</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LocatorId</name>
<value xsi:type="xsd:string">36</value>
</item>
</keyProperties>
<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">MplsVpnLink</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LocatorId</name>
<value xsi:type="xsd:string">33</value>
</item>
</keyProperties>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
</properties>
<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkAttrs</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
</keyProperties>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
</properties>
</objectPath>
<objectPath subAction="createInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkTemplate</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LogicalDevice</name>
<value xsi:type="xsd:string">PE-POP1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">/Examples/templ4-enable</value>
</item>
</keyProperties>
<properties/>
<!-- objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">DataBuffer</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DLCI</name>
<value xsi:type="xsd:string">20</value>
</item>
 

オプションのテンプレート アトリビュートのセットアップ

次の例では、オプションのデバイス固有アトリビュートにより、テンプレートが作成されます。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">TemplateAttributes</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
 
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DeviceType</name>
<value xsi:type="xsd:string">7600</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">CardType</name>
<value xsi:type="xsd:string">7600-ES20-D3C</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PortType</name>
<value xsi:type="xsd:string">Gigabit12</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">SoftwareVersion</name>
<value xsi:type="xsd:string">13.2.0</value>
</item>
</properties>
</objectPath>
 

ネゲート テンプレートの作成

ISC では、ネゲート テンプレートによってテンプレートが削除されます。個々のテンプレートに対してネゲート テンプレートを一度作成する必要があります。すでに存在している場合は自動的に選択されます。手動操作は不要です。ネゲート テンプレートが存在しない場合、テンプレート コマンドは削除されません。

次の例では、ネゲート テンプレートが作成されます。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">NegateTemplate</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
 
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Description</name>
<value xsi:type="xsd:string">A template definition for negate template.</value>
</item>
 
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">BodyText</name>
<value xsi:type="xsd:string"> user $name </value>
</item>
</properties>
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">TemplateString</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Dimension</name>
<value xsi:type="xsd:string">0</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">VariableName</name>
<value xsi:type="xsd:string">name</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">MinLength</name>
<value xsi:type="xsd:string">5</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Required</name>
<value xsi:type="xsd:string">true</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">AvailableValues</name>
<value xsi:type="xsd:string">admin, iscadmin</value>
</item>
</properties>
</objectPath>
</objectPath>
 

サブテンプレートの作成

次の例では、アトリビュート付きのサブテンプレートが作成されます。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">SubTemplate</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Name</name>
<value xsi:type="xsd:string">/test/t4</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DeviceDefault</name>
<value xsi:type="xsd:string">false</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">VersionDefault</name>
<value xsi:type="xsd:string">false</value>
</item>
</properties>
</objectPath>

 

ポリシー(N-PE)でのテンプレートの作成

この例では、テンプレート定義およびテンプレート データ ファイルに基づいて N-PE ベースのポリシー テンプレートが設定されます。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">PolicyTemplate</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">RoleType</name>
<value xsi:type="xsd:string">N-PE</value>
</item>
 
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">Certificate/Cert-Enrollment</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafileName</name>
<value xsi:type="xsd:string">SampleData0</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateAction</name>
<value xsi:type="xsd:string">APPEND</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">true</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Editable</name>
<value xsi:type="xsd:string">true</value>
</item>
</properties>
</objectPath>

 

ポリシー(U-PE)でのテンプレートの作成

この例では、テンプレート定義およびテンプレート データ ファイルに基づいて U-PE ベースのポリシー テンプレートが設定されます。U-PE テンプレートは、UNI 用の UNIDatafilePath/UNIDatafileName と UNI 以外用の DatafilePath/DatafileName を備えた 2 つのポリシー テンプレート ノードにより識別されます。

テンプレートを MPLS、L2VPN、VPLS または FlexUNI のサービス ポリシーに組み込むと、テンプレート情報は PolicyTemplate オブジェクトを使用して定義されます。このポリシー テンプレートには、テンプレート定義へのパスと、テンプレート データの場所が含まれます。ポリシー テンプレートは、ポリシー タイプごとにサービス定義詳細に定義されます。

これは、U-PE の後の PE-AGG 単独でも有効です。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">PolicyTemplate</className>
<properties xsi:type="ns1:CIMPropertyList" soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty"> <name xsi:type="xsd:string">RoleType</name>
<value xsi:type="xsd:string">U-PE</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">UNIDatafilePath</name>
<value xsi:type="xsd:string">/nbi/AccessList2</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">UNIDatafileName</name>
<value xsi:type="xsd:string">MyTemplate2</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">true</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateAction</name>
<value xsi:type="xsd:string">APPEND</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Editable</name>
<value xsi:type="xsd:string">true</value>
</item>
</properties>
</objectPath>
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">PolicyTemplate</className>
<properties xsi:type="ns1:CIMPropertyList" soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty"> <name xsi:type="xsd:string">RoleType</name>
<value xsi:type="xsd:string">U-PE</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">/nbi/AccessList1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafileName</name>
<value xsi:type="xsd:string">MyTemplate2</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">true</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateAction</name>
<value xsi:type="xsd:string">APPEND</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Editable</name>
<value xsi:type="xsd:string">true</value>
</item>
</properties>
</objectPath>
 

サービス リクエストからのデータ ファイルの作成

次の例では、データ ファイルがサービス リクエストから作成されます。

 
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">DataFile</className>
<properties xsi:type="ns1:CIMPropertyList" soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Name</name>
<value xsi:type="xsd:string">/Examples/AccessList1/Data0</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Description</name>
<value xsi:type="xsd:string">Description for datafile</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Application</name>
<value xsi:type="xsd:string">eq smtp</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">protocol</name>
<value xsi:type="xsd:string">tcp</value>
</item>
</properties>
</objectPath>
 

プロビジョニングの例

ここでは、サービス リクエストに依存しないテンプレートの使用に必要な手順について説明します。サービス リクエストによるテンプレートの展開については、「サービス リクエストでのテンプレート」を参照してください。

ここでは、次の操作について説明します。

「前提条件」

「プロセスのまとめ」

「プロビジョニング プロセスの詳細」

「一時的テンプレート」

前提条件

ISC には、テンプレートの作成に役立つ定義済みの例が用意されています。

バックエンド データベースとして Sybase を使用している場合、定義済みのテンプレートの例が提供されます。これらの例は、Template Manager のメイン ウィンドウの左側ペインにあります。

バックエンド データベースとして Oracle を使用している場合、定義済みのテンプレートの例は自動的には提供されません。テンプレート定義を最初から作成するか、テンプレートをインポートする必要があります。すべてのテンプレートをインポートするには、<install-dir>/bin ディレクトリにある populateTemplates.sh スクリプトを実行します。

プロセスのまとめ

このテンプレート プロビジョニングの例では、次の手順を示します。

1. テンプレート定義ファイルを作成します。

2. テンプレート データ ファイルを作成します。

3. テンプレート データ ファイルを表示します。

4. テンプレート コンフィギュレーションを表示します。

5. テンプレート コンフィギュレーションをデバイスにダウンロードします。

6. テンプレート データ ファイルとテンプレート定義を削除します。

プロビジョニング プロセスの詳細

ここでは、XML の例を使用したプロビジョニング プロセスの例について説明します。ISC API 用の XML の例は、次の URL から入手できます。

http://www.cisco.com/en/US/docs/net_mgmt/ip_solution_center/6.0/developer/reference/
xmlapi.zip

上記のプロセスのまとめを実行するには、次の手順を使用します。


ステップ 1 テンプレート定義を作成します。

 

表 4-1 テンプレート定義の作成

操作
className
必須パラメータ

createInstance

ServiceDefinition

Name

Type=TemplateDefn

ServiceDefinitionDetails

ServiceDefinitionDetails

関連付けられた変数名と値のペアを子オブジェクトとして含む、次の 1 つ以上のクラスを含められます。

TemplateInteger

TemplateString

XML の例:

CreateTemplateDefnSimple.xml

ステップ 2 テンプレート データ ファイルを作成します。

 

表 4-2 テンプレート データの作成

操作
className
必須パラメータ

createInstance

ServiceDefinition

Name

Type=TemplateData

ServiceDefinitionDetails

ServiceDefinitionDetails

<template data>(名前と値のペア)

次の XML の例は、一次元変数または二次元変数を含むテンプレートの定義方法を示しています。入力テンプレート データは、テンプレート定義の形式と一致している必要があります。API 変数は、入力データを変数定義と比較検証します。一致していない場合はエラーを返します。

XML の例:

CreateTemplateData1Dim.xml

CreateTemplateData2Dim.xml

ステップ 3 テンプレート データ ファイルを表示します。

データ ファイルを表示するには、絶対パス名とファイル名を入力します。これは、GUI のフォルダのパス名およびファイル名と同一です。

 

表 4-3 テンプレート データの表示

操作
className
必須パラメータ

enumerateInstances

ServiceDefinition

Name=<pathname/filename to template data file>

Type=TemplateData

XML の例:

ViewTemplateData.xml

ステップ 4 テンプレート用に生成されたコンフィグレットを表示します。

 

表 4-4 コンフィグレットの表示

操作
className
必須パラメータ

enumerateInstances

Task

Type=TemplateConfig

TemplateDefn=<pathname to template definition>

TemplateData=<template data filename>

XML の例:

ViewTemplateConfig.xml

次の例は ViewTemplateConfig XML 要求への応答を示しています。

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://www.cisco.com/cim-cx/2.0" xmlns:ns1="urn:CIM">
<soapenv:Header>
<ns0:message id="87855" sessiontoken="F1856684E9A183F5E542890772B3D040" timestamp="2003-09-25T21:38:07.645Z" />
</soapenv:Header>
<soapenv:Body>
<ns1:enumerateInstancesResponse>
<returns xsi:type="ns1:CIMPropertyList" soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Configlet</name>
<value xsi:type="xsd:string">
ip vrf $vrfName
maximum routes 2 75
export map To_NM_VPN
route-target import 2:103000
route-target import 2:103500
route-target import 2:103020
route-target import 2:103520
route-target import 0
route-target import 1
exit
router bgp 13979
address-family ipv4 vrf vrf1
default-information originate
maximum-paths eibgp 6
bgp suppress-inactive
neighbor 10.10.10.1 route-map set_ce_local_pref in
neighbor 10.10.10.1 maximum-prefix 21 50
neighbor 10.10.10.1 capability orf prefix-list receive
neighbor 10.10.10.1 advertisement-interval 60
exit
</value>
</item>
</returns>
</ns1:enumerateInstancesResponse>
</soapenv:Body>
</soapenv:Envelope>
 

ステップ 5 テンプレート コンフィギュレーションをデバイスにダウンロードします。

 

表 4-5 テンプレート コンフィギュレーションのダウンロード

操作
className
必須パラメータ

performBatchOperation

createInstance

ServiceOrder

ServiceName

NumberOfRequests

この数値は、テンプレートをダウンロードする必要のあるデバイスの数を示します。

ServiceRequest

ServiceRequest

RequestName

Type=TemplateDownload

テンプレート定義情報:

ServiceDefinition=<pathname to template definition>

ServiceDefinitionType=
TemplateDefn

テンプレート データ情報:

ServiceDefinition=<pathname /filename to template data file>

ServiceDefinitionType=
TemplateData

ServiceRequestDetails

ServiceRequestDetails

LogicalDevice=<name of device to receive the template configuration>

XML の例:

CreateTemplateServiceOrderDownload.xml


) この XML では、タグ <action> <actionName xsi:type="xsd:string">createInstance</actionName> </action> を要求ごとに繰り返す必要があります。たとえば、要求の数が 2 の場合、このタグは正しい入力で、XML で 2 回繰り返す必要があります。


ステップ 6 テンプレート データ ファイルとテンプレート定義ファイルを削除します。この手順は任意です。

 

表 4-6 テンプレート ファイルの削除

操作
className
必須パラメータ

deleteInstance

ServiceDefinition

テンプレート データ ファイルを削除する場合は、次のように指定します。

Name=<pathname to template definition file>

Type=TemplateData

テンプレート定義ファイルを削除する場合は、次のように指定します。

TemplatePathname=<pathname/filename to template data file>

Type=TemplateDefn

XML の例:

DeleteTemplateData.xml

DeleteTemplateDefn.xml


 

一時的テンプレート

一時的テンプレートの場合、テンプレート データが以前定義されたデータ ファイルによって指定されることはありません。テンプレート データは XML 要求に直接入力されます。一時的データはサービス オーダーのインスタンスにのみ使用され、その後破棄されます。一時的データは、その後のサービス オーダーで使用できません。また、サービス オーダーを表示する際に、一時的データは表示できません。

生成されたコンフィグレットを表示するには、 テンプレート用に生成されたコンフィグレットを表示します。 を参照してください。

一時的テンプレート データをデバイスにダウンロードするには、 テンプレート コンフィギュレーションをデバイスにダウンロードします。 を参照してください。

一時的テンプレートの場合は、次の 2 つのプロパティを除外してください。

ServiceDefinition=<pathname/filename to template data file>

ServiceDefinitionType=TemplateData

この代わりに、ServiceDefinition に SubType=TemplateDataTransient を指定し、ServiceDefinitionDetails にテンプレート データ(名前と値のペア)を入力します。次の例を参照してください。

<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceRequest</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">RequestName</name>
<value xsi:type="xsd:string">MYSR-1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Type</name>
<value xsi:type="xsd:string">TemplateDownload</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">ServiceDefinition</name>
<value xsi:type="xsd:string">/User/UsernameTemplate</value>
<qualifier xsi:type="ns1:CIMQualifier">
<name xsi:type="xsd:string">ServiceDefintionType</name>
<value xsi:type="xsd:string">TemplateDefn</value>
</qualifier>
</item>
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceDefinition</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">SubType</name>
<value xsi:type="xsd:string">TemplateDataTransient</value>
</item>
</properties>
<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">ServiceDefinitionDetails</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">username</name>
<value xsi:type="xsd:string">user1</value>
</item>
</properties>
</objectPath>
 

XML の例:

CreateTemplateServiceOrderDownloadTransient.xml

サービス リクエストでのテンプレート

サービス リクエストへのテンプレートの追加と、サービス リクエストからのテンプレートの削除ができます。サービス オーダーが展開されると、テンプレート コンフィギュレーションがサービス リクエストからのコンフィギュレーションとともにデバイスにダウンロードされます。

テンプレートをサービス リクエストに追加するには、「新規テンプレートの追加」を参照してください。

テンプレートをサービス リクエストから削除するには、「テンプレート コンフィギュレーションの削除」を参照してください。

テンプレート ノード オブジェクトの使用

サービス リクエスト テンプレート内のテンプレート情報には、LinkTemplate オブジェクトが含まれています。これは、テンプレート定義ファイルおよびデータ ファイルの場所と、コンフィギュレーション ダウンロードを受け取るデバイスを定義し、テンプレート コンフィギュレーションの先頭に付加するか、末尾に付加するかを示します。

このノード オブジェクトは、FlexUNI/EVC では SRAssociatedTemplate で、他のプロビジョニング サービスでは LinkTemplate です。次の項で説明されています。

リンク テンプレート

SRAssociatedTemplate

リンク テンプレート

テンプレートを MPLS、L2VPN、または VPLS のサービス リクエストに組み込むと、テンプレート情報は LinkTemplate オブジェクトを使用して定義されます。LinkTemplate には、テンプレート定義へのパスと、テンプレート データの場所が含まれます。

サービス タイプごとに、LinkTemplate は次のリンク オブジェクトで、サービス リクエストに定義されます。

MPLS:MplsVpnLink

L2VPN:ACAttr(EndtoEndWire>AttachmentCircuit>ACAttr)

VPLS:VPLSLink

サービス リクエストでの LinkTemplate の使用の詳細については、サービス プロビジョニングに関する章を参照してください。

LinkTemplate ノードの使用例を次に示します。

 
<objectPath subAction="createInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkTemplate</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LogicalDevice</name>
<value xsi:type="xsd:string">8</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">/nbi/AccessList</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafileName</name>
<value xsi:type="xsd:string">MyTemplate1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">true</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateAction</name>
<value xsi:type="xsd:string">APPEND</value>
</item>
</properties>
</objectPath>
 

SRAssociatedTemplate

FlexUNI/EVC の場合、テンプレートを FlexUNI/EVC サービス リクエストに組み込むと、テンプレート情報は SRAssociatedTemplate オブジェクトを使用して定義されます。LinkTemplate と同様に、SRAssociatedTemplate には、テンプレート定義へのパスと、テンプレート データの場所が含まれます。

FlexUNI/EVC サービス タイプの場合、SRAssociatedTemplate は EvcLink リンク オブジェクトで、サービス リクエストに定義されます。

サービス リクエストでの SRAssociatedTemplate の使用の詳細については、「FlexUNI/EVC のプロビジョニング」を参照してください。

SRAssociatedTemplate ノードの使用例を次に示します。

 
<objectPath subAction="createInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">SRAssociatedTemplate</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Device</name>
<value xsi:type="xsd:string">iscind-3750-6</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateDefn</name>
<value xsi:type="xsd:string">/Examples/AccessList1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateData</name>
<value xsi:type="xsd:string">Protocol-IP</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">false</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActionType</name>
<value xsi:type="xsd:string">APPEND</value>
</item>
</properties>
</objectPath>

 

データ バッファ オブジェクト

テンプレート データがテンプレート データ ファイルから引き出されると、LinkTemplate オブジェクトにはデータ ファイルへのパスが含まれます。テンプレート データがデータ バッファから引き出される(MPLS のみ)と、LinkTemplate オブジェクトには DataBuffer オブジェクトが含まれます。DataBuffer には、テンプレート定義で定義された変数の値が含まれます。

次の例では、Source-IP、Dest-IP、および protocol の値は DataBuffer オブジェクトで定義されています。

<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">DataBuffer</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Source-IP</name>
<value xsi:type="xsd:string">132.235.123.0</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Dest-IP</name>
<value xsi:type="xsd:string">54.103.63.0</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">protocol</name>
<value xsi:type="xsd:string">udp</value>
</item>
 

DataBuffer は、サービス リクエスト内のすべての場所に定義される変数の値を指定する際にも使用できます。サービス リクエストに変数と値を入力して、これを LinkTemplate で再び繰り返す代わりに、DataBuffer を使用すると値を呼び出すだけで済みます。

次の LinkAttrs クラスにおける MPLS サービス リクエストの例の一部では、値は PE_VCI、PE_BGP_AS_ID、および Max_route_threshold にリストされます。

<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkAttrs</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">CE_Intf_Name</name>
<value xsi:type="xsd:string">ATM1.22</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PE_Intf_Name</name>
<value xsi:type="xsd:string">Switch1.234</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PE_VCI</name>
<value xsi:type="xsd:string">234</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PE_BGP_AS_ID</name>
<value xsi:type="xsd:string">13979</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Max_route_threshold</name>
<value xsi:type="xsd:string">25</value>
</item>
</properties>
</objectPath>
 

この例の次のセクションでは、同じ値が、DataBuffer で再び呼び出されています。

<objectPath xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">DataBuffer</className>
<properties xsi:type="ns1:CIMPropertyList"
soapenc:arrayType="ns1:CIMProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PE_VCI</name>
<value xsi:type="xsd:string">$PE_VCI</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">PE_BGP_AS_ID</name>
<value xsi:type="xsd:string">$PE_BGP_AS_ID</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">Max_route_threshold</name>
<value xsi:type="xsd:string">$Max_route_threshold</value>
</item>

) DataBuffer で再呼び出しできるサービス ブレード別の変数のリストについては、GUI Template Manager の Repository Variable Chooser を参照してください([Service Design] タブで、[Templates] リンクをクリックします。テンプレート データ ファイルを選択し、[Data File Editor] ウィンドウで [Vars] をクリックします)。


表 4-7 の ServiceRequestDetails にリストされた必須パラメータは、サービス オーダーのテンプレートの部分のみです。サービス リクエストの詳細については、本書のサービス プロビジョニングに関する章を参照してください。

 

表 4-7 サービス リクエストでのテンプレート

操作
className
必須パラメータ

createInstance

ServiceOrder

ServiceName

NumberOfRequests

ServiceRequest

ServiceRequest

RequestName

Type=<choose the appropriate service type>

ServiceRequestDetails

ServiceRequestDetails

MplsVpnLink(または ACAttr)

MplsVpnLink(または使用するサービスのリンク オブジェクト)

LinkTemplate

LinkTemplate

DatafilePath=<the pathname to the template definition folder>

LogicalDevice

データ ファイルまたはデータ バッファからのテンプレート データ情報。

DatafileName=<the pathname/filename to the template data file>

DataBuffer=<template data>(名前と値のペア)

TemplateActive=true

TemplateAction=

APPEND

PREPEND


) アトリビュート PE_Template、PE_Intf_Template、CE_Template、および CE_Intf_Template によって、NBI がテンプレート ブロブを保存するように設計されている変数にアクセスできるようになります(テンプレート ブロブは ISC の既存のバージョンでの MPLS プロビジョニング中に使用されています)。


XML の例:

CreateMPLSTemplateServiceOrder.xml

CreateL2VPNTemplateServiceOrder.xml

テンプレート コンフィギュレーションの削除

テンプレートを含むサービス リクエストを修正する場合、およびテンプレートを含むサービス リクエストを破棄する場合には事前に、サービス リクエストからテンプレート情報を削除する必要があります。これは、ISC で自動的に実行される、ネゲート テンプレートの既存サービスへの適用によって実施されます。

ネゲート テンプレートの使用

肯定用と否定用の両方のテンプレート/データ ファイルをポリシーに割り当てることができます。ISC は、要求されたサービス リクエストのアクション(たとえば、サービスの展開または破棄)に基づき、どちらを使用すべきかを決定します。

ネゲート テンプレートはテンプレートと同じ名前で、サフィクス「.Negate」が付加されます。ネゲート テンプレートは、そのベースである肯定用テンプレートと同じデータ ファイルを使用します。

サービス リクエストの修正

テンプレートを既存のサービス リクエストで修正するには、次の作業をリスト順に実行する必要があります。

1. テンプレートをオフにします。

このアクションにより、テンプレートの TemplateActive アトリビュートが true から false に変わります。

MPLS サービス リクエストの場合、modifyInstance サブアクションによって TemplateActive アトリビュートが自動的に false に切り替わります。

「テンプレートのオフ(MPLS サービス リクエストの場合)」を参照してください。

他のすべてのサービス リクエストの場合、TemplateActive アトリビュートは modifyInstance サブアクションで明示的に false に設定する必要があります。

「テンプレートのオフ(他のすべてのサービス タイプの場合)」を参照してください。

2. テンプレートを新たに追加します。

このアクションにより、テンプレートがサービス リクエストに新たに追加されます。テンプレートを追加するには createInstance アクションを使用します。

「新規テンプレートの追加」を参照してください。


) ネゲート テンプレートは、テンプレートが選択された時点で自動的に追加されます。ネゲート テンプレートをポリシーまたはサービス リクエストに添付する必要はありません。



) タスクが完了するまで待ってから(タスク完了メッセージを受け取ってから)、次のタスクを実行してください。


テンプレートのオフ(MPLS サービス リクエストの場合)

テンプレートで MPLS サービス リクエストを作成すると、ISC はアトリビュート TemplateActive=true に設定します。テンプレートをオフにするには、アトリビュート TemplateActive=false にする必要があります。

MPLS サービス リクエスト内のテンプレートでは、これは modifyInstance サブアクションを使用して実施されます。テンプレートで modifyInstance サブアクションを実行すると、ISC はアトリビュートの状況を TemplateActive=false に自動的に変更します。


) テンプレート アトリビュートにおけるこの自動的変更は、MPLS サービス リクエストのテンプレートで modifyInstance を使用した場合にのみ発生します。他のサービス タイプについては、「テンプレートのオフ(他のすべてのサービス タイプの場合)」を参照してください。


テンプレート コンフィギュレーションおよびテンプレート名(DataFilePath)を、テンプレートが実装されたサービス リクエストから受け取ったデバイスを組み込みます。次の例を参照してください。

<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkTemplate</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LogicalDevice</name>
<value xsi:type="xsd:string">PE-POP1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">/Examples/templ1-enable</value>
</item>
 

この XML の例では、modifyInstance サブアクションにより、デバイス PE-POP1 のテンプレート名 /Examples/temp11-enable がオフ(TemplateActive=false)になっています。

テンプレートのオフ(他のすべてのサービス タイプの場合)

MPLS とは異なり、他のすべてのサービス タイプでは、このアトリビュートの変更は自動的には行われません。modifyInstance サブアクションを使用して、アトリビュート TemplateActive=false を XML 要求に組み込む必要があります。次の例を参照してください。

<objectPath subAction="modifyInstance" xsi:type="ns1:CIMObjectPath">
<className xsi:type="xsd:string">LinkTemplate</className>
<keyProperties xsi:type="ns1:CIMKeyPropertyList"
soapenc:arrayType="ns1:CIMKeyProperty[]">
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">LogicalDevice</name>
<value xsi:type="xsd:string">PE-POP1</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">TemplateActive</name>
<value xsi:type="xsd:string">false</value>
</item>
<item xsi:type="ns1:CIMProperty">
<name xsi:type="xsd:string">DatafilePath</name>
<value xsi:type="xsd:string">/Examples/templ1-enable</value>
</item>