1. Ansible共通

1.1. はじめに

本書では、Ansible driverの共通機能および操作方法について説明します。

1.2. Ansible driver概要

本章では、Ansible Core、Ansible Automation Controller、Ansible Execution AgentおよびAnsible driverについて説明します。

1.2.1. Ansible Coreについて

Ansible Coreとは、多数の構築管理対象に対して、アプリーケーション/システムのデプロイ作業を容易にするPF構築自動化ツールです。
Ansible Coreは、PlaybookというYAML形式のテキストファイルに定型処理をタスクとして記述し、それをAnsible Coreに実行させることにより、さまざまな処理を実現できます。
タスクはモジュールと呼ばれる処理プログラムと紐付いており、さまざまな機器に対する制御を行うことができます。
Ansible Coreの詳細情報については、Ansible公式マニュアルを参照してください。

1.2.2. Ansible Automation Controllerについて

Ansible Automation Controllerとは、PF構築自動化ツールであるAnsibleにアクセスコントロール、ジョブスケジューリング、タスクの可視化などの機能を拡張した管理プラットフォームです。
“プロジェクト”、”インベントリ”、”認証情報”の組合せで”ジョブテンプレート”を作成しAnsibleを実行できます。
複数の“ジョブテンプレート”を組み合せて”ワークフロージョブテンプレート”を作成することによって、より多彩な作業フローを表現することができます。
Ansible Automation Controllerの詳細情報については、Ansible Automation Controller公式マニュアルを参照してください。
ITAで対応可能なAnsible Automation Controllerのバージョンは、 Ansible Automation Platform を参照してください。
最新のバージョンに対応した記法は使えないことがありますので、ご注意ください。

1.2.3. Ansible Execution Agentについて

Ansible Execution Agentとは、ITAとは独立したAnsible実行専用のサーバーです。
ITAと連携しPlaybookを実行する為に必要な実行環境(コンテナ)をAnsible-builderで構築し、Ansible-runnerより実行環境(コンテナ)を介しPlaybookを実行するものです。
Ansible Execution Agentはワークスペース単位に用意します。
同じワークスペースに複数のAnsible Execution Agentを用意することで、冗長化構成を組むことが出来ます。
Ansible Execution Agentの構成図

1.2.4. Ansible driverについて

Ansible driverは、ITAの機能で、ITAで登録した作業対象のサーバ・ストレージ・ネットワーク各機器に対し、Ansible Core、Ansible Automation Controller、Ansible Execution Agentのどれを経由するかを選択し、Playbookの処理を自動的に行います。
Exastro概要
Ansible driverには用途に応じて以下の3つのモードを用意しています。
  1. Legacy モード
    Ansible標準の機能を用いて各種ホストへ設定を投入します。
    構築コードを単体YAMLファイルとして登録し、作業パターンをその組み合わせで構成します。
    サーバ・ストレージ・ネットワーク各機器の環境設定などの作業用に使われることを想定します。
  2. Legacy Role モード
    Legacyモードと同じく、Ansible標準の機能を用いて各種ホストへ設定を投入します。
    構築コードをパッケージとして登録し、作業パターンをRoleの組み合わせで構成します。
    製品部門などが提供するRoleパッケージを用いて、製品のインストール、環境構築などを行う際に使われることを想定します。
  3. Pioneer モード
    Ansibleに独自モジュールを追加し、対話形式による設定投入を可能とします。
    Telnet, SSHでログイン可能なサーバ・ストレージ・ネットワーク各機器に対応しています。作業対象と直接やり取りが必要となるため、相応のITスキルが必要となります。

1.3. Ansible driverでの変数取り扱い

Ansible driverでは、Playbook中の変数の具体値をITAから設定することができます。

1.3.1. 変数の種類

Playbook中の変数で、ITAの変数として扱える変数は以下の7種類があります。

通常変数

変数名に対して具体値を1つ定義できる変数です。

e.g.) Playbook内での記述例
# Ansible-LegacyRoleでの変数定義例
user: user1

# Playbook内での記述例
- name: Create user
  user:
    name: "{{ user }}"

複数具体値変数

変数名に対して具体値を複数定義できる変数です。

e.g.) Playbook内での記述例
# Ansible-LegacyRoleでの変数定義例
users:
  - user1
  - user2

# Playbook内での記述例
- name: Create user
  user:
    name: "{{ item }}"
  with_items: "{{ users }}"

多段変数

階層化された変数です。
多段変数はAnsible-LegacyRoleでしか扱えません。

e.g.) Playbook内での記述例
# Ansible-LegacyRoleでの変数定義例
users:
  - name: user3
    groups: root
  - name: user4
    groups: root

# Playbook内での記述例
- name: Create user
  user:
    name: "{{ item.name }}"
  with_items: "{{ users }}"

グローバル変数

Ansible共通 ▶ グローバル変数管理 から登録する変数です。
e.g.) Playbook内での記述例
- command: echo {{ GBL_user }}

テンプレート埋込変数

Ansible共通 ▶ テンプレート管理 から登録する変数です。
e.g.) Playbook内での記述例
- template: src={{ TPF_SAMPLE }} dest=/tmp/SAMPLE.txt

ファイル埋込変数

Ansible共通 ▶ ファイル管理 から登録する変数です。
e.g.) Playbook内での記述例
- copy: src={{ CPF_SAMPLE }} dest=/tmp/SAMPLE.txt

ITA独自変数

ITA 独自で定義している変数です。
機器一覧
基本コンソール ▶ 機器一覧 の下記項目を変数として扱えます。

項目名

変数名

ホスト名

__inventory_hostname__

DNSホスト名

__dnshostname__

IPアドレス

__ipaddress__

プロトコル

__loginprotocol__

ログインユーザID

__loginuser__

ログインパスワード

__loginpassword__

Tip

変数名の前後の「__」は半角アンダーバー2文字です。
Ansible共通 ▶ 機器一覧 の項目が設定されている場合に使用可能な変数です。項目が未設定で 各モード ▶ 作業実行 から作業実行した場合はエラーになります。
Movement ID
作業実行時に選択された 各モード ▶ Movement一覧 の Movement ID を変数として扱えます。

項目名

変数名

Movemebt ID

__movement_id__

オペレーション
作業実行時に選択された 基本コンソール ▶ オペレーション一覧 の オペレーションID を変数として扱えます。

項目名

変数名

オペレーション

__operation__

設定値 : 「YYYY/MM/DD HH:MM」_「オペレーションID」:「オペレーション名称」
YYYY/MM/DD HH:MM: 基本コンソール ▶ オペレーション一覧 の 実施予定日時
オペレーションID: 基本コンソール ▶ オペレーション一覧 の オペレーションID
オペレーション名称: 基本コンソール ▶ オペレーション一覧 の オペレーション名称

作業インスタンスID
作業実行時に生成される 各モード ▶ 作業状態確認 の 作業No. を変数として扱えます。

項目名

変数名

作業インスタンスID

__execution_no__

ConductorインスタンスID
Conductor実行時に生成される Conductor ▶ Conductor作業確認 の ConductorインスタンスID を変数として扱えます。
Conductorについての詳細は「 Conductor 」を参照してください。

項目名

変数名

ConductorインスタンスID

__conductor_id__

__conductor_id__はConductor実行の場合に使用可能な変数です。
各モード ▶ 作業実行 から作業実行した場合はエラーになります。

データ連携
作業実行時の作業ディレクトリパスを下記の変数として扱えます。

項目名

変数名

作業ディレクトリパス

__workflowdir__

Playbook内で作業ディレクトリパス配下にファイルを作成することで、 各モード ▶ 作業管理 の 結果データ からファイルをダウンロードすることができます。

Conductor実行時の各Movementで共有するディレクトリパスを下記の変数として扱えます。

項目名

変数名

Conductor作業ディレクトリパス

__conductor_workflowdir__

Playbook内でConductor作業ディレクトリパス配下にファイルを作成することで、Conductor内の各Movement間でファイルを共有することが出来ます。
また、 各モード ▶ 作業実行 から作業実行した場合は、__workflowdir__と同じパスが設定されます。

Conductor ▶ Conductor編集/作業実行 の Status file branchノード で参照するステータスファイルのファイルパスを下記の変数として扱えます。
Status file branchノード についての詳細は「 Conductor 」を参照してください。

項目名

変数名

ステータスファイルパス

__movement_status_filepath__


収集機能で使用する各ファイルパスを下記の変数として扱えます。
収集機能についての詳細は「 収集機能 」を参照してください。

項目名

変数名

作業ディレクトリ(in)の「_parameters」のパス

__parameters_dir_for_epc__

作業ディレクトリ(in)の「_parameters_file」のパス

__parameters_file_dir_for_epc__

作業結果ディレクトリ(out)の「_parameters」のパス

__parameter_dir__

作業結果ディレクトリ(out)の「_parameters_file」のパス

__parameters_file_dir__

「_parameters」:ソースファイル(パラメータ)格納先用
「_parameters_file」:収集したファイルの格納先用
※パラメータの対象がファイルアップロードカラムの場合のファイル配置

1.3.2. 変数の抜出および具体値登録

変数抜出対象資材

変数抜出対象の資材を登録した場合、登録された情報から変数を抜出します。
表 1.118 変数抜出対象のメニュー・項目

メニュー

項目

モード

変数抜出の書式

Ansible-Legacy

Ansible-Pioneer

Ansible-LegacyRole

Playbook素材集

Playbook素材

〇

×

×

詳細は「 Playbook素材で変数抜出の対象となる変数の種類と書式 」を参照してください。

対話ファイル素材集

対話ファイル素材

×

〇

×

詳細は「 対話ファイル素材で変数抜出の対象となる変数の種類と書式 」を参照してください 。

ロールパッケージ管理

ロールパッケージファイル(ZIP形式)

