4. Conductor¶
4.1. はじめに¶
本書は、Exastro IT AutomationのConductorの機能および操作方法について説明します。
4.2. Conductorの概要¶
4.3. Conductor のメニュー、画面構成¶
4.3.1. Conductor メニュー 一覧¶
No |
メニューグループ |
メニュー |
説明 |
---|---|---|---|
1 |
Conductor |
Conductorインターフェース情報 |
Conductorのインターフェース情報をメンテナンス(閲覧/更新)出来ます。 本メニューは必ず1レコードである必要があります。 |
2 |
Conductor一覧 |
Conductorをメンテナンス(閲覧/廃止)出来ます。 詳細 をクリックするとConductor編集/作業実行メニューに遷移します。 |
|
3 |
Conductor編集/作業実行 |
Conductorを編集/作業実行出来ます。 |
|
4 |
Conductor作業一覧 |
Conductor一覧(実行履歴)を閲覧出来ます。 詳細 をクリックするとConductor作業確認に遷移します。 |
|
5 |
Conductor作業確認 |
Conductor作業の実行結果を確認出来ます。 |
4.4. ITA Conductor利用手順¶
4.4.1. 作業フロー¶
- 機器情報を登録/確認する(Ansible共通)
- オペレーションを登録/確認する(基本コンソール)
- ITAの各DriverからMovementを登録する
- Movementを確認する(基本コンソール)
- Conductorのインターフェース情報を登録する
- Conductorを登録する
- Conductorを確認する
- Conductor実行する
- Conductor実行結果を確認する
- Conductor実行履歴を確認する
- 「機器情報」の登録方法については、「Ansible共通 機器一覧 」を参照して下さい。
- 「オペレーション」の登録方法については、「基本コンソール - オペレーション一覧 」を参照して下さい。
- Movementの登録方法については、各Driverの利用手順マニュアルを参照して下さい。
- Conductor実行時の各 Movementで共有するディレクトリパスが利用可能です。Movement間で情報伝達する必要がある場合、共有するディレクトリパスを利用する事で情報の受け渡しが可能となります。共有対象については、「Ansible driver」を対象としています。「Ansible driver」に関する詳細は、「Ansible-driver」を参照して下さい。
- 「Conductor call」で実行した作業フローについては、それぞれ個別に共有ディレクトリパスを持ちます。(作業フローを跨いでいるMovemetについては、共有の対象外となります。)
4.5. 機能・操作方法説明¶
4.5.1. Conductorインターフェース情報¶
では、Conductorから実行される各Movementで共有するディレクトリのパスと のリフレッシュ間隔を設定します。
の詳細は以下の通りです。
表 4.83 「一覧」サブメニュー¶ 項目
説明
入力必須
入力形式
制約事項
ConductorインターフェースID
システム側で自動採番されるため、編集不可です。
自動入力
状態監視周期(単位ミリ秒)
「Conductor作業実行」の表示をリフレッシュする間隔を入力します。通常は3000ミリ秒程度が推奨値です。
○
手動入力
最小値1000ミリ秒
備考
自由記述欄です。
手動入力
4.5.2. Conductor一覧¶
- メニューでは、登録済みのConductorを参照/廃止出来ます。詳細 をクリックすると、 Conductor編集/作業実行 画面へ遷移出来ます。の
![「Conductor一覧」メニュー](../../../../_images/conductor-list.gif)
図 4.60 「Conductor一覧」メニュー¶
4.5.3. Conductor編集/作業実行¶
モード |
説明 |
---|---|
編集モード |
|
閲覧モード |
|
更新モード |
|
「編集」モードについて¶
- Conductor 名称、作業フローを構成する各パーツ(以下、Node)を登録します。
- 選択したNodeにより、画面右上(詳細情報)に表示される内容が変わります。
![Conductor編集/作業実行メニュー画面(編集モード)](../../../../_images/conductor_main.png)
図 4.61 Conductor編集/作業実行メニュー画面(編集モード)¶
Node一覧¶
- 画面右側下部の領域には、利用可能なNodeが表示されます。
- 以下のタブから構成されます。
- Movementタブ
- 登録済みのMovementのIDと名称の一覧
- Functionタブ
- Conductor end
- Conductor pause
- Conductor call
- Conditional branch
- Parallel branch
- Parallel merge
- Status File branch
- 各Nodeについて、動作内容は以下の通りです。
画像 |
名称 |
動作説明 |
---|---|---|
Conductor start |
Conductorを開始します |
|
Conductor end |
Conductor終了します。 ※複数のConductor endがある場合、全てのConductor endが終了を待ちます。 |
|
Conductor pause |
作業フローを一時停止します。 一時停止を解除すると、次の処理へ進みます。 |
|
Conductor call |
別の登録済みのConductorを呼び出し実行します。 ※呼び出し先のConductorが警告終了で終了した場合、正常終了と同じように後続の処理を実行して、呼び出し元のステータスには影響しません。 |
|
Conditional branch |
接続された、「Movement」、「Conductor call」の結果によって、後続の処理を分岐させます。 指定可能なステータスは、以下になります。 ・正常終了 ・異常終了 ・緊急停止 ・準備エラー ・想定外エラー ・SKIP完了 ・警告終了 |
|
Parallel branch |
並列して、「Movement」、「Conductor call」を実行します。 ※並列可能な実行数は、ITAの構成やサーバースペックに依存します。 |
|
Parallel merge |
接続している全Nodeの処理が完了後、次の処理を実行します。 |
|
Status file branch |
接続された、「Movement」の作業結果ディレクトリ内のステータスファイルの内容によって、後続の処理を分岐させます。 |
|
Movement各種 |
Movementを実行します。 |
- Nodeにおける制約事項は以下の通りです。
- 登録/更新を行うには、全てのNodeのIN/OUTが接続されている必要があります。
図 4.62 Node制約事項(正常例:Parallel branch)¶
- Parallel mergeを使用する場合、Parallel branchを使用している必要があります。
図 4.63 Node制約事項(NG例:Parallel branch)¶
- Conditional branch で分岐されたフローについてParallel mergeでマージする事はできません。
図 4.64 Node制約事項(NG例:Conditional branch)¶
- Parallel branch、Conditional branch、Parallel merge、Conductor pauseについて、連続して同じ種類のNodeを接続する事はできません。
図 4.65 Node制約事項(NG例:連続使用)¶
- 更新中のConductorをConductor callで指定し、更新することはできません。
- 各NodeをNode一覧からドラッグ&ドロップで追加することが可能です。
- Node選択時、画面右上(詳細情報)に表示される「備考」欄には、処理説明やコメントをメモすることが可能です。
- 「備考」欄の記述は処理実行に影響はありません。Web上でのみ参照できるメモ欄です。
- Node設定後、+登録 をクリックしてConductorを登録します。
各Node詳細情報¶
- 画面右側上部の領域には、選択しているNodeの詳細情報が表示されます。
- 選択しているNodeによってタブの名称が変わります。
- Node未選択時(Conductorタブ)
- Node未選択の場合表示されます。
- タブ内の項目は以下の通りです。
表 4.86 「Conductor」タブ¶ 項目
説明
入力必須
入力形式
制約事項
ID
Conductorに対応した一意のIDが自動入力されます。
-
自動入力
-
名称
任意のConductor名称を入力します。
○
手動入力
-
更新日時
選択したConductorが更新された日時が自動入力されます。
-
自動入力
-
備考
Conductorに対する説明やコメントを入力します。
-
手動入力
-
- Movement選択時
- 「Node一覧 」における「Movement」タブ内のNodeを選択した場合表示されます。
- タブ名は選択したMovementのオーケストレータ名が表示されます(例_Ansible Legacy Role)。
- タブ内の項目は以下の通りです。
表 4.87 オーケストレータ名(Ansible Legacy Role)タブ¶ 項目
説明
入力必須
入力形式
制約事項
Movement ID
選択したMovementのIDが表示されます。
-
自動入力
-
名称
選択したMovementの名称が表示されます。
-
自動入力
-
スキップ
対象作業をスキップする場合にチェックします。「Conductor作業実行」メニューにて、変更可能なパラメータです。
-
手動入力
-
個別オペレーション
オペレーション選択 クリックして表示される一覧から任意の値を選択出来ます。選択したオペレーション名が表示されます。-
選択
-
備考
Nodeに対する説明やコメントを入力出来ます。
-
手動入力
-
各Node選択時の「備考」欄
- 「Node一覧 」における「Movement」タブおよび「Function」タブ内の各Nodeを選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.88 各Node選択時のタブ¶ 項目
説明
入力必須
入力形式
制約事項
備考
Nodeに対する説明やコメントを入力出来ます。
-
手動入力
-
Conductor call選択時
- 「Node一覧 」における「Function」タブ内の「Conductor call」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.89 「Conductor call」タブ¶ 項目
説明
入力必須
入力形式
制約事項
スキップ
対象作業をスキップする場合にチェックします。Conductor作業実行画面にて、変更可能なパラメータです。-
ラジオボタン
-
呼び出しConductor
Conductor選択 をクリックして表示される一覧からConductorを選択出来ます。指定したConductor名称が表示されます。-
選択
-
個別オペレーション
オペレーション選択 をクリックして表示される一覧から、任意のオペレーションを選択出来ます。指定したオペレーション名が表示されます。-
選択
-
Conditional branch選択時
- 「Node一覧 」における「Function」タブ内の「Conditional branch」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.90 「Conditional branch」タブ¶ 項目
説明
入力必須
入力形式
制約事項
条件分岐設定
分岐数を設定します。 分岐追加 /分岐削除 をクリックして、分岐を増減します。最大6件のcaseを追加出来ます。
-
選択
-
case
Movement、Conductor callの実行結果による条件分岐を設定します。
ドラッグアンドドロップで設定を変更出来ます。
デフォルトは以下の通りです。
case1
正常終了
Other
異常終了、緊急停止、準備エラー、想定外エラー、Skip終了、警告終了
-
選択
-
Parallel branch選択時
- 「Node一覧 」における「Function」タブ内の「Parallelbranch」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.91 「Parallel branch」タブ¶ 項目
説明
入力必須
入力形式
制約事項
平行分岐設定
分岐数を設定します。 分岐追加 / 分岐削除 をクリックして、分岐を増減します。デフォルトの分岐数は2です。2以下の値は設定できません。-
選択
-
Parallel Merge選択時
- 「Node一覧 」における「Function」タブ内の「Parallel merge」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.92 「Parallel Merge」タブ¶ 項目
説明
入力必須
入力形式
制約事項
case
分岐数を設定します。 マージ追加 / マージ削除 クリックして、分岐を増減します。デフォルトの分岐数は2です。2以下の値は設定できません。-
選択
-
Conductor end選択時
- 「Node一覧 」における「Function」タブ内の「Conductor end」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.93 「End」タブ¶ 項目
説明
入力必須
入力形式
制約事項
終了ステータス
Endまで処理された際に、選択されたステータスが、Conductorのステータスへ反映されます。- 正常 (デフォルト値)- 警告- 異常複数のEndノードまで処理された場合、反映されるステータスの優先度は以下です。優先度: 正常 < 警告 < 異常-
選択
-
Status file branch選択時(Status file branchタブ)
- 「Node一覧 」における「Function」タブ内の「Status file branch」を選択した場合表示されます。
- タブ内の項目は以下の通りです。
表 4.94 「Status file branch」タブ¶ 項目
説明
入力必須
入力形式
制約事項
ステータスファイル分岐設定
Movement のステータスファイルによる条件分岐を設定します。条件追加 / 条件削除 をクリックして、分岐を増減します。デフォルトの分岐は「if」と「else」です。-
選択
-
備考
Nodeに対する説明やコメントを入力出来ます。
-
手動入力
-
注釈
参照するステータスファイルについて- 参照するステータスファイルは、各Movmentの作業結果ディレクトリ配下の「MOVEMENT_STATUS_FILE」を参照します。
- ステータスファイルが存在しない場合、「else」側の処理を行います。
- ステータスファイル内の内容が、複数行(改行コードを含む)場合、改行コード以降は、除外した値を評価対象とします。
例)改行含むステータスファイルの内容1 23 4
ステータスファイルの内容を「1」として、評価を行います。表 4.95 ステータスファイルITA独自変数¶ ITA独自変数
変数指定内容
制約事項
__movement_status_filepath__
作業結果ディレクトリ配下の「MOVEMENT_STATUS_FILE」のパス
※
「Node」タブ
「Node一覧 」における「Movement」タブおよび「Function」タブ内のNodeを複数選択した場合表示されます。
グリッド内の整列をすることが可能になります。
Nodeを複数選択する方法については、ドラッグアンドドロップでの範囲選択の他、「shift」キーをクリックしながらの選択が可能です。
タブ内の項目は以下の通りです。
図 4.66 Nodeの整列¶
表 4.96 「Node」タブ¶ 項目
説明
入力必須
入力形式
制約事項
複数選択したNodeを左揃えに整列します。
-
選択
-
複数選択したNodeを左右中央揃えに整列します。
-
選択
-
複数選択したNodeを右揃えに整列します。
-
選択
-
複数選択したNodeを上揃えに整列します。
-
選択
-
複数選択したNodeを上下中央揃えに整列します。
-
選択
-
複数選択したNodeを下揃えに整列します。
-
選択
-
複数選択したNodeを左右等間隔にします。
-
選択
-
複数選択したNodeを上下等間隔にします。
-
選択
-
- 「Conductor編集/作業実行」メニューで実行可能な操作は以下の通りです。
項目 |
説明 |
新規 |
更新 |
備 考 |
|
---|---|---|---|---|---|
EDIT |
VIEW |
EDIT |
|||
JSON保存 |
現在の表示中のConductorの構成情報(JSON形式)を出力します。 |
〇 |
|||
JSON読込 |
Conductorの構成情報(JSON形式)を読み込み、表示します。 |
〇 |
|||
操作取り消し |
直前の処理を取り消します。 |
〇 |
〇 |
||
操作やり直し |
直前の取り消しをやり直します。 |
〇 |
〇 |
||
選択ノード削除 |
選択しているNodeを削除します。 |
〇 |
〇 |
||
登録 |
登録を実施します。 |
〇 |
〇 |
||
リセット |
初期状態へ戻します。 |
〇 |
|||
編集 |
EDITモードへ変更し、Conductorの編集を行います。 |
〇 |
〇 |
||
流用新規 |
登録済のConductorを流用して、新規作成が行えます。 |
〇 |
〇 |
||
更新 |
編集内容を更新します。 |
〇 |
|||
再読込 |
変更をキャンセルし、変更前の状態へ戻します。 |
〇 |
|||
キャンセル |
変更をキャンセルし、VIEWモードへ変更します。 |
〇 |
「閲覧」モードについて¶
![「Conductor編集/作業実行」メニュー(「閲覧」モード)](../../../../_images/view_mode.png)
図 4.67 「Conductor編集/作業実行」メニュー(「閲覧」モード)¶
項目 |
説明 |
---|---|
選択 |
登録済みのConductorを選択して閲覧出来ます。 |
編集 |
登録済みのConductorを編集出来ます。 |
作業実行 |
選択したConductorの作業実行を行います。 |
流用新規 |
登録済みのConductorをコピーして新規作成が行えます。 |
新規 |
Conductorの新規作成が行えます。 |
「更新」モードについて¶
![「Conductor編集/作業実行」メニュー(「更新」モード)](../../../../_images/update_mode.png)
図 4.68 「Conductor編集/作業実行」メニュー(「更新」モード)¶
項目 |
説明 |
---|---|
更新 |
編集内容が保存されます。 |
再読み込み |
編集内容が破棄されて登録内容の状態に戻ります。 |
キャンセル |
編集 クリック前の状態に戻ります。 |
フルスクリーン |
ブラウザの表示がフルスクリーンになります。
※フルスクリーン時は フルスクリーン解除 に変わります。
|
全体表示 |
Node すべてが表示される縮尺で表示されます。 |
Conductor作業実行について¶
- オペレーション選択 をクリックすると、 で登録したオペレーションが表示されます。※「基本コンソール - オペレーション一覧 」を参照。
オペレーションを選択し 実行 をクリックすると に遷移し、作業のトレースが始まります。
- 「スケジュール」にて予約日時を入力して 実行 をクリックすると、作業予約が作られます。登録情報は「 Conductor作業一覧 」で確認出来ます。※現在時刻より過去の日時は入力できません
- Movement、Conductor Callのオペレーション, スキップのみ、設定値を変更可能です。※Conductor編集で登録したデータへ変更は反映されません。作業実行にのみ反映されます。
実行したConductorに設定されるアクセス権について、実行時に選択したConductor、オペレーションに設定されたアクセス権の共通するロールを継承します。共通するロールが存在しない場合、作業実行できません。
「作業実行設定」共通項目は以下の通りです。
項目 |
説明 |
入力必須 |
入力形式 |
制約事項 |
---|---|---|---|---|
作業実行 Conductor |
選択したしたConductorが表示されます。 |
- |
自動入力 |
|
オペレーション |
オペレーション選択 をクリックし、オペレーションを選択します。 |
○ |
選択 |
|
スケジュール |
Conductorの実行予定日時を指定します。 |
- |
手動入力 |
現在時刻より過去の日時は入力不可 |
作業実行 |
登録したConductorを実行します。 |
○ |
ボタン |
![作業実行](../../../../_images/excute_conductor.gif)
図 4.69 作業実行¶
Tip
4.5.4. Conductor作業一覧¶
- [Conductor作業一覧]画面では、実行済みのConductorの作業を管理します。条件を指定し フィルタ ボタンをクリックすると、作業一覧テーブルを表示します。作業表示欄の 詳細 ボタンをクリックすると、 Conductor作業確認 画面へ遷移します。投入データ一式(zip) をクリックすると、実行された全てのConductor配下のMovement(*)の実行ファイルなどをまとめてダウンロードすることが出来ます。結果データ一式(zip) をクリックすると、実行された全てのConductor配下のMovement(*)の実行ログ、エラーログなどをまとめてダウンロードすることが出来ます。※Conductorが階層構造になっている場合は、末端のMovementも対象になります。
4.5.5. Conductor作業確認¶
- 実行中以降のステータスになっている実行状況サークルをクリックすると、各ドライバの「作業状態確認」メニューに遷移し作業実行状況の詳細を確認することが可能です。
- 「 Conductor作業一覧 」の 詳細 をクリックすると、選択したConductor作業の処理状況をモニター表示します。状況に応じて「予約取消」、「停止解除」や「緊急停止」の投入が可能です。※「Movement」、「Conductor Call」のNodeについては、Node選択後に、画面右側に表示される 作業情報確認 からも「作業状態確認」メニューに遷移出来ます。
![Conductor作業実行](../../../../_images/job_detail.gif)
図 4.70 Conductor作業実行¶
Tip
- 選択したConductor作業に予約日時が設定されていて、かつ未実行の場合は、 予約取消 が表示されます。
- 予約取消 をクリックすると、「 Conductor作業一覧 」で確認できるステータスが「予約取消」となり、実行されなくなります。
- の共通項目は以下の通りです。
項目 |
説明 |
入力必須 |
入力形式 |
制約事項 |
---|---|---|---|---|
停止解除 |
「Couductor pause」Nodeの三角アイコンをクリックすることで解除します。 |
- |
ボタン |
|
緊急停止 |
Conductorの実行を中止します。 |
- |
ボタン |
|
予約取消 |
Conductorの実行予約を取り消します。 |
- |
ボタン |
予約日時が設定されていて、かつ未実行の場合に表示される。 |
![Conductor実行中/Conductor Pause状態画面](../../../../_images/conductor_pause_state.png)
図 4.71 Conductor実行中/Conductor Pause状態画面¶
![日時予約されたConductor実行画面(未実行)](../../../../_images/reserved_conductor.png)
図 4.72 日時予約されたConductor実行画面(未実行)¶
画面右側上部の領域には、Conductorの詳細情報が表示されます。
Nodeを選択すると、選択しているNodeの詳細情報が表示されます。
「Conductor」タブ
Node未選択の場合表示されます。
タブ内の項目は以下の通りです。
表 4.102 「Conductor」タブ¶ 項目
説明
Conductorインスタンス情報
ID
Conductorインスタンスに対応した一意のIDが自動採番されます。
名称
実行中の Conductor 名称を表示します。
ステータス
実行中のConductorのステータスを表示します。ステータスには以下の状態が存在します。
・未実行
・未実行(予約)
・実行中
・実行中(遅延)
・一時停止
・正常終了
・異常終了
・警告終了
・緊急停止
・予約取消
・想定外エラー
開始時間
実行開始日時を表示します。
終了時間
実行終了日時を表示します。
実行ユーザ
Conductorを実行したユーザを表示します。
予約日時
予約中のConductorの実行日時を表示します。
緊急停止
実行中の Conductor が緊急停止された場合「True」、それ以外の場合は「False」を表示します。
オペレーション
オペレーション名を表示します。
備考
Conductorに対する説明やコメントを表示します。
「Node」タブ
Nodeを選択した場合表示されます。
タブ内の項目は以下の通りです。
表 4.103 「Node」タブ¶ 項目
説明
Nodeインスタンス情報
ID
Nodeインスタンスに対応した一意のIDが自動採番されます。
種別
Node の種類を表示します。
Node ID
Conductorの構成情報(JSON形式)上のNodeのIDを表示します。
ステータス
実行中のConductorのステータスを表示します。ステータスには以下の状態が存在します。
・未実行
・準備中
・実行中
・実行中(遅延)
・正常終了
・異常終了
・想定外エラー
・緊急停止
・一時停止
・準備エラー
・Skip終了
・警告終了
Stファイル
Conductorを実行したユーザを表示します。
開始日時
実行開始日時を表示します。
終了日時
実行終了日時を表示します。
個別オペレーション
Movement毎にオペレーションを指定した場合は、そのオペレーション名を表示します。
備考
Nodeに対する説明やコメントを表示します。