Cisco Active Network Abstraction Network Service Activation 1.0 カスタマイズ ガイド
Cisco ANA Network Service Activation ワークフローのカスタマイズ
Cisco ANA Network Service Activation ワークフローのカスタマイズ
発行日;2012/02/07 | 英語版ドキュメント(2010/02/11 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 4MB) | フィードバック

目次

Cisco ANA Network Service Activation ワークフローのカスタマイズ

ワークフローのカスタマイズの概要

ワークフロー設計

ワークフロー アトリビュート

必須ワークフロー アトリビュート

ワークフロー作成の概要

Cisco ANA Network Service Activation ワークフローのカスタマイズ

次のトピックでは、Cisco ANA NSA ワークフローのカスタマイズについて詳細に説明します。トピックは次のとおりです。

「Cisco ANA NSA ワークフローのカスタマイズの概要」

「Cisco ANA NSA ワークフロー設計」

「Cisco ANA NSA 必須ワークフロー アトリビュート」

「ワークフロー作成の概要」

Cisco ANA NSA ワークフローのカスタマイズの概要

すべての Cisco ANA NSA ワークフロー カスタマイズを実行するには、Cisco ANA Workflow Editor を使用します。Workflow Editor では、ロールバック シナリオを含む、アクティベーション コマンドの論理フローを作成および実行できます。Workflow Editor は、順序、分岐、および失敗手順を含むタスク間の関係を定義します。また、Workflow Editor を使用して Cisco ANA コマンドと情報モデルにアクセスすることもできます。


) Cisco ANA Workflow Editor については、『Cisco Active Network Abstraction 3.7 Customization User Guide』の「Using the Workflow Editor to Create Task Workflows」を参照してください。


ワークフロー エンジンは Cisco ANA ゲートウェイに存在し、AVM 66 を使用します。導入されたすべての Cisco ANA NSA ワークフローはゲートウェイに保存されます。ワークフローの導入後は、Cisco ANA Manage を使用してワークフローのプロパティとステータスを参照できます。導入されたワークフローは、BQL を使用して Cisco ANA API から呼び出すことができます。ワークフロー エンジンは、デフォルトのワークフロー固有ロールバックを提供します。

Cisco ANA NSA ワークフローをカスタマイズするには、Cisco ANA Workflow Editor を開き、サーバからファイルを取得します。次に、ワークフロー カスタマイズを実行し、ワークフローをアップロードします。Cisco ANA NSA ワークフローのカスタマイズの要件は次のとおりです。

Cisco ANA Workflow Editor の使用に精通していること。

ワークフロー プログラミング ロジックの知識があること。

ワークフロー サービス アクティベーション目標の詳細な知識があること。

Cisco ANA NSA ワークフロー設計

Cisco ANA NSA ワークフローを使用すると、ネットワーク オペレータがアクティベーション ウィザードで入力した内容に基づいてアクティベーション シーケンスを実行できます。パッケージ化されたワークフローをカスタマイズするか、新しいワークフローを作成するかに関係なく、最初に重要な Cisco ANA NSA ワークフロー設計の原則を理解し、それらの原則がワークフローのカスタマイズに適用されるようにする必要があります。

例外処理:ワークフローは例外の発生を予測し、適切に処理する必要があります。

ロールバック(ベスト エフォート):例外発生時に完了したすべての操作をロールバックするようワークフローを準備する必要があります。ワークフローが複数のデバイスでアクティベーション シーケンスを実行し、最後のデバイスで例外が発生した場合は、完了したすべてのデバイス シーケンスをロールバックする必要があります。この機能は、デバイスとネットワークの安定性を維持するために非常に重要です。

サービスの削除(ベスト エフォート):Cisco ANA NSA ワークフローに組み込まれたロールバック機能が拡張され、Cisco ANA NSA Service Activation List を使用してオペレータがアクティベーションを手動で削除できます。Service Activation List については、『 Cisco Active Network Abstraction Network Service Activation 1.0 User Guide 』を参照してください。

マルチプラットフォームおよびインタープラットフォーム機能:サービス アクティベーションは、複数のデバイスにプロビジョニングされることがよくあります。すべてのアトリビュートがすべてのデバイスにプロビジョニングされるわけではないため、ワークフローに複数のブランチを含めて、アクティベーションがプロビジョニングされるさまざまなデバイスに対応する必要があります。

これらの設計原則は、図 3-1 に示された E-LAN ハブ ワークフロー(NSA_ELAN_HUB.template)で説明されています。ワークフローが開始されると、最初のデシジョン ポイントで、ワークフローがアクティベーションであるか、ディアクティベーションであるかが決定されます。「はい」である場合(ワークフローが [Cisco ANA NSA Activation] ウィンドウ ウィザードから開始された場合)、ワークフローはアクティベーション ブランチに進みます。「いいえ」の場合(ワークフローが [Cisco ANA NSA Service Activation List] ウィンドウから開始された場合)、ワークフローはアクティベーション削除ブランチに進みます。

