2. Ansible-Legacy¶
2.1. はじめに¶
2.2. Ansible-Legacy概要¶
2.3. Ansible-Legacy メニュー構成¶
2.3.1. メニュー/画面一覧¶
- 基本コンソールのメニュー
No |
メニュー画面 |
説明 |
---|---|---|
1 |
オペレーション一覧 |
オペレーション一覧をメンテナンス(閲覧/登録/更新/廃止)できます。 |
- Ansible共通のメニュー
No |
メニュー・画面 |
説明 |
---|---|---|
1 |
機器一覧 |
作業対象の機器情報を管理します。 |
2 |
インターフェース情報 |
Ansible Core、Ansible Automation Controllerサーバのどちらを実行エンジンとし構築作業をするか選択をします。
実行エンジンのサーバへの接続インターフェース情報を管理します。
|
3 |
Ansible Automation Controllerホスト一覧 |
Ansible Automation ControllerのRestAPI実行に必要な情報、および構築資材をAnsible Automation Controllerにファイル転送するために必要な情報を管理します。 |
4 |
グローバル変数管理 |
各モードのPlaybookや対話ファイルで共通利用する変数と具体値を管理します。 |
5 |
ファイル管理 |
各モードのPlaybookや対話ファイルで共通利用する素材ファイルと埋込変数を管理します。 |
6 |
テンプレート管理 |
各モードのPlaybookや対話ファイルで共通利用するテンプレートファイルと埋込変数を管理します。 |
7 |
管理対象外変数リスト |
「 変数抜出対象資材 」で抜出した変数で、 の に表示したくない変数を管理します。 |
8 |
共通変数利用リスト (※1) |
・ ・ に登録されている変数が、どの素材( ・ ・ )で使用しているかを閲覧できます。 |
Tip
- Ansible-Legacyのメニュー
No |
メニュー・画面 |
説明 |
---|---|---|
1 |
Movement一覧 |
Movementの一覧を管理します。 |
2 |
Playbook素材集 |
Playbookファイルを管理します。 |
3 |
Movement-Playbook紐付 |
MovementでインクルードするPlaybookを管理します。 |
4 |
代入値自動登録設定 |
パラメータシートに登録されているオぺレーションとホスト毎の項目値を紐付けるMovementと変数を管理します。 |
5 |
作業実行 |
作業実行するMovementとオペレーションを選択し実行を指示します。 |
6 |
作業管理 |
作業実行履歴を管理します。 |
7 |
作業状態確認 |
作業実行状態を表示します。 |
8 |
作業対象ホスト |
作業実行毎の作業対象ホストを表示します。 |
9 |
代入値管理 |
作業実行毎の変数の具体値を表示します。 |
10 |
Movement-変数紐付 (※1) |
Movementで使用している変数を管理します。 |
Tip
2.4. Ansible-Legacy利用手順¶
2.4.1. Ansible-Legacy作業フロー¶
作業フロー詳細と参照先
- Ansible Automation Controllerホスト情報を登録(必要に応じて実施)から、Ansible Automation Controllerのホスト情報を登録します。詳細は「 Ansible Automation Controller ホスト一覧 」を参照してください。
- インターフェース情報の登録から、Ansible Core、Ansible Automation Controllerのどちらを実行エンジンにするかを選択し、実行エンジンのサーバへの接続情報を登録します。詳細は「 インターフェース情報 」を参照してください。
2.5. Ansible-Legacy メニュー操作方法説明¶
2.5.1. 基本コンソール¶
2.5.2. Ansible共通¶
2.5.3. Ansible-Legacy¶
Movement一覧¶
- Movement情報のメンテナンス(閲覧/登録/更新/廃止)を行います。
- 登録 ボタンより、Movement情報の登録を行います。
- 登録画面の項目一覧は以下のとおりです。
¶ 項目
説明
入力必須
入力方法
制約事項
MovementID
登録時に自動採番した36桁の文字列が表示されます。
ー
自動入力
ー
Movement名
Movementの名称を入力します。
○
手動入力
最大長255バイト
遅延タイマー
Movementの実行が指定期間遅延した場合に
の を「実行中(遅延)」として警告表示したい場合に指定期間(1~)を入力します。(単位:分)未入力の場合は警告表示しません。
ー
手動入力
0~2,147,483,647
Ansible利用情報
ホスト指定形式
IPアドレスで表現しないホストを指定したい場合に「ホスト名」を選択します。
○
リスト選択
説明欄記載のとおり。
WinRM接続
作業対象がWindowsServerの場合に「True」を選択します。
ー
リスト選択
説明欄記載のとおり。
ヘッダーセクション ※1
ITAが自動生成する親Playbookの先頭からtasksセクションまでのセクションを編集します。
未入力の場合は以下を適用します。
- hosts: all remote_user: "{{ __loginuser__ }}" gather_facts: no become: yes # winrm接続の場合は become: yesは適用しません。
各パラメータ値を変数で記述することも出来ます。
become_user: '{{△vvv△}}' △:半角スペース ':シングル・ダブルコーテーションで必ず囲んで下さい。
パラメータ値を変数で記述する場合の詳細は、「 インベントリファイル追加オプションとヘッダセクションのパラメータ値で変数抜出の対象となる変数の種類と書式 」を参照してください 。
変数の具体値は
から登録します。ー
手動入力
最大長4000バイト
オプションパラメータ
Movement固有のオプションパラメータを入力します。
オプションパラメータについての詳細は「 オプションパラメータ一覧 」を参照してください。
- の が「Ansible Core」の場合ansible-playbookコマンドのオプションパラメータを入力します。
- の が「Ansible Automation Controller」の場合ジョブテンプレートのパラメータを入力します。ジョブテンプレートについての詳細は、Ansible Automation Controller公式マニュアルのユーザガイドを参照してください。
Movement共通のオプションパラメータは
の から入力します。ー
手動入力
最大長4000バイト
ansible.cfg
作業実行時に使用するansible.cfgをアップロードします。
未アップロードの場合は、デフォルトが使用されます。
ー
ファイル選択
最大サイズ100Mバイト
Ansible Automation Controller利用情報
実行環境 ※2
Ansible Automation Controllerに構築されている実行環境が表示されます。
使用する実行環境を選択します。
未選択の場合は、Ansible Automation Controllerに設定されているデフォルトの実行環境が使用されます。
ー
リスト選択
説明欄記載のとおり。
備考
自由記述欄です。
ー
手動入力
最大長4000バイト
Tip
※1 ヘッダーセクションで「become: yes」を設定した場合作業対象に以下の設定が必要です。ログインユーザの sudo権限を NOPASSWD付で/etc/sudoers
に設定します。Demo_user ALL=(ALL) NOPASSWD:ALLTip
※2 「 Ansible Automation Controllerデータ同期 」により取得したデータから選択します。警告
で「True」を選択した場合は接続するホストをすべてWindowsServerとみなします。
Playbook素材集¶
- ユーザが作成したPlaybookのメンテナンス(閲覧/登録/更新/廃止)を行います。Playbookの記述など関しては、「 Playbook(Ansible-Legacy)の記述 」を参照してください。利便性の向上を目的としたサンプルPlaybookが初期状態でPlaybook素材集に登録されています。サンプルPlaybookのPlaybook素材名は、先頭に「~[Exastro standard]」が付与されています。サンプルPlaybookをMovementと紐付けることにより、利用することが出来ます。
- 登録 ボタンより、Playbookの登録を行います。
- 登録画面の項目一覧は以下のとおりです。
¶ 項目
説明
入力必須
入力方法
制約事項
項番
登録時に自動採番した36桁の文字列が表示されます。
-
自動入力
-
プレイブック素材名
ITAで管理するプレイブック素材名を入力します。
○
手動入力
最大長255バイト
プレイブック素材
作成したPlaybookファイルをアップロードします。 アップロードするPlaybookファイルは、文字コードがUTF-8のBOMなしで作成してください。
○
ファイル選択
最大サイズ100Mバイト
ターゲット
Linux
Linuxで使用可能なPlaybookの場合、「*」を選択します。
未選択でも、作業実行に影響はありません。
-
リスト選択
説明欄記載のとおり。
Windows
Windowsで使用可能なPlaybookの場合、「*」を選択します。
未選択でも、作業実行に影響はありません。
-
リスト選択
説明欄記載のとおり。
その他
Linux、Windows以外の用途で使用可能なPlaybookの場合、Playbookの用途を入力します。
-
手動入力
最大長4000バイト
Python要否
ターゲットの機器にPythonが必要の場合、「*」を選択します。
未選択でも、作業実行に影響はありません。
-
リスト選択
説明欄記載のとおり。
説明
Playbookについての説明を入力します。
ー
手動入力
最大長4000バイト
説明(en)
Playbookについての説明を英語で入力します。
ー
手動入力
最大長4000バイト
備考
自由記述欄です。
ー
手動入力
最大長4000バイト
Movement-Playbook紐付¶
- MovementでインクルードするPlaybookのメンテナンス(閲覧/登録/更新/廃止)を行います。
- 登録 ボタンより、MovementでインクルードするPlaybookの登録を行います。
- 登録画面の項目一覧は以下のとおりです。
¶ 項目
説明
入力必須
入力方法
制約事項
項番
登録時に自動採番した36桁の文字列が表示されます。ー
自動入力
ー
Movement
で 登録した が表示されます。Movementを選択します。〇
リスト選択
説明欄記載のとおり。
Playbook素材
で登録した が表示されます。MovementでインクルードするPlaybook素材を選択します。〇
リスト選択
説明欄記載のとおり。
インクルード順序
プレイブック素材の実行順序(1~)を入力します。入力されたインクルード順序(昇順)でプレイブック素材が実行されます。〇
手動入力
1~2,147,483,647
備考
自由記述欄です。
ー
手動入力
最大長4000バイト
代入値自動登録設定¶
- パラメータシートの項目の設定値とMovementの変数との紐付管理(閲覧/登録/更新/廃止)を行います。登録した情報は作業実行によりと に反映されます。
- 登録 ボタンより、パラメータシートの項目の設定値とMovementの変数との紐付登録を行います。
- 登録画面の項目一覧は以下のとおりです。
¶ 項目
説明
入力必須
入力方法
制約事項
項番
登録時に自動採番した36桁の文字列が表示されます。
ー
自動入力
ー
パラメータシート(From)
メニューグループ:メニュー:項目
パラメータシートの項目が表示されます。
対象の項目を選択します。
選択対象となるパラメータシートは
で、パラメータシート(ホスト/オペレーションあり)を選択して作成したパラメータシートの項目になります。○
リスト選択
説明欄記載のとおり。
代入順序
パラメータシートがバンドルの場合、パラメータシートで登録している
を入力します。手動入力
1~2,147,483,647
登録方式
で選択した変数の具体値に設定する内容を選択します。
- Value型項目の設定値がで選択した変数の具体値になります。
- Key型項目の名称がで選択した変数の具体値になります。
○
リスト選択
説明欄記載のとおり。
Movement名
で登録した が表示されます。
Movementを選択します。
○
リスト選択
説明欄記載のとおり。
IaC変数(To)
Movement名:変数名
で登録した資材で使用している変数が表示されます。
で選択した項目の具体値を紐付けたい変数を選択します。
○
リスト選択
説明欄記載のとおり。
代入順序
複数具体値変数にする場合に入力してください。
具体値の代入順序(1~)を入力します。入力値に従い昇順で代入されます。具体値が複数ない場合でも代入順序(1~)を入力します。
手動入力
1~2,147,483,647
NULL連携
パラメータシートの具体値がNULL(空白)の場合に
にNULL(空白)の値を登録するかを選択します。- Trueパラメータシートの値がどのような値でもに登録が行われます。
- Falseパラメータシートに値が入力されていればに登録が行われます。
未選択の場合、
の の値が適用されます。ー
リスト選択
説明欄記載のとおり。
備考
自由記述欄です。
ー
手動入力
最大長4000バイト
Tip
Tip
- でパラメータシートに登録されている項目の設定値とPlaybook内の変数を紐付けします。
¶ ホスト名
オペレーション名
パラメータ
項目1
項目2
項目3
項目4
test-host
test-ope
value1
value2
value3
value4
¶ メニュー名
項目
変数名
代入順序
sample-menu
項目1
VAR_substitutionA
30
sample-menu
項目2
VAR_substitutionA
10
sample-menu
項目3
VAR_substitutionA
20
sample-menu
項目1
VAR_substitutionB
2
sample-menu
項目2
VAR_substitutionB
4
sample-menu
項目3
VAR_substitutionB
1
sample-menu
項目4
VAR_substitutionB
3
- 作業実行時、ホスト変数ファイル(host_vars/test-host)には、代入値自動登録設定で登録した変数が下記のように出力されます。ホスト変数ファイルへの出力内容
VAR_substitutionA: - value2 - value3 - value1 VAR_substitutionB: - value3 - value1 - value4 - value2
Tip
Tip
- / で下記のように登録します。
¶ ファイル埋込変数名
ファイル素材
CPF_test
test_file.txt
¶ テンプレート埋込変数名
テンプレート素材
TPF_sample
sample.tpl
- で「Ansible共通:ファイル管理:ファイル埋込変数名」「Ansible共通:テンプレート管理:テンプレート埋込変数名」をパラメータシートの項目としてパラメータシート作成後、パラメータシートで項目の設定値としてファイル埋込変数とテンプレート埋込変数を登録します。
¶ ホスト名
オペレーション名
パラメータ
ファイル管理
テンプレート管理
test-host
test-ope
CPF_test
TPF_sample
- で2. のパラメータシートに登録した項目の設定値とPlaybookの変数を紐付して で作業実行します。
¶ メニュー名
項目
変数名
サンプルパラメータシート
ファイル管理
VAR_filetest
サンプルパラメータシート
テンプレート管理
VAR_temptest
- 代入値確認 ボタンで具体値に '{{ CPF_test }}' '{{ TPF_sample }}' が反映されていることが確認できます。の
作業実行¶
- 作業実行作業実行 ボタンをクリックすると、作業対象に対して構築作業を実行します。
- ドライランドライラン ボタンをクリックすると、実際に作業対象に対して構築作業をせず、ドライランを行うことができます。ドライランを行った場合の動作は、Ansible-Playbookコマンドの--checkパラメータを指定した実行となります。
- パラメータ確認パラメータ確認 ボタンをクリックすると、実際に作業対象に対して構築作業をせず、 に登録してある情報から作業対象のオペレーションとMovementに紐付く情報を と に反映し、確認することが出来ます。
Tip
作業状態確認¶
- 実行状態表示実行状況に応じた「ステータス」が表示されます。また、実行ログ、エラーログに実行状況の詳細が表示されます。「実行種別」には、作業実行の場合は「通常」、ドライランの場合は「ドライラン」、パラメータ確認の場合は「パラメータ確認」が表示されます。ステータスが想定外エラーで終了した場合、エラーログにメッセージが表示されます。「呼出元Conductor」には、Conductorから実行した場合に、どのConductorから実行されたかを表示します。Ansible-Legacyから直接実行した場合は空欄になります。
- 作業対象ホスト確認作業対象ホスト確認 ボタンで が表示され、作業対象のオペレーションとMovementに絞り込んだホストが表示されます。
- 代入値確認代入値確認 ボタンで が表示され、作業対象のオペレーションとMovementに絞り込んだ変数と具体値が表示されます。
- 緊急停止/予約取り消し緊急停止 ボタンで構築作業を停止させることができます。また、実行前の「予約実行」の作業の場合は、 予約取消 ボタンが表示されます。 予約取消 ボタンで予約実行が取り消せます。
- 実行ログ表示Ansible Automation Controllerで実行した場合、作業対象のの ・ ・ ・ ・ ・ の項目値でグループ化された作業対象の単位でPlaybookが実行され、ansibleの実行ログが分割されます。さらに、か の でジョブスライス数を指定することによりグループ化された作業対象をさらにジョブスライス数で分割しplaybookが実行され、ansibleの実行ログも分割されます。実行ログが分割された場合、実行ログがTabで分割表示され、表示したい実行ログを選択する事ができます。実行ログのTabに表示される名称は以下の2種類があります。exec.log: 全ての実行ログをまとめたログファイルです。exec.log以外: 分割された実行ログファイルです。ファイル命名規則は以下になります。exec_<グループ番号>_<通番>
¶ 要素
内容
グループ番号
作業対象の
の ・ ・ ・ ・ ・ の項目値でグルーブ化した 1 からの通番です。通番
ジョブスライス数の設定によりグループ内を分割した 1 からの通番です。0 の場合はジョブスライス数で分割されなかったことを表します。 - ログ検索実行ログ、エラーログは、各ログのログ検索テキストボックスに検索したい文字列を入力することで、入力した文字列の箇所がハイライトで表示されます。また、「ログ検索」のチェックボックスをチェックすると、該当する行だけが表示されます。実行ログ、エラーログのリフレッシュ表示間隔と最大表示行数を、の と で設定できます。
作業管理¶
- 閲覧画面の項目一覧は以下のとおりです。
¶ 項目
説明
作業No.
自動採番した36桁の文字列が表示されます。
実行種別
実行種別を表示します。
ステータス
作業実行のステータスを表示します。
実行エンジン
作業実行した実行エンジンを表示します。
呼出元Conductor
Conductorから実行した場合にConductor名が表示されます。
実行ユーザ
作業実行したユーザ名が表示されます。
登録日時
作業実行でボタンをクリックした日時が表示されます。
Movement
ID
作業実行で選択したMovementのIDが表示されます。
名称
作業実行で選択したMovementの名称が表示されます。
遅延タイマー
作業実行で選択したMovementの遅延タイマーが表示されます。
Ansible利用情報
ホスト指定形式
作業実行で選択したMovementのホスト指定形式が表示されます。
WinRM接続
作業実行で選択したMovementのWinRM接続が表示されます。
ヘッダーセクション
作業実行で選択したMovementのヘッダーセクションが表示されます。
ansible.cfg
作業実行で選択したMovementのansible.cfgがアップロード出来ます。
Ansible Automation Controller 利用情報
実行環境
作業実行で選択したMovementの実行環境が表示されます。
オペレーション
No.
作業実行で選択したオペレーションのIDが表示されます。
名称
作業実行で選択したオペレーションの名称が表示されます。
投入データ
投入データ一式をzip形式でアップロード出来ます。
結果データ
結果データ一式をzip形式でアップロード出来ます。
作業状況
予約日時
作業実行で予約日時を設定した場合に予約日時が表示されます。
開始日時
作業実行を開始した日時が表示されます。
終了日時
作業実行が終了した日時が表示されます。
収集状況
ステータス
収集機能のステータスを表示します。
収集ログ
収集機能のログがダウンロード出来ます。
Conductorインスタンス番号
Conductorから実行された場合にConductorインスタンス番号を表示します。
作業対象ホスト¶
- 作業実行毎の作業対象ホストを閲覧できます。
- 閲覧画面の項目一覧は以下のとおりです。
¶ 項目
説明
項番
作業実行時に自動採番した36桁の文字列が表示されます。
作業No
作業実行時の作業Noが表示されます。
オペレーション
作業実行時のオペレーションが表示されます。
Movement名
作業実行時のMovementが表示されます。
ホスト名
作業実行時の対象ホストが表示されます。
備考
自由記述欄です。
代入値管理¶
- 作業実行毎の変数の具体値を閲覧できます。
- 閲覧画面の項目一覧は以下のとおりです。
¶ 項目
説明
項番
作業実行時に自動採番した36桁の文字列が表示されます。
作業No
作業実行時の作業Noが表示されます。
オペレーション
作業実行時のオペレーションが表示されます。
Movement名
作業実行時のMovementが表示されます。
ホスト名
作業実行時の作業対象ホストが表示されます。
Movement名:変数名
作業実行時の変数が表示されます。
具体値
文字列
Sensitive設定
「True」または「False」が表示されます。
値
作業実行時の変数の具体値が表示されます。
- が「True」の場合パラメータシートで入力した具体値は暗号化されITA上では表示されません。変数の具体値は、ansible-vaultで暗号化した内容が設定されます。
- が「False」の場合パラメータシートで入力した具体値が表示されます。
ファイル
作業実行の変数に紐づくファイル名が表示されます。
代入順序
複数具体値変数の場合に、代入順序が表示されます。
備考
自由記述欄です。
2.6. Playbook(Ansible-Legacy)の記述¶
2.6.1. ヘッダーセクション¶
- hosts: all
remote_user: "{{ __loginuser__ }}"
gather_facts: no
become: yes
# winrm接続の場合は「become: yes」は省略されます。
2.6.2. tasksセクション¶
- name: コメント
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "{{ item.owner is none |ternary('root', item.owner) }}"
group: "{{ item.group is none |ternary('bacula', item.group) }}"
mode: "{{ item.mode is none |ternary('0654', item.mode) }}"
2.7. 付録¶
2.7.1. Ansible実行時に使用される投入データとITAメニューの紐づけ¶
Ansible-Legacy投入データ¶
メニューグループ |
メニュー |
項目 |
ディレクトリ解凍時のパス |
---|---|---|---|
Ansible-Legacy |
Playbook素材集 |
Playbook |
/child_playbooks |
Ansible 共通 |
テンプレート管理 |
テンプレート素材 |
/template_files |
Ansible 共通 |
ファイル管理 |
ファイル素材 |
/copy_files |
Ansible-Legacy |
代入値管理 |
具体値(ファイル) |
/upload_files |
Ansible 共通 |
グローバル変数管理 |
変数名/具体値 |
/host_vars |
Ansible-Legacy |
代入値管理 |
変数名/具体値 |
/host_vars |
Ansible-Legacy |
template 管理 |
テンプレート埋込変数 |
/host_vars |
Ansible-Legacy |
ファイル管理 |
ファイル埋込変数 |
/host_vars |
Ansible共通 |
機器一覧 |
ログインユーザ ID
ログインパスワード ※ansible-vault で暗号化
ホスト名
DNSホスト名
IPアドレス
|
/host_vars |
Ansible共通 |
機器一覧 |
ssh 認証鍵ファイル |
/ssh_key_files |
Ansible共通 |
機器一覧 |
サーバ証明書 |
/winrm_ca_files |
Ansible共通 |
インターフェース情報 |
オプションパラメータ |
/AnsibleExecOption.txt |
Ansible-Legacy |
Movement 一覧 |
オプションパラメータ |
/AnsibleExecOption.txt |
Ansible共通 |
機器一覧 |
ログインユーザ ID
ログインパスワード ※ansible-vault で暗号化
ホスト名
DNSホスト名
IP アドレス
インベントリファイル追加オプション
WinRM 接続情報
接続オプション
|
/hosts |
Ansible-Legacy |
Movement-Playbook紐付 |
Playbook名・インクルード順序 |
/playbook.yml |