Cisco Active Network Abstraction 3.6.7 カスタマイゼーション ユーザ ガイド
Cisco ANA Workflow Editor の概要
Cisco ANA Workflow Editor の概要
発行日;2012/02/01 | 英語版ドキュメント(2009/11/06 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 3MB) | フィードバック

目次

Cisco ANA Workflow Editor の概要

Workflow Editor について

ワークフロー タスクとは

BQL タスクとは

ロックまたはロック解除タスクとは

ワークフロー コール(同期ワークフロー ネスティング)

Cisco ANA Workflow Editor の概要

この章では、ワークフロー テンプレートの作成に使用される Cisco ANA Workflow Editor およびタスクについて説明します。ここでは、次の情報について説明します。

「Cisco ANA Workflow Editor について」

「ワークフロー タスクとは」

「BQL タスクとは」

「ロックまたはロック解除タスクとは」

「ワークフロー コール(同期ワークフロー ネスティング)」


) レジストリの変更は必ずシスコのサポートの下で行う必要があります。詳細については、シスコの代理店にお問い合せください。


Cisco ANA Workflow Editor について

Cisco ANA Workflow Editor を使用して、複雑なロールバック シナリオを含む、アクティベーション コマンドの論理フローの作成および実行が行われます。このロジックを使用すると、シーケンス、ブランチ、障害が発生した手順、Cisco ANA コマンドへのアクセス、情報モデルを含む、タスク間の関係を定義できます。Workflow Editor では、受発注管理システムなどの外部システムとやり取りを行い、ユーザによるカスタマイズや拡張が可能なフル サービス プロビジョニング ソリューションを作成できます。

Workflow Editor は、アクティベーション ワークフローを定義および導入するための、強力な可視化設計および実行トレース ツールとして動作する、プロセス管理 GUI です。ワークフローは、階層内でグループ化およびアレンジされているいくつかのタスクで構成されています。ワークフローの管理は実行時にサポートされ、実行時 GUI コントロール コンソールが含まれます。

Workflow Editor は、ゲートウェイ コマンドが実行され、Cisco ANA ライブ ネットワーク情報モデルへの完全なアクセスが提供される、ワークフローの構築に使用されます。Workflow Editor により、ネスト構造が提供されます。ワークフロー コマンドは、Cisco ANA API を介しても使用できます。

Workflow Engine は、AVM 66 を使用するゲートウェイに存在します。導入されたすべてのワークフローは、ゲートウェイに保存されます。ワークフローの導入後、Cisco ANA Manage を介してアクセスし、プロパティおよびステータスを参照できます。導入されたワークフローは、BQL を使用して Cisco ANA API を介して起動できます。Workflow Engine により、デフォルト ワークフロー固有のロールバックが提供されます。

さらに、Cisco ANA EventVision を使用して起動されたワークフローの履歴を参照できます。

ワークフロー タスクとは

タスクがワークフローに追加され、プロセスが定義されます。各タスクでは、特定の機能が実行されます。Workflow Editor を使用すると、タスクを迅速に追加し、設定することができます。

タスクは、次のように、前のタスクまたは後続のタスクとしてクラスわけできます。

前のタスクとは、次のタスクが実行できるようになる前に完了される必要があるタスクです。

後続のタスクとは、前のタスクの後に実行されるタスクです。

たとえば、Configure Switch(1 番目のタスク)と Configure Router(2 番目のタスク)の 2 つのタスクでワークフローが構成されている場合、Configure Switch タスクが前のタスクで、Configure Router(後続のタスク)が実行できるようになる前に、完了する必要があります。

アクティベーションの状態は、次のように各タスクにアソシエートされています。

Ready:条件(たとえば、開始時刻または前のタスク)が満たされたときに開始されるよう、準備が整っています。

Active:タスクの実行が開始されています。

Done:タスクが完了しています。

Abort:タスクの実行に失敗したか、または状態が手作業で設定されました。タスクは、手作業で、Ready または Done にリセットできます。

Passive:タスクは存在しますが、現在は無関係です。後続のタスクのため、[Passive] タスクは完了したと見なされます。

図 13-1 に、通常のタスク シーケンスを示します。

図 13-1 通常のタスク シーケンス

 

BQL タスクとは

[Execute BQL] タスクは、Workflow Editor のツールバーにあります。このタスクにより、[Task Properties] ダイアログボックスの [Command Template] タブで指定される BQL コマンドが実行され、スクリプトおよび他のタスクで使用できるようにするため、[Result] と呼ばれるタスク アトリビュートに結果が保存されます。

[Command Template] タブでは、ワークフロー アトリビュートおよびタスク アトリビュートを参照できます。実行時に、アトリビュートの値が、実行前のテンプレートと置き換えられます。

ロックまたはロック解除タスクとは

[Lock] タスクには、次のように、2 つの主な目的があります。

ワークフロー インスタンスで、使用するリソースおよび用途の範囲を宣言すること。

範囲内にある場合、これらのリソースが他のどのワークフロー インスタンスによって使用されないようにすること。

[Lock] タスクを使用すると、複数のワークフローによるコンポーネントの並列使用を防ぐことができます。1 つのリソースを表すオブジェクトをロックし、それへのアクセスを防ぐことができます。リソースの識別情報は、ロックの名前の役割を果たします。任意の時点で、ロックは、ほとんどの場合、1 つのワークフローによってのみ所有されます。リソースは、ロールバック中に自動的にロックできます。

システムでは、デッドロックが発生する前に防止されます。デッドロックが発生しそうになったときには、ワークフローに属している、進捗が最も少ないロック操作に、障害が発生します。障害が発生したロックにより、ワークフローが強制終了される場合と、ワークフローが強制終了されない場合があります。

ロッキング メカニズムにより、各リソースに対する各アクセスが網羅されるわけではありません。ワークフローだけが、ロッキング プロセスに参加します。ワークフローによってリソースがロックされた場合でも、非ワークフロー アクティビティによってリソースにアクセスできます。ロッキング プロセスへの参加はオプションです。

次の作業を実行できます。

単一または複数のリソースをロックする、または、ロックを解除する。

ワークフローが終了したときに、リソースのロックを解除する。

ロールバック中にリソースをロックする。

ワークフロー コール(同期ワークフロー ネスティング)

同期ワークフロー ネスティングを使用すると、ワークフロー設計者は、サブワークフローを同期的に起動し、実行されている各サブワークフローに引数を渡すことができます。これによって、ワークフロー設計者は、親ワークフローおよび他のサブワークフローで実行されているタスクから、サブワークフローで実行されているタスクを、できる限り分離することができます。

次の機能を使用できます。

子ワークフローが、別のワークフローで実行される機能。親ワークフローで、子ワークフローの終了を待つ機能。

子ワークフローが停止するときに、その親ワークフローも停止される機能。

子ワークフローで、別の範囲のアトリビュートを持つ機能。

子ワークフローの出力が、親ワークフローに送信される機能。

親ワークフローからその子ワークフローに、パラメータを渡すことができる機能。

同じ系統の深さ全体で、正しいロールバック シーケンスが維持される機能。

子ワークフローが、API を介して見えない機能。親ワークフローと直接やり取りします。

親ワークフローでの削除および強制終了のオペレーションが、子ワークフローに任される機能。


) ワークフローのネスティングの最大の深さは、レジストリに定義されます。デフォルト値は 16 です。