図 3-1 E-LAN ハブ ワークフロー アクティベーション デシジョン ポイント

 

ワークフローがアクティベーションである場合は、デバイス タイプが次のワークフロー ブランチになります(これは、アクティベーション ウィザードでのオペレータのデバイス選択に基づきます)。E-LAN ハブ サービスは、Cisco 9000 シリーズ ルータと Cisco 7600 シリーズ ルータにプロビジョニングできます。したがって、ワークフローには、各デバイス タイプのブランチが含まれます。一般的に、デバイス ブランチはミラーリングされます。ただし、デバイスがサポートする対象によって個々のアトリビュートは異なります。

各デバイス トラックの最後にエラー捕捉ロジックが含まれ、ルータのプロビジョニング中にエラーが発生した場合に、ワークフローがロールバック ブランチに切り替わるようになります。図 3-2 に、複数のプラットフォームとエラー捕捉ブランチを示します。

ワークフローがディアクティベーションである場合(オペレータが [Service Activation List] ウィンドウからコールをディアクティベーションとして開始した場合)、ワークフローはロールバック ブランチに進みます。

図 3-2 E-LAN ハブ ワークフローの複数プラットフォーム サポートとエラー捕捉

 

Cisco ANA NSA ワークフロー アトリビュート

Cisco ANA NSA ワークフローには、アクティベーション ウィザードにより収集され、デバイスでのサービスのアクティベーションに必要なアトリビュートが含まれます。Cisco ANA NSA ワークフロー アトリビュートには複数のガイドラインが適用されます。最初に、Cisco ANA NSA では、すべてのワークフローにアトリビュート セットが存在する必要があります。たとえば、対応するワークフロー ID アトリビュート(AA_coWFId)は [Service Activation List] ウィンドウに表示され、オペレータは削除するアクティベーションを指定できます。必須の Cisco ANA NSA アトリビュートはプレフィクス「AA」で始まります。「Cisco ANA NSA 必須ワークフロー アトリビュート」に、必須の Cisco ANA NSA のリストを示します。

また、Cisco ANA NSA ワークフローには内部アトリビュートも含まれます。内部アトリビュートは、外部アトリビュート(サービス アクティベーションで必要なアトリビュート)が追加されるのと同様の方法で追加されます。唯一の違いは、外部アトリビュートの初期値が入力される方法です。外部アトリビュートには、デフォルト値が入力されるか、またはワークフロー呼び出しパラメータのセットの一部として値が入力されます。内部アトリビュートは通常、一時変数です。内部アトリビュートがワークフロー アトリビュート リストに表示されないように、内部アトリビュートは常にアンダースコア(_)で始まります。

別の Cisco ANA NSA ワークフロー アトリビュート命名規則では、「|」で区切ることができる複数値アトリビュートの後に「_list」を含めます。

図 3-3 に、E-LAN ハブ ワークフロー内のアトリビュート グループを示します。

図 3-3 E-LAN ハブ アトリビュート

 

 

1

必須アトリビュート

3

外部アトリビュート(先頭)

2

内部アトリビュート


注意 導入されたワークフローに対して入力アトリビュート(追加/削除/名前変更)を変更する場合は、Service.xml で同じワークフローまたはウィザード名(<ID> タグ)を使用しないでください。変更されたワークフローを新しい名前で保存し、新しいウィザード名を使用します。名前を変更せずに、導入されたサービス アクティベーションを非アクティブにした場合は、サービス ディアクティベーションにより、変更されたワークフローが呼び出されます。引数が変更されたため、ディアクティベーションは失敗します。同じ理由でクローニングも失敗します。引数が変更された場合は、クローニングに対して保存されたアクティベーションを使用しようとすると、パラメータの一致しないセットがウィザード モデルにコピーされます。

Cisco ANA NSA 必須ワークフロー アトリビュート

すべての Cisco ANA NSA ワークフローには次のアトリビュートが存在する必要があります。命名規則として、必須アトリビュートは「AA」で始まります。

AA_NSA_ActivationInfo

型:ストリング。

値:自由形式。

デフォルト値:ワークフロー設計者によって設定されます。ほとんどのワークフローでは、このアトリビュートのデフォルト値が「See Workflow Output for more details」に設定されます。

説明:このアトリビュートに入力された値は、[Service Activation List] ウィンドウの Info カラムに表示されます。この値は、ワークフロー実行のステータスに関するユーザ フレンドリなメッセージを反映するようワークフローで更新されます。

AA_NSA_capabilities

型:ストリング。

値:「|」で区切られた値セット:{"add", "remove"}。

デフォルト値:"add|remove"。配布された Cisco ANA NSA パッケージで提供されるすべてのワークフローは、追加機能と削除機能の両方をサポートします。

説明:この値はワークフローの機能を反映するようワークフロー設計者によって設定されます。

AA_NSA_coWFId

型:ストリング。

デフォルト値:""