×

×

〇

詳細は「 ロールパッケージファイル(ZIP形式)で変数抜出の対象となる変数の種類と書式 」を参照してください 。

テンプレート管理

変数定義

〇

〇

〇

詳細は「 テンプレート管理 」を参照してください 。

機器一覧

インベントリファイル追加オプション

〇

×

〇

詳細は「 インベントリファイル追加オプションとヘッダセクションのパラメータ値で変数抜出の対象となる変数の種類と書式 」を参照してください 。

Movement一覧

ヘッダセクション

〇

×

〇

詳細は「 インベントリファイル追加オプションとヘッダセクションのパラメータ値で変数抜出の対象となる変数の種類と書式 」を参照してください 。

パラメータシート

プルダウン選択でテンプレート管理を選択している項目

〇

〇

〇

詳細は「 テンプレート管理 」を参照してください 。

Tip

〇:抜出対象 ×:抜出対象外
Playbook素材で変数抜出の対象となる変数の種類と書式
Ansible-Legacy ▶ Playbook素材集 の Playbook素材 で変数抜出の対象となる変数の種類と書式は、以下の図のとおりです。
表 1.119 Playbook素材で変数抜出の対象となる変数の種類と書式

変数

書式

具体値の設定

通常変数

複数具体値変数

{{△vvv△}}

{{△vvv△|△フィルタ△}}

具体値の登録は Ansible-Legacy ▶ 代入値自動登録設定 より行います。 Ansible-Legacy ▶ 代入値自動登録設定 の 代入順序 が入力されている場合、複数具体値変数として扱います。

グローバル変数

{{△GBL_xxx△}}

{{△GBL_xxx△|△フィルタ△}}

具体値の登録は Ansible共通 ▶ グローバル変数管理 より行います。

テンプレート埋込変数

{{△TPF_xxx△}}

{{△TPF_xxx△|△フィルタ△}}

具体値の登録は Ansible共通 ▶ テンプレート管理 より行います。

ファイル埋込変数

{{△CPF_xxx△}}

{{△CPF_xxx△|△フィルタ△}}

具体値の登録は Ansible共通 ▶ ファイル管理 より行います。

ITA独自変数

詳細は「 ITA独自変数 」を参照してください。

Tip

各変数名についての補足
△:半角スペース
vvv: 255バイト以内の半角英数字とアンダースコア( _ )
xxx: 251バイト以内の半角英数字とアンダースコア( _ )
対話ファイル素材で変数抜出の対象となる変数の種類と書式
Ansible-Pioneer ▶ 対話ファイル素材集 の 対話ファイル素材 で変数抜出の対象となる変数の種類と書式は、以下の図のとおりです。
表 1.120 対話ファイル素材で変数抜出の対象となる変数の種類と書式

変数

書式

具体値の設定

通常変数

複数具体値変数

{{△vvv△}}

具体値の登録は Ansible-Pioneer ▶ 代入値自動登録設定 より行います。 Ansible-Pioneer ▶ 代入値自動登録設定 の 代入順序 が入力されている場合、複数具体値変数として扱います。

グローバル変数

{{△GBL_xxx△}}

具体値の登録は Ansible共通 ▶ グローバル変数管理 より行います。

テンプレート埋込変数

{{△TPF_xxx△}}

具体値の登録は Ansible共通 ▶ テンプレート管理 より行います。

ファイル埋込変数

{{△CPF_xxx△}}

具体値の登録は Ansible共通 ▶ ファイル管理 より行います。

ITA独自変数

詳細は「 ITA独自変数 」を参照してください。

Tip

各変数名についての補足
△:半角スペース
vvv: 255バイト以内の半角英数字とアンダースコア( _ )
xxx: 251バイト以内の半角英数字とアンダースコア( _ )
ロールパッケージファイル(ZIP形式)で変数抜出の対象となる変数の種類と書式
Ansible-LegacyRole ▶ ロールパッケージ管理 の ロールパッケージファイル(ZIP形式) で変数抜出の対象となる変数の種類と書式は、以下の図のとおりです。
表 1.121 ロールパッケージファイル(ZIP形式)で変数抜出の対象となる変数の種類と書式

変数名

書式

ITA readme

ロールパッケージ内のディレクトリ

具体値の設定

defaults

tasks

templates

handlers

meta

その他

通常変数

e.g.)

vvv: value

具体値は省略可能です。

〇

〇

×

×

具体値の登録は Ansible-LegacyRole ▶ 代入値自動登録設定 より行います。

複数具体値変数

e.g.)

vvv:
  - value
vvv: []

具体値は省略可能です。

多段変数

e.g.)

vvv:
  - item1: value1  ←メンバー変数
    item2: value2  ←メンバー変数
vvv:
  - array:
      - item1: value1 ←メンバー変数
        item2: value2 ←メンバー変数

具体値は省略可能です。

グローバル変数

{{△GBL_xxx△}}

{{△GBL_xxx△|△フィルタ△}}

×

×

○

×

具体値の登録は Ansible共通 ▶ グローバル変数管理 より行います。

テンプレート埋込変数

{{△TPF_xxx△}}

{{△TPF_xxx△|△フィルタ△}}

具体値の登録は Ansible共通 ▶ テンプレート管理 より行います。

ファイル埋込変数

{{△CPF_xxx△}}

{{△CPF_xxx△|△フィルタ△}}

具体値の登録は Ansible共通 ▶ ファイル管理 より行います。

ITA独自変数

詳細は「 ITA独自変数 」をを参照してください。

Tip

〇:変数定義抜出対象 ×:変数定義抜出対象外

Tip

各変数名についての補足
△:半角スペース
vvv: 255バイト以内の半角英数字とアンダースコア( _ )
xxx: 251バイト以内の半角英数字とアンダースコア( _ )
メンバー変数は、下記の7文字を除くascii文字(0x20~0x7e)が使用出来ます。
" . [ ] ' \ :
尚、コーテーションで囲ないと変数名の先頭に使用出来ない文字がいくつかあります。
詳細は、Ansible公式マニュアルのYaml syntaxを参照してください。
インベントリファイル追加オプションとヘッダセクションのパラメータ値で変数抜出の対象となる変数の種類と書式
Ansible共通 ▶ 機器一覧 の インベントリファイル追加オプション と 各モード ▶ Movement一覧 の ヘッダセクション のパラメータ値で変数抜出の対象となる変数の種類と書式は、以下の図のとおりです。
表 1.122 パラメータ値で変数抜出の対象となる変数の種類と書式

種類

利用可否

書式

具体値の設定

通常変数

複数具体値変数

多段変数

〇

{{△vvv△}}

{{△vvv△|△フィルタ△}}

・Ansible-Legacyの場合

通常変数と複数具体値変数が扱えます。

Ansible-Legacy ▶ 代入値自動登録設定 の 代入順序 が入力されている場合、複数具体値変数として扱います。

・Ansible-LegacyRoleの場合

通常変数と複数具体値変数と多段変数が扱えます。

Ansible-LegacyRole ▶ ロールパッケージ管理 の ロールパッケージファイル(ZIP形式) で登録したロールパッケージか、 Ansible共通 ▶ テンプレート管理 の 変数定義 で同名の変数が定義されている場合は、定義されている種類の変数として扱います。

変数が定義されていない場合、通常変数として扱います。

具体値の登録は Ansible-LegacyRole ▶ 代入値自動登録設定 より行います。

グローバル変数

×

ファイル埋込変数

×

テンプレート埋込変数

×

ITA独自変数

〇

詳細は「 ITA独自変数 」を参照してください。

Tip

各変数名についての補足
△:半角スペース
vvv: 255バイト以内の半角英数字とアンダースコア( _ )

変数の具体値

Ansible-Legacy
抜出された変数の具体値はパラメータシートの項目に具体値を設定し Ansible-Legacy ▶ 代入値自動登録設定 で各変数に紐付けを行うことで設定され、作業実行時にホスト変数ファイルに出力されます。
作業実行時に Ansible-Legacy ▶ 代入値管理 を介してホスト変数ファイルに変数の具体値が出力されるまでの関係を、以下の図に示します。
パラメータシートについての詳細は、「 パラメータシート作成機能 」を参照してください。
Ansible-Legacy ホスト変数ファイルに変数の具体値が出力されるまでの流れ

図 1.87 Ansible-Legacy ホスト変数ファイルに変数の具体値が出力されるまでの流れ

① 「 変数抜出対象資材 」により、変数抜出対象の資材より変数を抜出し、 Ansible-Legacy ▶ 代入値自動登録設定 で変数が選択可能になります。
② パラメータシートの項目に紐付する変数の具体値を登録します。
③ Ansible-Legacy ▶ 代入値自動登録設定 でパラメータシートの項目と変数の紐付を登録します。
④ 作業実行により Ansible-Legacy ▶ 代入値自動登録設定 で紐付ているパラメータシートの項目と変数の情報を Ansible-Legacy ▶ 代入値管理 に反映し、ホスト変数ファイルに出力します。
Ansible-Pioneer
抜出された変数の具体値はパラメータシートの項目に具体値を設定し Ansible-Pioneer ▶ 代入値自動登録設定 で各変数に紐付けを行うことで設定され、作業実行時にホスト変数ファイルへ出力されます。
作業実行時に Ansible-Pioneer ▶ 代入値管理 を介してホスト変数ファイルに変数の具体値が出力されるまでの関係を、以下の図に示します。
Ansible-Pioneer ホスト変数ファイルに変数の具体値が出力されるまでの流れ

図 1.88 Ansible-Pioneer ホスト変数ファイルに変数の具体値が出力されるまでの流れ

① 「 変数抜出対象資材 」により、変数抜出対象の資材より変数を抜出し、 Ansible-Pioneer ▶ 代入値自動登録設定 で変数が選択可能になります。
② パラメータシートの項目に紐付する変数の具体値を登録します。
③ Ansible-Pioneer ▶ 代入値自動登録設定 でパラメータシートの項目と変数の紐付を登録します。
④ 作業実行により Ansible-Pioneer ▶ 代入値自動登録設定 で紐付ているパラメータシートの項目と変数の情報を Ansible-Pioneer ▶ 代入値管理 に反映し、ホスト変数ファイルに出力します。
Ansible-LegacyRole
抜出された変数の具体値はパラメータシートの項目に具体値を設定し Ansible-LegacyRole ▶ 代入値自動登録設定 で各変数に紐付けを行うことで設定され、作業実行時にホスト変数ファイルへ出力されます。
作業実行時に Ansible-LegacyRole ▶ 代入値管理 を介してホスト変数ファイルに変数の具体値が出力されるまでの関係を、以下の図に示します。
Ansible-LegacyRole ホスト変数ファイルに変数の具体値が出力されるまでの流れ

図 1.89 Ansible-LegacyRole ホスト変数ファイルに変数の具体値が出力されるまでの流れ

① 「 変数抜出対象資材 」により、変数抜出対象の資材より変数を抜出し、 Ansible-LegacyRole ▶ 代入値自動登録設定 で変数が選択可能になります。
② パラメータシートの項目に紐付する変数の具体値を登録します。
③ Ansible-LegacyRole ▶ 代入値自動登録設定 でパラメータシートの項目と変数の紐付を登録します。
④ 作業実行により Ansible-LegacyRole ▶ 代入値自動登録設定 で紐付ているパラメータシートの項目と変数の情報を Ansible-LegacyRole ▶ 代入値管理 に反映し、ホスト変数ファイルに出力します。
Ansible-LegacyRole ▶ 代入値自動登録設定 で登録した変数の具体値は、ホスト変数定義ファイル(host_vars)に出力されます。
この結果、ansibleが扱う変数の具体値の優先順位は以下のようになります。
  1. ホスト変数定義ファイルの値
  2. defaults変数定義ファイルに定義した値

1.4. Ansible共通メニュー構成

本章では、Ansible共通のメニュー構成について説明します。

1.4.1. メニュー/画面一覧

Ansible共通のメニュー一覧を以下に記述します。
表 1.123 Ansible共通 メニュー/画面一覧

No

メニュー・画面

説明

1

機器一覧

作業対象の機器情報を管理します。

2

インターフェース情報

Ansible Core、Ansible Automation Controller、Ansible Execution Agentのいずれの実行エンジンを使用するかを選択し、実行エンジンのサーバへの接続インターフェース情報を管理します。

3

Ansible Automation Controllerホスト一覧

Ansible Automation ControllerのRestAPI実行に必要な情報、および構築資材をAnsible Automation Controllerにファイル転送するために必要な情報を管理します。

4

グローバル変数管理

各モードのPlaybookや対話ファイルで共通利用する変数と具体値を管理します。

5

ファイル管理

各モードのPlaybookや対話ファイルで共通利用する素材ファイルと埋込変数を管理します。

6

テンプレート管理

各モードのPlaybookや対話ファイルで共通利用するテンプレートファイルと埋込変数を管理します。

7

実行環境定義テンプレート管理

Ansible Execution Agent内にansible-builderで実行環境(コンテナ)をbuildする際の実行環境定義ファイル(execution-environment.yml)のテンプレートファイルを管理します。

8

実行環境管理

Ansible Execution Agent内にansible-builderで実行環境(コンテナ)をbuildする際の実行環境定義ファイル(execution-environment.yml)のテンプレートファイルと、テンプレートに埋め込むパラメータが定義されているパラメータシートの紐付を管理します。

9

エージェント管理

ITAと接続したAnsible Execution Agentのエージェント名とバージョン情報を閲覧できます。

10

管理対象外変数リスト