説明:関連するワークフロー間でアソシエーションを保持します。"add" 操作を初めて実行するワークフローは ""(デフォルト)値を持つ必要があります。後で "remove" が実行された場合は、"remove" ワークフローの AA_NSA_coWFId 値を "add" ワークフローのワークフロー ID の値に設定し、"add" ワークフロー AA_NSA_coWFId を "remove" ワークフロー ID の値に設定する必要があります。

AA_NSA_operation

型:ストリング。

値:{"add" | "remove"}。

デフォルト値:"add"。

説明:アクティベーション コンポーネントにより Cisco ANA NSA サービス アクティベーションに対して "add" に設定されます。サービス ディアクティベーションの場合、値は "remove" に設定されます。

AA_NSA_purge

型:ストリング。

値:{"none" | "false" | "pending" | "true"}

デフォルト:"none"

説明:dwe 表領域のワークフロー インスタンス レコードの消去の動作を制御します。値が "none" または "pending" に設定されている場合、ワークフロー インスタンスはデータベースに永久に保持されます。値が "true" に設定されている場合は、標準的なエージング動作に基づいて消去されます。Cisco ANA NSA の消去については、『 Cisco Active Network Abstraction Network Service Activation 1.0 User Guide 』を参照してください。

AA_NSA_serviceActivationId

型:ストリング。

デフォルト:"none"

説明:Cisco ANA NSA アクティベーション コンポーネントによって、現在のワークフロー呼び出しに対応する Service.xml メタデータ ファイルにある IMetaDataListEntry の ID タグの値に設定されます。[Service Activation List] ウィンドウと Clone Activation 機能はこのアトリビュートを使用して Service.xml メタデータ ファイルからよりユーザ フレンドリなアクティベーションの表示名を取得します。

AA_NSA_type

型:ストリング。

デフォルト値:"NSA"

説明:Cisco ANA NSA ワークフローを非 Cisco ANA NSA ワークフローと区別できるよう Cisco ANA NSA アクティベーション コンポーネントによって "NSA" に設定されます。この値は、Cisco ANA NSA の内部向けであり、変更できません。

ワークフロー作成の概要

次の手順は、新しい Cisco ANA NSA ワークフローの作成時に従う必要がある一般的なワークフローの作成フローを示します。

1. ワークフローを作成するには、Cisco ANA Workflow Editor を使用します。他のワークフロー アプリケーションを使用して Cisco ANA NSA ワークフローを作成または変更することはできません。

2. 必須の Cisco ANA NSA ワークフロー アトリビュートを定義します(「Cisco ANA NSA 必須ワークフロー アトリビュート」を参照してください)。

3. 外部のワークフロー アトリビュートを定義します。これらは、アクティベーション ウィザードから収集されるアトリビュートです。

4. 内部のワークフロー アトリビュートを定義します。これらのアトリビュート名は「_」で始まる必要があります。

5. ワークフロー サービス ロジックを実装します。

6. 削除および例外処理ロールバック ロジックを実装します。

7. ワークフローをサーバに導入します。

8. デバッグおよび検証を行うために BQL を使用してワークフローをアクティブにします。

図 3-4 に、E-LAN ハブ ワークフローを示します。ワークフローの重要なポイントは次のとおりです。

初期化:内部アトリビュートの初期化。

操作チェック:ワークフローを呼び出して追加操作または削除操作を実行するかどうかを決定します。つまり、ワークフローが [Activation] ウィンドウまたは [Service Activation List] ウィンドウの Deactivate アクションから呼び出されたかどうかを確認します。

トークン化:ワークフローは反復ループをサポートすることがあり、アトリビュートの複数値がワークフローに渡されます。ウィザード アクティベーションでは、複数の値を「|」で区切って 1 つのアトリビュートに割り当てることができます(たとえば、attributeFoo_list = "val1|val2|val3")。ワークフロー タスクを作成してリストされたアトリビュートから値をトークン化し、ループ フロー内で使用するために一時的な内部アトリビュートに値を割り当てることが推奨されます。

プラットフォーム チェック:ほとんどの Cisco ANA NSA ワークフローは、複数のデバイスをサポートします。呼び出すプラットフォーム固有のタスクとスクリプトを決定するために、デバイス プラットフォーム タイプ(Cisco 7600 シリーズや Cisco 9000 ASR などの製品タイプ)を指定する必要があります。

サブワークフローの使用:多くのサービス アクティベーション ワークフローには非常に複雑なロジックが必要であり、これらのワークフローは他のワークフローと共通のロジックを使用します。可読性と保守性を実現するために、ワークフローがサブワークフローを呼び出したり、他のワークフローを呼び出したりすることがよくあります。

削除およびロールバック:すべての Cisco ANA NSA ワークフローはサービスの削除とベストエフォートのロールバックをサポートします。両方の機能の論理フローは似ているため、ロジックは結合されます。

図 3-4 E-LAN ハブ ワークフローの概要

 

 

1

初期化

5

例外処理

2

操作チェック

6

サブワークフロー/ワークフロー呼び出しの使用

3

複数値のアトリビュートのトークン化

7

削除ブランチとロールバック ブランチ

4

プラットフォーム チェック