「 変数抜出対象資材 」で抜出した変数で、 各モード ▶ 代入値自動登録設定 の :menuselection:`Movement名:変数名 に表示したくない変数を管理します。

11

共通変数利用リスト (※1)

Ansible共通 ▶ グローバル変数管理 ・ Ansible共通 ▶ ファイル管理 ・ Ansible共通 ▶ テンプレート管理 に登録されている変数が、どの素材( Ansible-Legacy ▶ Playbook素材集 ・ Ansible-Pioneer ▶ 対話ファイル素材集 ・ Ansible-LegacyRole ▶ ロールパッケージ管理 )で使用しているかを閲覧できます。

Tip

※1 非表示メニューは、内部処理で使用するメニューです。
ITAをインストールした状態では表示されないメニューに設定されています。
非表示メニューを表示するには、管理コンソール ▶ ロール・メニュー紐付管理 で各メニューの復活処理を行います。詳細は「 管理コンソール 」を参照してください。
内部処理で使用するメニューには、登録を行わないようにしてください。

1.5. メニュー操作方法説明

本章では、Ansible共通のメニューの操作について記載します。

1.5.1. 機器一覧

  1. 作業対象となる機器情報のメンテナンス(閲覧/登録/更新/廃止)を行います。
    ITAをインストールすると、ローカル実行用の機器「localhost」が機器一覧に登録されます。
    「localhost」を指定して作業実行するとansibleホスト内で作業が実行されます。
    pioneerで「localhost」は使用できません。
    サブメニュー画面(機器一覧)

    図 1.90 サブメニュー画面(機器一覧)

  2. 登録 ボタンより、作業対象となる機器情報の登録を行います。
    登録画面(機器一覧)

    図 1.91 登録画面(機器一覧)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.124 登録画面項目一覧(機器一覧)

    項目

    説明

    入力必須

    入力方法

    制約事項

    管理システム項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    HW機器種別

    HW機器の種別を選択します。

    • NW(ネットワーク)
    • ST(ストレージ)
    • SV(サーバー)

    ー

    リスト選択

    説明欄記載のとおり

    ホスト名

    ホスト名を入力します。

    Ansible実行時のインベントリホストとして扱います。

    ○

    手動入力

    最大長255バイト

    DNSホスト名

    DNSサーバーを使用してホスト名が解決できる名称を入力します。

    ー

    手動入力

    最大長255バイト

    IPアドレス

    IPアドレス(xxx.xxx.xxx.xxxIPv4形式)を入力します。

    ー

    手動入力

    最大長15バイト

    ログインパスワード

    ユーザ

    ログインユーザを入力します。

    ー

    手動入力

    最大長255バイト

    パスワード

    パスワードを入力します。

    ー

    手動入力

    最大長255バイト

    ssh鍵認証情報

    ssh秘密鍵ファイル

    ssh秘密鍵ファイルを指定して鍵認証する場合の秘密鍵ファイルを入力します。

    アップロードしたファイルは暗号化されて保存されます。

    ※登録後はダウンロード不可となります。

    ー

    ファイル選択

    最大サイズ100Mバイト

    パスフレーズ

    ssh秘密鍵ファイルにパスフレーズが設定されている場合、パスフレーズを入力します。

    ー

    手動入力

    最大長255バイト

    Ansible利用情報

    Legacy/Role利用情報

    認証方式

    Ansible core・Ansible Automation Controller ・Ansible Execution Agentから作業対象へ接続する際の認証方式を選択します。

    • パスワード認証
      ログインパスワードの入力が必須です。
    • 鍵認証(パスフレーズなし)
      ssh秘密鍵ファイル(id_ras)のアップロードが必須です。
    • 鍵認証(パスフレーズあり)
      ssh秘密鍵ファイル(id_ras)のアップロードと、パスフレーズの入力が必須です。
    • パスワード認証(winrm)
      必要に応じてWinRM接続情報を入力します。
    • 証明書認証(winrm)
      winrm公開鍵ファイルとwinrm秘密鍵ファイルのアップロードが必須です。

    ー

    リスト選択

    説明欄記載のとおり

    WinRM接続情報

    ポート番号

    WindowsServerにWinRM接続する際のポート番号を入力します。

    未入力の場合はデフォルト(5985 :http)で接続します。

    ー

    手動入力

    0~65,535

    winrm公開鍵ファイル

    WindowsServerに証明書認証でWinRM接続する場合の公開鍵ファイル「ansible_winrm_cert_pem」を入力します。

    ※登録後はダウンロード不可となります。

    ー

    ファイル選択

    最大サイズ100Mバイト

    winrm秘密鍵ファイル

    WindowsServerに証明書認証でWinRM接続する場合の秘密鍵ファイル「ansible_winrm_cert_key_pem」を入力します。

    ※登録後はダウンロード不可となります。

    ー

    ファイル選択

    最大サイズ100Mバイト

    Pioneer利用情報

    プロトコル

    Pioneerから作業対象に接続する際のプロトコルを選択します。

    • ssh
      認証方式 はパスワード認証(winrm)以外を選択 してださい。
    • telnet
      認証方式 で選択した認証方式は使用せずにtelnetで接続します。
      ユーザ と パスワード の入力が必須です。

    ー

    リスト選択

    説明欄記載のとおり

    OS種別

    作業対象のOSを選択します。

    OS種は Ansible-Pioneer ▶ OS種別 から登録します。

    ー

    リスト選択

    説明欄記載のとおり

    LANG

    ログインユーザ のLANGを選択します。

    未選択の場合はデフォルト「utf-8」になります。

    ー ー

    リスト選択

    説明欄記載のとおり

    接続オプション

    作業対象に接続する際に設定したいオプションを入力します。

    • ssh接続の場合
      /etc/ansible.cfg/ssh_args や/etc/ansible/ansible.cfg に設定しているsshオプション以外のオプションを入力します。
    • telnet接続の場合
      telnet接続時のオプションを入力します。

    ー

    手動入力

    最大長4000バイト

    インベントリファイル追加オプション

    ITAが作成するインベントリファイルに追加するパラメータがある場合に、パラメータをyaml形式で入力します。

    尚、Ansible-Pioneerでは適用しません。

    ITAが作成するインベントリファイルについては「 ITAが作成するインベントリファイル 」を参照してください。

    e.g.)

    ansible_connection: network_cli
    ansible_network_os: ios
    ansible_become: yes
    ansible_become_method: enable
    

    各パラメータ値を変数で記述することも出来ます。

    ansible_become_password: '{{△vvv△}}'
    
    △:半角スペース
    ':シングル・ダブルコーテーションで必ず囲んで下さい。
    

    パラメータ値を変数で記述する場合の詳細は、「 インベントリファイル追加オプションとヘッダセクションのパラメータ値で変数抜出の対象となる変数の種類と書式 」を参照してください 。

    変数の具体値は 各モード ▶ 代入値自動登録設定 から登録します。

    ー

    手動入力

    最大長4000バイト

    Ansible Automation Controller 利用 情報

    インスタンスグループ名※1

    Ansible Automation Controllerがクラスタ構成の場合、どのインスタンスグループで実行するかを選択します。

    未選択の場合はAnsible Automation Controllerに設定されているデフォルトのインスタンスグループになります。

    Ansible Automation Controllerがクラスタ構成でない場合は、未選択で構いません。

    ー

    リスト選択

    説明欄記載のとおり

    接続タイプ

    Ansible Automation Controllerの認証情報の接続タイプを選択します。

    通常は「machine」を選択します。

    「ansible_connectionをlocal」に設定する必要があるNetwork OSなど場合に「Network」を選択します。

    • 「Network」を選択した場合
      インベントリファイル追加 オプション にPlatform Options(ansible_connection以外)を設定する必要が あります。

    e.g.)

    インベントリファイル追加オプションの設定例

    Network OSが「ios」の場合の設定値

    ansible_network_os: ios
    ansible_become: yes
    ansible_become_method: enable
    

    接続タイプについての詳細は、Ansible Automation Controller公式マニュアルのユーザガイドを参照してください。

    Network OSとansible_connectionの関連やPlatform Optionsについての詳細はAnsible公式ドキュメントのPlatform Optionsを参照してください。

    ○

    リスト選択

    説明欄記載のとおり

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

    Tip

    ※1「 Ansible Automation Controllerデータ同期 」で取得したデータから選択します。

1.5.2. インターフェース情報

  1. Ansible Core、Ansible Automation Controller、Ansible Execution Agentのいずれの実行エンジンを使用するか選択し、実行エンジンのサーバへの接続インターフェース情報のメンテナンス(閲覧/更新)を行います。
    サブメニュー画面(インタフェース情報)

    図 1.92 サブメニュー画面(インタフェース情報)

  2. 編集 ボタンより、インターフェース情報の更新を行います。
    登録画面(インタフェース情報)

    図 1.93 登録画面(インタフェース情報)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.125 登録画面項目一覧(インタフェース情報)

    項目

    説明

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    実行エンジン

    実行するエンジンを下記の3種類から選択します。

    • Ansible Core
    • Ansible Automation Controller
    • Ansible Execution Agent

    ○

    リスト選択

    説明欄記載のとおり。

    Ansible Automation Controller インターフェース

    代表ホスト

    Ansible共通 ▶ Ansible Automation Controllerホスト一覧 に登録されているハイブリットノードか制御ノードより、ITAと通信するAnsible Automation Controllerを選択します。

    ー

    リスト選択

    実行エンジン がAnsible Automation Controllerの場合に入力必須

    プロトコル

    Ansible Automation Controllerとの接続プロトコルを「http」/「https」のどちらかで入力します。

    ー

    手動入力

    実行エンジン がAnsible Automation Controllerの場合に入力必須

    ポート

    Ansible Automation Controllerとの接続プロトコルのポートを入力します。

    通常はhttps(443)を入力します。

    ー

    手動入力

    実行エンジン がAnsible Automation Controllerの場合に入力必須

    組織名 ※1

    Ansible Automation Controllerに登録されている組織名を選択します。

    ー

    リスト選択

    実行エンジン がAnsible Automation Controllerの場合に入力必須

    認証トークン

    Ansible Automation Controllerに接続するユーザの認証トークンを入力します。

    最大長255バイト

    実行エンジン がAnsible Automation Controllerの場合に入力必須

    REST APIタイムアウト値(単位秒)

    作業実行時にITAからAnsible Automation ControllerへRestAPI発行時のタイムアウト値を入力します。

    通常は60秒程度が推奨値です。

    未入力の場合は、デフォルト値(60)を使用します。

    ー

    手動入力

    60~3,600

    Proxy

    Address

    プロキシサーバのアドレスを入力します。

    ITAがプロキシ環境下にある場合、Ansible Automation Controllerまでの疎通のために設定が必要な場合があります。

    プロキシサーバのURLが

    http://proxy.gate.co.jp:8080の場合

    Addressにはhttp://proxy.gate.co.jpを入力します。

    Portには 8080を入力します。

    ー

    手動入力

    最大255バイト

    Port

    プロキシサーバのポートを入力します。

    ー

    手動入力

    1~65,535

    実行時データ削除

    作業実行時にAnsible Automation Controller又はAnsible Execution Agent内に一時的に生成したデータリソースを作業終了後に削除するかを選択します。

    「True」を選択した場合に削除します。

    削除されるデータリソースについての詳細は「 実行時データ削除で削除されるデータリソース 」を参照してください。

    ー

    リスト選択

    実行エンジン がAnsible Automation ControllerかAnsible Execution Agentの場合に入力必須

    Ansible-vaultパスワード

    ansible-vaultコマンドで変数の具体値を暗号化する場合のパスワードを入力します。

    未入力の場合は、デフォルト値を使用します。

    ー

    手動入力

    最大長64バイト

    オプションパラメータ

    Movement共通のオプションパラメータを入力します。

    オプションパラメータについての詳細は「 オプションパラメータ一覧 」を参照してください。

    • 実行エンジン が「Ansible Core」か 「Ansible Execution Agent」の場合
      ansible-playbookコマンドの
      ansible-playbookコマンドのオプションパラメータを入力します。
    • 実行エンジン が「Ansible Automation Controller」の場合
      ジョブテンプレートのパラメータを入力します。
      ジョブテンプレートについての詳細は、Ansible Automation Controller公式マニュアルのユーザガイドを参照してください。

    Movement固有のオプションパラメータは 各モード ▶ Movement一覧 から入力します。

    ー

    手動入力

    最大長4000バイト

    NULL連携

    各モード ▶ 代入値自動登録設定 で パラメータシート の具体値がNULL(空白)の場合に、 各モード ▶ 代入値管理 にNULL(空白)の値を登録するかを選択します。

    各モード ▶ 代入値自動登録設定 の NULL連携 が未選択の場合、この値が適用されます。

    • True
      パラメータシートの値がどのような値でも 各モード ▶ 代入値管理 に登録が行われます。
    • False
      パラメータシートに値が入力されていれば 各モード ▶ 代入値管理 に登録が行われます。

    未選択の場合「False」を適用します。

    ○

    リスト選択

    説明欄記載のとおり。

    状態監視周期(単位ミリ秒)

    各モード ▶ 作業状態確認 に表示される情報のリフレッシュ間隔を入力します。

    通常は1000ミリ秒程度が推奨値です。

    ○

    手動入力

    1,000~2,147,483,647

    進行状態表示行数

    各モード ▶ 作業状態確認 に表示する実行ログ・エラーログの最大表示行数を入力します。

    ステータス が以下の場合、ログの終端から入力した行数分を出力します。

    • 「未実行」
    • 「準備中」
    • 「準備完了」
    • 「実行待ち」
    • 「実行中」
    • 「実行中(遅延)」

    ステータス が以下の場合、すべてのログを出力します。

    • 「完了」
    • 「完了(異常)」
    • 「想定外エラー」
    • 「緊急停止」
    • 「未実行(予約)」
    • 「予約取消」

    環境毎にチューニングを要しますが、通常は1000行程度が推奨値です。

    ○

    手動入力

    0~2,147,483,647

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

    Tip

    ※1「 Ansible Automation Controllerデータ同期 」で取得したデータから選択します。

1.5.3. Ansible Automation Controller ホスト一覧

  1. Ansible Automation ControllerへのRestAPI実行に必要な情報、および構築資材をAnsible Automation Controllerにファイル転送するために必要な情報のメンテナンス(閲覧/登録/更新/廃止)を行います。
    クラスタ構成の場合は、構成している全てのホストを登録してください。
    ただし、Ansible Automation Controllerのhop nodeの登録は不要です。
    サブメニュー画面(Ansible Automation Controller ホスト一覧)

    図 1.94 サブメニュー画面(Ansible Automation Controller ホスト一覧)

  2. 登録 ボタンより、Ansible Automation Controllerのホスト情報の登録を行います。
    登録画面(Ansible Automation Controller ホスト一覧)

    図 1.95 登録画面(Ansible Automation Controller ホスト一覧)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.126 登録画面項目一覧(Ansible Automation Controller ホスト一覧)

    項目

    説明

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    ホスト

    Ansible Automation Controllerのホスト名(またはIPアドレス)を入力します。

    ○

    手動入力

    最大長255バイト

    認証方式

    Ansible Automation Controllerへファイル転送(scp)で接続する際の認証方式を選択します。

    • パスワード認証
      ログインユーザとパスワードの入力が必須です。
    • 鍵認証(パスフレーズなし)
      ssh秘密鍵ファイル(id_ras)のアップロードが必須です。
    • 鍵認証(パスフレーズあり)
      ssh秘密鍵ファイル(id_ras)のアップロードと、パスフレーズの入力が必須です。

    ○

    リスト選択

    説明欄記載のとおり。

    ユーザ

    Ansible Automation Controllerへファイル転送(scp)で接続する際のログインユーザを入力します。

    ログインユーザは、Ansible Automation Controllerインストール時に生成されるawxユーザにパスワードを設定し、awxユーザを入力して下さい。

    ○

    手動入力

    最大長255バイト

    パスワード

    認証方式 でパスワード認証を選択した場合、必須入力となります。 ログインユーザのパスワードを入力します。

    ー

    手動入力

    最大長4000バイト

    ssh鍵認証情報

    ssh秘密鍵ファイル

    認証方式 で鍵認証を選択した場合、必須入力となります。ssh秘密鍵ファイルを入力します。

    アップロードしたファイルは暗号化されて保存されます。

    ※登録後はダウンロード不可となります。

    ー

    ファイル選択

    最大サイズ100Mバイト

    パスフレーズ

    ssh秘密鍵ファイルにパスフレーズが設定されている場合、パスフレーズを入力します。

    ー

    手動入力

    最大長255バイト

    ポート

    Ansible Automation Controllerにssh接続する際の、ポート番号を指定することができます。

    デフォルトは22です。

    ー

    手動入力

    数値項目

    Execution node

    クラスタ構成で構築されているAnsible Automation Controllerで対象ホストが「execution node」の場合に「True」を選択します。

    「Execution node」が「True」の場合、Ansible共通 ▶ インターフェース情報の 代表ホスト に表示されません。

    ー

    リスト選択

    説明欄記載のとおり。

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

1.5.4. グローバル変数管理

  1. Playbookや対話ファイルで共通利用するグローバル変数名のメンテナンス(閲覧/登録/更新/廃止)を行います。
    サブメニュー画面(グローバル変数管理)

    図 1.96 サブメニュー画面(グローバル変数管理)

  2. 登録 ボタンより、グローバル変数の登録を行います。
    登録画面(グローバル変数管理)

    図 1.97 登録画面(グローバル変数管理)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.127 登録画面項目一覧(グローバル変数管理)

    項目

    説明

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    グローバル変数名

    変数名を入力します。
    変数名は、「GBL_****」形式で入力します。
    ****:半角英数字とアンダースコア( _ )が利用可能です。(最小値:1バイト、最大値:255バイト)

    ○

    手動入力

    説明欄記載のとおり。

    具体値

    具体値を入力します。複数行の具体値も入力できますが、Pioneerの対話ファイルで使用しているグローバル変数で複数行の具体値を設定すると、作業実行時にエラーとなります。

    ー

    手動入力

    最大長4000バイト

    変数名説明

    変数に対する説明・コメントを入力します。

    ー

    手動入力

    最大長4000バイト

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

1.5.5. ファイル管理

  1. Playbookや対話ファイルで共通利用するファイル素材とファイル埋込変数のメンテナンス(閲覧/登録/更新/廃止)を行います。
    ファイル素材を登録しておくことで、Playbook内で使用するファイル素材をファイル埋込変数名で指定することができます。
    サブメニュー画面(ファイル管理)

    図 1.98 サブメニュー画面(ファイル管理)

  2. 登録 ボタンより、ファイル埋込変数の登録を行います。
    登録画面(ファイル管理)

    図 1.99 登録画面(ファイル管理)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.128 登録画面項目一覧(ファイル管理)

    項目

    説明

    入力必須

    入力方法

    制約事項

    素材ID

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    ファイル埋込変数名

    Playbookに埋め込む変数名を入力します。
    変数名は、「CPF_****」形式で入力します。
    ****:半角英数字とアンダースコア( _ )が利用可能です。(最小値:1バイト、最大値:255バイト)

    ○

    手動入力

    説明欄記載のとおり。

    ファイル素材

    ファイル素材をアップロードします。

    ○

    ファイル登録

    最大サイズ100Mバイト

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

Tip

Ansible-Legacy・Ansible-LegacyRoleでのファイル埋込変数の使用例
Ansible共通 ▶ ファイル管理 で登録したファイル素材をPlaybookに記述する場合、ファイル埋込変数名を記述します。
※ファイル名にスペースなどが含まれている場合、適切にクォーテーションで囲まないと、作業実行時にエラーになる場合があります。
e.g.)
  • Ansible共通 ▶ ファイル管理 で登録したhostsファイルをファイル埋込変数を使用して作業対象サーバの/etc/配下にコピーする場合
    1. Ansible共通 ▶ ファイル管理 からhostsファイルを登録します。
      表 1.129 ファイル管理の登録内容

      ファイル埋込変数名

      ファイル素材

      CPF_hosts

      hosts

    2. 下記のようにPlaybookを記述します。
      ※destはファイル名も記述してください。ファイル名の指定がない場合、登録したファイル素材のファイル名の前にITAの管理番号が付与された名前のファイル名で処理されます。
       たとえば、dest=/etc/ とした場合、ファイル名は/etc/36桁の文字列_hostsとなります。
      Playbookの記述
      - copy: src='{{ CPF_hosts }}' dest=/etc/hosts
      
  • Ansible共通 ▶ ファイル管理 で登録したtool.tgzファイルをファイル埋込変数を使用して作業対象サーバの/usr/local/bin/配下に解凍する場合
    1. Ansible共通 ▶ ファイル管理 からtool.tgzファイルを登録します。
      表 1.130 ファイル管理の登録内容

      ファイル埋込変数名

      ファイル素材

      CPF_tool_tgz

      tool.tgz

    2. 下記のようにPlaybookを記述します。
      Playbookの記述
      - unarchive: src={{ CPF_tool_tgz }} dest=/usr/local/bin
      

Tip

Ansible-Pioneerでのファイル埋込変数の使用例
Ansible共通 ▶ ファイル管理 で登録したファイル素材を対話ファイルに記述する場合、対話ファイルにファイル埋込変数名を記述します。
※ファイル名にスペースなどが含まれている場合、適切にクォーテーションで囲まないと、作業実行時にエラーになる場合があります。
e.g.)
  • Ansible共通 ▶ ファイル管理 で登録したhostsファイルをファイル埋込変数を使用して作業対象サーバの/etc/配下にコピーする場合
    1. Ansible共通 ▶ ファイル管理 からhostsファイルを登録します。
      表 1.131 ファイル管理の登録内容

      ファイル埋込変数名

      ファイル素材

      CPF_hosts

      hosts

    2. 下記のように対話ファイルを記述します。
      ※転送先はファイル名も記述してください。ファイル名の指定がない場合、登録したファイル素材のファイル名の前にITAの管理番号が付与された名前のファイル名で処理されます。
       たとえば、/etc/. とした場合、ファイル名は/etc/36桁の文字列_hostsとなります。
      対話ファイルの記述
      conf:
        # ファイルのサイズでタイマ値調整
        timeout: 60
      exec_list:
        # 対象機器へのログインパスワード認証
        - expect: 'password:'
          exec: '{{ __loginpassword__ }}'
        # 作業対象側よりscpコマンドでAAC側に配置されているファイルを作業対象にファイル転送
        - expect: '{{ __loginuser__ }}@{{ __dnshostname__ }}'
          exec: 'scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null {{ VAR_scp_user }}@{{ VAR_aac_host }}:{{ CPF_hosts }} /etc/hosts'
        # scpコマンドのパスワードログイン認証(AAC側)
        - expect: 'password:'
          exec: '{{ VAR_scp_user_password }}'
        # 対話ファイル終了
        - expect: '{{ __loginuser__ }}@{{ __dnshostname__ }}'
          exec: exit
      
      表 1.132 変数の具体値

      変数

      具体値

      VAR_scp_user

      awx

      VAR_scp_user_password

      awxユーザパスワード

      VAR_aac_host

      Ansible Automation Controller

Tip

大容量ファイルのファイル登録
大容量のファイルを送信する際に、「認証に失敗しました。」というエラーメッセージが表示されることがあります。
この事象は、以下のような複数の要因によって、ファイル登録の認証プロセスに遅延が発生し、アクセストークンの有効期限が切れたために発生します。
 ・ネットワーク回線の状態
 ・通信経路の途中にあるネットワーク機器による、セキュリティチェックやフィルタリング

このような場合には、アクセストークン生存期間の変更 を確認し、必要に応じて生存期間の変更を実施してください。

1.5.6. テンプレート管理

  1. Playbookや対話ファイルで共通利用するテンプレートファイル素材とテンプレート埋込変数のメンテナンス(閲覧/登録/更新/廃止)を行います。
    テンプレートファイル素材を登録しておくことで、Playbook内で使用するテンプレートファイル素材をテンプレート埋込変数で指定することができます。
    サブメニュー画面(テンプレート管理)

    図 1.100 サブメニュー画面(テンプレート管理)

  2. 登録 ボタンより、テンプレート埋込変数の登録を行います。
    登録画面(テンプレート管理)

    図 1.101 登録画面(テンプレート管理)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.133 登録画面項目一覧(テンプレート管理)

    項目

    説明

    入力必須

    入力方法

    制約事項

    素材ID

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    テンプレート埋込変数名

    Playbookに埋め込む変数名を入力します。
    変数名は、「TPF_****」形式で入力します。
    ****:半角英数字とアンダースコア( _ )が利用可能です。(最小値:1バイト、最大値:255バイト)

    ○

    手動入力

    説明欄記載のとおり。

    テンプレート素材

    Playbookで使用するテンプレートファイル素材をアップロードします。

    ○

    ファイル登録

    テキスト形式
    最大サイズ100Mバイト

    変数定義

    テンプレートファイル素材内で使用している変数を定義します。
    テンプレートファイル素材内で使用出来る変数は5種類あります。※1

    ー

    手動入力

    最大長4000バイト

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

警告

テンプレートの変数定義から変数を抽出するタイミング
内部の処理でテンプレートの変数定義から変数を抽出します。抽出した変数は、 各モード ▶ 代入値自動登録設定 で具体値が登録可能になります。
抽出のタイミングはリアルタイムではないので、 各モード ▶ 代入値自動登録設定 で変数が扱えるまでに 時間がかかる 場合があります。

Tip

※1 変数定義の注意事項
テンプレートファイル内で使用する変数は、 変数定義 に入力する必要があります。
テンプレートファイル内で使用出来る変数は5種類あります。変数定義の注意事項は以下のとおりです。
同名の変数をdefault変数定義ファイルなどに定義している場合は、変数構造を合わせる必要があります。変数構造が一致していない場合は登録でエラーとなります。
表 1.134 変数定義の注意事項

種類

注意事項

通常変数

具体値は省略可能です。

e.g.)

vvv: value

複数具体値変数

具体値は省略可能です。

e.g.)

vvv:
  - vaule
vvv: []

多段変数

階層化された変数構造が定義出来ます。

e.g.)

vvv:
  - item1: value       ←メンバー変数
    item2:             ←メンバー変数
vvv:
  - array:
      - item1: value   ←メンバー変数
        item2:         ←メンバー変数

多段変数を定義したテンプレートは、Ansible-LegacyRoleでしか使用できません。

同名の変数をdefault変数定義ファイルなどに定義している場合は、変数構造を合わせる必要があります。変数構造が一致していない場合は登録でエラーとなります。

グローバル変数

具体値は省略可能です。

e.g.)

GBL_xxx: vaule
GBL_xxx_2:

ITA独自変数

変数の定義は不要です。

Tip

各変数名についての補足
vvv: 255バイト以内の半角英数字とアンダースコア( _ )
xxx: 251バイト以内の半角英数字とアンダースコア( _ )
メンバー変数は、下記の7文字を除くascii文字(0x20~0x7e)が使用出来ます。
" . [ ] ' \ :
尚、コーテーションで囲ないと変数名の先頭に使用出来ない文字がいくつかあります。
詳細は、Ansible公式ドキュメントのYaml syntaxを参照してください。

注釈

Ansible-Legacy・Ansible-LegacyRoleでのテンプレート埋込変数の使用例
Ansible共通 ▶ テンプレート管理 で登録したテンプレート素材をPlaybookに記述する場合、テンプレート埋込変数名を記述します。
※ファイル名にスペースなどが含まれている場合、適切にクォーテーションで囲まないと、作業実行時にエラーになる場合があります。
e.g.) Ansible共通 ▶ テンプレート管理 で登録したhostsファイルをテンプレート埋込変数を使用して作業対象サーバの/etc/配下に設置する場合
  1. Ansible共通 ▶ テンプレート管理 からhostsファイルを登録します。
    表 1.135 テンプレート管理の登録内容

    テンプレート埋込変数名

    テンプレート素材

    TPF_hosts

    hosts

  2. 下記のようにPlaybookを記述します。
    ※destはファイル名も記述してください。ファイル名の指定がない場合、登録したテンプレート素材のファイル名の前にITAの管理番号が付与された名前のファイル名で処理されます。
     たとえば、dest=/etc/ とした場合、ファイル名は/etc/36桁の文字列_hostsとなります。
    Playbookの記述
    - template: src='{{ TPF_hosts }}' dest=/etc/hosts
    

注釈

Ansible-Pioneerでのテンプレート埋込変数の使用例
Ansible共通 ▶ テンプレート管理 で登録したテンプレート素材を対話ファイルに記述する場合、テンプレート埋込変数名を記述します。
※ファイル名にスペースなどが含まれている場合、適切にクォーテーションで囲まないと、作業実行時にエラーになる場合があります。
e.g.) Ansible共通 ▶ テンプレート管理 で登録したhostsファイルをテンプレート埋込変数を使用して作業対象サーバの/etc/配下に設置する場合
  1. Ansible共通 ▶ テンプレート管理 からhostsファイルを登録します。
    表 1.136 テンプレート管理の登録内容

    テンプレート埋込変数名

    テンプレート素材

    TPF_hosts

    hosts

  2. 下記のように対話ファイルを記述します。
    ※転送先はファイル名も記述してください。ファイル名の指定がない場合、登録したテンプレート素材のファイル名の前にITAの管理番号が付与された名前のファイル名で処理されます。
     たとえば、/etc/. とした場合、ファイル名は/etc/36桁の文字列_hostsとなります。
    対話ファイルの記述
    conf:
      # ファイルのサイズでタイマ値調整
      timeout: 60
    exec_list:
      # 対象機器へのログインパスワード認証
      - expect: 'password:'
        exec: '{{ __loginpassword__ }}'
      # 作業対象側よりscpコマンドでAAC側に配置されているファイルを作業対象にファイル転送
      - expect: '{{ __loginuser__ }}@{{ __dnshostname__ }}'
        exec: 'scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null {{ VAR_scp_user }}@{{ VAR_aac_host }}:{{ TPF_hosts }} /etc/hosts'
      # scpコマンドのパスワードログイン認証(AAC側)
      - expect: 'password:'
        exec: '{{ VAR_scp_user_password }}'
      # 対話ファイル終了
      - expect: '{{ __loginuser__ }}@{{ __dnshostname__ }}'
        exec: exit
    
    表 1.137 変数の具体値

    変数

    具体値

    VAR_scp_user

    awx

    VAR_scp_user_password

    awxユーザパスワード

    VAR_aac_host

    Ansible Automation Controller

1.5.7. 実行環境定義テンプレート管理

  1. Ansible Execution Agent内にansible-builderで実行環境(コンテナ)をbuildする際の実行環境定義ファイル(execution-environment.yml)のテンプレートファイルのメンテナンス(閲覧/登録/更新/廃止)を行います。
    尚、ITAをインストールすると、pythonモジュールやansible galaxyコレクションが追加できるテンプレートファイルが登録されます。
    サブメニュー画面(実行環境定義テンプレート管理)

    図 1.102 サブメニュー画面(実行環境定義テンプレート管理管理)

  2. 登録 ボタンより、実行環境定義テンプレート管理の登録を行います。
    登録画面(実行環境定義テンプレート管理管理)

    図 1.103 登録画面(実行環境定義テンプレート管理管理)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.138 登録画面項目一覧(実行環境定義テンプレート管理)

    項目

    説明

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    テンプレート名

    テンプレート名を入力します。

    ○

    手動入力

    最大長255バイト

    テンプレートファイル

    ansible-builderで実行環境(コンテナ)をbuildする際に使用する実行環境定義ファイル(execution-environment.yml)のテンプレートファイルを入力します。

    ○

    ファイル登録

    Jinja2 template形式
    最大サイズ100Mバイト

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

1.5.8. 実行環境管理

  1. Ansible共通 ▶ 実行環境定義テンプレート管理 より登録した実行環境定義ファイル(execution-environment.yml)のテンプレートファイルと パラメータシート「実行環境定義テンプレート管理」 の紐付管理(閲覧/登録/更新/廃止)を行います。
    パラメータシート「実行環境定義テンプレート管理」 については「 Ansible共通 ▶ 実行環境定義テンプレート管理 に登録するテンプレートファイルと パラメータシート「実行環境パラメータ定義」 の使用方法 」を参照してください。
    尚、ITAをインストールすると、実行環境定義テンプレートファイルに埋め込むパラメータが登録された パラメータシート「実行環境パラメータ定義」 が登録され、 パラメータシート「実行環境パラメータ定義」 と Ansible共通 ▶ 実行環境定義テンプレート管理 の紐付が登録されます。
    サブメニュー画面(実行環境管理)

    図 1.104 サブメニュー画面(実行環境管理)

  2. 登録 ボタンより、実行環境定義テンプレート管理の登録を行います。
    登録画面(実行環境管理)

    図 1.105 登録画面(実行環境管理)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.139 登録画面項目一覧(実行環境管理)

    項目

    説明

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    実行環境名

    実行環境名を入力します。

    ○

    手動入力

    最大長255バイト

    実行環境構築方法

    作業実行時にAnsible Execution Agent内でansible-builderで実行環境(コンテナ)をbuildするかどうかを選択します。

    • ITA
      「ITA」を選択した場合には、ansible-builderで実行環境(コンテナ)をbuildします。
      実行環境定義名 と テンプレート名 は必須入力です。
    • Manual
      「Manual」を選択した場合には、ansible-builderで実行環境(コンテナ)をbuildしません。
      ITA外でbulidした実行環境(コンテナイメージ)を作業実行前にAnsible Execution Agent内にロードしておく必要があれます。

    ○

    リスト選択

    説明欄記載のとおり。

    タグ名

    ansible-builderで実行環境(コンテナ)をbuildされるイメージ名を入力します。

    • 実行環境構築方法 で「ITA」を選択している場合
      イメージ名は以下の命名規則となります。
      イメージ名の命名規則
      {{organization_id}}_{{workspace_id}}_"入力したタグ名"
    • 実行環境構築方法 で「Manual」を選択している場合
      イメージ名は入力したタグ名がイメージ名となります。

    ○

    手動入力

    最大長255バイト

    実行環境定義名

    実行環境定義テンプレート管理 用に作成されたパラメータシートに登録されているパラメータシート「実行環境パラメータ定義」 のメニュー名とレコード名が表示されます。一覧より選択します。

    ○

    リスト選択

    説明欄記載のとおり。

    テンプレート名

    実行環境定義テンプレート管理 に登録されている テンプレート名 が表示されます。 テンプレート名を選択します。

    ○

    リスト選択

    説明欄記載のとおり。

    備考

    自由記述欄です。

    ○

    手動入力

    最大長255バイト

1.5.9. エージェント管理

  1. ITAと接続したAnsible Execution Agentのエージェント名とバージョン情報を閲覧できます。
    サブメニュー画面(エージェント管理)

    図 1.106 サブメニュー画面(エージェント管理)

  2. 閲覧画面の項目一覧は以下のとおりです。
    表 1.140 登録画面項目一覧(エージェント管理)

    項目

    説明

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    エージェント名

    Ansible Execution Agentのエージェント名が表示されます。

    ー

    バージョン

    Ansible Execution Agentのバージョンが表示されます。

    ー

    ステータス

    ステータスには以下の状態が表示されます。

    • 正常(最新)
      Ansible Execution AgentのパーションとITAのバージョンが一致、Ansible Execution Agentと正常に連携が出来ている状態です。
    • 正常(更新可能)
      Ansible Execution AgentのパーションとITAのバージョンが一致しないが互換性があるので、Ansible Execution Agentと正常に連携が出来ている状態ですが、Ansible Execution Agentのバージョンアップを推奨します。
    • 連携不可(要更新)
      Ansible Execution AgentのパーションとITAのバージョンが一致しなく互換性がない為、Ansible Execution Agentと連携が出来ない状態です。Ansible Execution Agentのバージョンアップを行って下さい。

    ー

    備考

    自由記述欄です。

    自由記述欄です。

1.5.10. 管理対象外変数リスト

  1. 「 変数抜出対象資材 」で抜出した変数で、 各モード ▶ 代入値自動登録設定 の Movement名:変数名 に表示したくない変数のメンテナンス(参照/更新/廃止/復活)を行います。
    ITAインストール時にansibleマジック変数が登録されます。
    サブメニュー画面(管理対象外変数リスト)

    図 1.107 サブメニュー画面(管理対象外変数リスト)

  2. 登録 ボタンより、管理対象外変数の登録を行います。
    登録画面(管理対象外変数リスト)

    図 1.108 登録画面(管理対象外変数リスト)

  3. 登録画面の項目一覧は以下のとおりです。
    表 1.141 登録画面項目一覧(管理対象外変数リスト)

    項目

    注意事項

    入力必須

    入力方法

    制約事項

    項番

    登録時に自動採番した36桁の文字列が表示されます。

    ー

    自動入力

    ー

    変数名

    各モード ▶ 代入値自動登録設定 の Movement名:変数名 に表示したくない変数名を入力します。
    変数名は正規表現で記載できます。
    e.g.) ansible_* *:ワイルドカード
    ansible_[0-9a-zA-Z]*

    〇

    手動入力

    最大長255バイト

    備考

    自由記述欄です。

    ー

    手動入力

    最大長4000バイト

1.6. 付録

1.6.1. Ansible共通 ▶ 実行環境定義テンプレート管理 に登録するテンプレートファイルと パラメータシート「実行環境パラメータ定義」 の使用方法

ITAをインストールすると、実行環境定義テンプレート管理 と パラメータシート「実行環境パラメータ定義」 にpythonモジュールやansible galaxyコレクションが追加できるテンプレートファイルとパラメータ値が登録されます。
  1. Ansible共通 ▶ 実行環境定義テンプレート管理 に登録するテンプレートファイルの仕様
    ファイルの形式は「Jinjer2型式」です。
    ファイルの書式は、ansible-biulderで使用する定義ファイル「execution-environment.yml」に準じます。詳細は、ansible-biulderのマニュアルを参照して下さい。
  2. ITAインストール時に登録される パラメータシート「実行環境パラメータ定義」 の項目一覧は以下のとおりです。
    パラメータシート「実行環境パラメータ定義」
    表 1.142 パラメータシート「実行環境パラメータ定義」

    項目

    説明

    入力必須

    入力方法

    制約事項

    execution_environment_name

    レコードの名称を入力します。

    〇

    手動入力

    最大長255バイト

    python_requirements_file

    実行環境(コンテナ)にpipコマンドで追加インストールをしたいPythonパッケージを列挙したファイルを入力します。

    〇

    ファイル選択

    最大サイズ 100Mバイト 尚、空ファイルを入力しないで下さい。ansible-builder実行時にエラーになります。

    galaxy_requirements_file

    実行環境(コンテナ)にansible-galaxyで追加インストールをしたいコレクションを列挙したファイルを入力します。

    -

    ファイル選択

    最大サイズ 100Mバイト 尚、空ファイルを入力しないで下さい。ansible-builder実行時にエラーになります。

    bindep_file

    実行環境(コンテナ)にdnfコマンドで追加インストールをしたいLinuxモジュールを列挙したファイルを入力します。

    〇

    ファイル選択

    最大サイズ 100Mバイト 尚、空ファイルを入力しないで下さい。ansible-builder実行時にエラーになります。

    ansible_runner

    「ansible_runner」を入力します。

    〇

    手動入力

    最大長255バイト

    image

    実行環境(コンテナ)のベースイメージを入力します。 ITA Ver2.5.1では、以下の2個のベースイメージについて動作確認がとれています。

    • Redhat有償版のベースイメージの場合
      registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel9:latest
    • Redhat無償版のベースイメージの場合
      registry.access.redhat.com/ubi9/ubi-init:latest

    〇

    手動入力

    最大長255バイト

    package_manager_path

    パッケージ管理コマンドのパスを入力します。

    • Redhat有償版のベースイメージの場合
      /usr/bin/microdnf
    • Redhat無償版のベースイメージの場合
      /usr/bin/dnf

    〇

    手動入力

    最大長255バイト

  3. パラメータシート 「実行環境パラメータ定義」 を新規作成したり更新する場合の注意事項
    パラメータシート 「実行環境パラメータ定義」 を新規作成したり更新する場合の注意事項について以下に列挙します。
    1. パラメータシート名(rest)は、先頭が「execution_environment_parameter_definition_sheet」で始まる名称にして下さい。
    2. 作成対象は、データシートを選択して下さい。
    3. パラメータシートの項目に以下の項目を含んで下さい。

      項目

      説明

      Rest API用項目名

      execution_environment_name

      入力値

      レコード名

      項目タイプ

      文字列(単一行)

      最大バイト数

      255

    4. パラメータシート名を入力します。

      Tip

      Ansible共通 ▶ 実行環境管理 の 実行環境定義名 に表示される情報について補足
      実行環境定義名 には下記情報が表示されます。
        ④パラメータシート名/③レコード名「Rest API用項目名:execution_environment_name」
    5. Ansible共通 ▶ 実行環境定義テンプレート管理 に登録したテンプレートファイル内の変数と同名の項目を容易して下さい。
      パラメータシートの項目名を変数名、設定値を変数値として、テンプレートファイルに埋め込みます。
      実行環境定義テンプレート管理で使用するテンプレートファイルと実行環境パラメータ定義で使用するパラメータシートの関連図
      実行環境定義テンプレート管理で使用するテンプレートファイルと実行環境パラメータ定義で使用するパラメータシートの関連図

1.6.2. BackYardコンテンツ

Ansible Automation Controllerデータ同期

Ansible共通 ▶ インターフェース情報 の 実行エンジン で「Ansible Automation Controller」を選択している場合、Ansible Automation Controllerに登録されているリソースを取得します。
表 1.143 Ansible Automation Controllerから取得するリソースと使用用途

リソース

用途

組織名

Ansible共通 ▶ インターフェース情報 の 組織名 のリスト選択で使用されます。
Ansible共通 ▶ インターフェース情報 の 認証トークン で入力しているユーザが利用可能な組織名がリストに表示されます。

インスタンスグループ

Ansible共通 ▶ 機器一覧 の インスタンスグループ のリスト選択で使用されます。
Ansible共通 ▶ インターフェース情報 の 組織名 で選択している組織が利用可能なインスタンスグループがリストに表示されます。

実行環境

各モード ▶ Movement一覧 の 実行環境 のリスト選択で使用されます。
Ansible共通 ▶ インターフェース情報 の 組織名 で選択している組織が利用可能な実行環境がリストに表示されます。

1.6.3. ITAが作成するインベントリファイル

ITAが作成するインベントリファイルについて説明します。
ITAが作成するインベントリファイルを以下に示します。
all:
  children:
    hostgroups:
      hosts:
        Inventory_host:
          Inventory_host_parameters:
          Inventory_host_option_parameters:
Inventory_hostには Ansible共通 ▶ 機器一覧 の ホスト名 を設定します。
Inventory_host_option_parametersには Ansible共通 ▶ 機器一覧 の インベントリファイル追加オプション を設定します。
Inventory_host_parametersに設定するパラメータを以下に示します。
各設定値に対応する項目が未入力のパラメータは、Inventory_host_parametersに設定しません。
表 1.144 Inventory_host_parametersに設定するパラメータ一覧

パラメータ名

Ansible共通 ▶ 機器一覧 の 認証方式

設定値

パスワード認証

鍵認証

(パスフレーズなし)

鍵認証

(パスフレーズあり)

鍵認証

(鍵交換済み)

パスワード認証

認証(winrm)

証明書認証

(winrm)

ansible_host

〇

〇

〇

〇

〇

〇

Ansible共通 ▶ 機器一覧 の DNSホスト または DNSホストIPアドレス 各モード ▶ Movement一覧 の ホスト指定形式 で選択されている内容にで決まります。

ansible_user

〇

〇

〇

〇

〇

Ansible共通 ▶ 機器一覧 の ログインユーザ

ansible_password

〇

〇

Ansible共通 ▶ 機器一覧 の ログインパスワード

ansible_ssh_private_key_file

〇

〇

Ansible共通 ▶ 機器一覧 の ssh秘密鍵ファイル

ansible_ssh_extra_args

〇

〇

〇

〇

Ansible共通 ▶ 機器一覧 の 接続オプション

ansible_connection:

〇

〇

winrm

ansible_port

〇

〇

Ansible共通 ▶ 機器一覧 の WinRM接続情報 ▶ ポート番号

ansible_winrm_cert_pem

〇

〇

Ansible共通 ▶ 機器一覧 の WinRM接続情報 ▶ winrm公開鍵ファイル

ansible_winrm_cert_key_pem

〇

〇

Ansible共通 ▶ 機器一覧 の WinRM接続情報 ▶ winrm秘密鍵ファイル

Tip

〇: 設定対象

1.6.4. オプションパラメータ一覧

Ansible共通 ▶ インターフェース情報 と 各モード ▶ Movement一覧 の オプションパラメータ について説明します。
ITAでは、以下の優先順位でオプションパラメータを設定します。単一の値しか許容していないパラメータを複数定義した場合、 各モード ▶ Movement一覧 の オプションパラメータ が有効になります。
  1. 各モード ▶ Movement一覧 の オプションパラメータ
  2. Ansible共通 ▶ インターフェース情報 の オプションパラメータ
▼ Ansible共通 ▶ インターフェース情報 の 実行エンジン が「Ansible Core」と「Ansible Execution Agent」の場合
  ansible-playbookコマンドのオプションパラメータを入力します。
  ansible-playbookコマンドのオプションパラメータの仕様については、以下のコマンドを実行して表示されたヘルプを参照してください。
ansible-playbook -h

▼ Ansible共通 ▶ インターフェース情報 の 実行エンジン が「Ansible Automation Controller」の場合に
  入力可能なオプションパラメータは以下のとおりです。

表 1.145 Ansible Automation Controllerの場合に指定可能なオプションパラメータ一覧

オプションパラメータ

指定方法

Ansible Automation Controllerの設定箇所

備考

-v
--verbose
-v
-vv
-vvv
-vvvv
-vvvvv
--verbose

テンプレート の 詳細 に v の数が設定される。

・vの合計値を適用
・--verboseは、-vと同様
例:--verbose -vvv の場合、-vvvvと同様
・vを6以上指定した場合 、vは5の指定となる
-f
--forks
-f FORKS
--forks=FORKS

テンプレート の フォーク にFORKSの値が設定される。

・FORKSには数値を指定
・複数定義した場合、最後に定義したパラメータが有効
例:-f 1-forks=10の場合、--forks=10が有効となる
・数値以外が指定された場合、エラーとなる
-l
--limit
-l SUBSET
--limit=SUBSET

テンプレート の 制限 にSUBMITの値が設定される。

・SUBSET:機器一覧にあるホスト名
・複数定義した場合、最後に定義したパラメータが有効
-e
--extra-vars
-e EXTRA_VARS
--extra-vars=EXTRA_VARS

テンプレート の 追加変数 にEXTRA_VARSの値が設定される。

・EXTRA_VARS:変数名、具体値をjson形式またはyaml形式
e.g.) json形式の場合
 -extra-vars={"VAR_1":"directory"}
e.g.) yaml形式の場合
 -extra-vars=VAR_1:directory
・複数定義した場合、最後に定義したパラメータが有効
-t
--tags
-t TAGS
--tags=TAGS

テンプレート の ジョブタグ にTAGSの値が設定される。

・TAGS:タグ名
・複数個のパラメータを許容
-b
--become
-b
--become

テンプレート の 権限昇格の有効化 がチェックされる。

・少なくとも1つ指定すればパラメータが有効

-D
--diff
-D
--diff

テンプレート の 変更 の表示が有効化される。

・少なくとも1つ指定すればパラメータが有効

--skip-tags

--skip-tags=SKIP_TAGS

テンプレート の スキップタグ にSKIP_TAGSの値が設定される。

・SKIP_TAGS:スキップタグ名
・複数個のパラメータを許容

--start-at-task

--start-at-task=START_AT_TASK

※Ansible Automation ControllerのWebUI には--start-at-taskの表示はありません。
ansible-playbookコマンドの--start-at-taskと同様の扱いになります。

・複数定義した場合、最後に定義したパラメータが有効

-ufc
--use _fact_cache
-ufc
--use_fact_cache

テンプレート の ファクトキャッシュの有効化 がチェックされる。

・少なくとも1つ指定すればパラメータが有効

-as
--allow_simultaneous
-as
--allow_simultaneous

テンプレート の 同時実行ジョブの有効化 がチェックされる。

・少なくとも1つ指定すればパラメータが有効

-jsc
--jobslice_count
-jsc ジョブスライス数
--job_slice_count=ジョブスライス数

テンプレート の ジョブスライス数 にジョブスライス数の値が設定される。

・ジョブスライス数には数値を指定
・複数定義した場合、最後に定義したパラメータが有効
※Ansible Automation Controllerのオプションパラメータの仕様については、Ansible Automation Controller公式マニュアルのユーザガイドのジョブテンプレートを参照してください。

1.6.5. 実行時データ削除で削除されるデータリソース

Ansible共通 ▶ インターフェース情報 の 実行時データ削除 で「true」を選択した場合に、削除されるデータリソースは以下のとおりです。

Ansible共通 ▶ インターフェース情報 の 実行エンジン が「Ansible Automation Controller」の場合

表 1.146 実行時データ削除で削除されるデータリソース一覧(Ansible Automation Controller側)

データリソース

リソースタイプ

備考

ITA作業用ディレクトリ

/var/lib/exastro/ita_<区分>_executions_作業番号

ディレクトリ

SCM管理ディレクトリ

/var/lib/awx/projects/ita_<区分>_executions_作業番号

ディレクトリ

※プロジェクトリソースの削除により削除される

インベントリ

リソース名: ita_<区分>_executions_inventory_作業番号_通番

リソース

認証情報

リソース名: ita_<区分>_executions_credential_作業番号_通番

      ita_<区分>_executions_vault_credential_作業番号

      ita_<区分>_executions_git_credential_作業番号

リソース

プロジェクト

リソース名: ita_<区分>_executions_project_作業番号

リソース

ジョブテンプレート

リソース名: ita_<区分>_executions_jobtpl_作業番号_通番

リソース

ワークフロージョブテンプレート

リソース名: ita_<区分>_executions_workflowtpl_作業番号

リソース

ジョブ

リソース名: Job番号—ita_<区分>_executions_workflowtpl_作業番号

      Job番号—ita_<区分>_executions_jobtpl_作業番号

リソース

注釈

<区分>: 作業実行したモード
     legacy: legacy
     legacy role: legacy_role
     pioneer: pioneer
表 1.147 実行時データ削除で削除されるデータリソース一覧(ITA側)

データリソース

リソースタイプ

備考

Git リポジトリ

/tmp/git_repositories/<区分>_作業番号

Gitリポジトリ

ディレクトリごと削除

※ 実行時データ削除 の 設定値に関係なく削除される。

Ansible共通 ▶ インターフェース情報 の 実行エンジン が「Ansible Execution Agent」の場合

表 1.148 実行時データ削除で削除されるデータリソース一覧(Ansible Execution Agent側)

データリソース

リソースタイプ

備考

ITA作業用ディレクトリ

<storage>/<org>/<ws>/driver/ag_ansible_execution/<区分>/作業番号

<storage>/<org>/<ws>/ag_ansible_execution/status

ディレクトリ

注釈

<storage>: Ansible Execution Agentインストール時にSpecify full path for the data storage locationで設定したバス
<org>:Ansible Execution Agentインストール時にInput ORGANIZATION_ID.で設定したORGANIZATION ID
<ws>:Ansible Execution Agentインストール時にInput WORKSPACE_ID.で設定したWORKSPACE ID

1.6.6. Ansible Automation ControllerでITA独自変数を利用する場合の留意事項

下記ITA独自変数を利用してファイル出力をするPlyabookを含むMovementをクラスタ構成のAnsible Automation Controllerで作業実行した場合の留意事項について記載します。

 対象のITA独自変数
 ・ __workflowdir__
 ・ __conductor_workflowdir__
 ・ __movement_status_filepath__
 ・ __parameters_dir_for_epc__
 ・ __parameters_file_dir_for_epc__
 ・ __parameter_dir__
 ・ __parameters_file_dir__

ITA独自変数を利用して作成したファイルの取り扱い

ITA独自変数を利用して作成したファイルの出力先ディレクトリパスはAnsible Automation ControllerのITA作業用ディレクトリ配下「/var/lib/exastro」に設定されます。Movement実行前に結果データをAnsible Automation Controller(各実行ノード)のITA作業用ディレクトリ配下「/var/lib/exastro」にファイル転送します。Movement実行でここに作成されたファイルは、Movement実行後に各Ansible Automation Controller(各実行ノード)より結果データに上書きモードでファイル転送します。同一ファイル名でファイルを作成している場合、更新したファイルが結果データに正しく反映されない場合があります。
../../_images/original_hensu.png
  1. Movementをconductorから実行している場合、Movement実行前に該当conductorインスタンス配下のファイルをAnsible Automation Controller(各実行ノード)のITA作業用ディレクトリ配下にファイル転送
  2. Movement実行前に該当Movement配下のファイルをAnsible Automation Controller(各実行ノード)のITA作業用ディレクトリにファイル転送
  3. Movementをconductorから実行している場合、Movement実行後にAnsible Automation Controller(各実行ノード)のITA作業用ディレクトリの該当Movementで作成したファイルを結果データにファイル転送
  4. Movement実行後にAnsible Automation Controller(各実行ノード)のITA作業用ディレクトリの該当conductorインスタンス配下に作成したファイルを結果データにファイル転送

留意事項

  1. ファイル名はansible「inventory_hostname」を含めるなどして、Movementに紐づいている作業対象ホスト毎に同一ファイル名に出力しないように工夫してください。
  2. conductorから実行する場合、複数のMovementで同一ファイル名への出力しないよう工夫してください。