収集・比較機能¶
作業前システム情報の収集¶
パラメータシートの作成¶
- name: set variable
set_fact:
test: "{{ VAR_hostname }}"
- name: make yaml file
blockinfile:
create: yes
mode: 644
insertbefore: EOF
marker: ""
dest: "/tmp/system.yml"
content: |
ansible_architecture : {{ ansible_architecture }}
ansible_bios_version : {{ ansible_bios_version }}
ansible_default_ipv4__address : {{ ansible_default_ipv4.address }}
ansible_default_ipv4__interface : {{ ansible_default_ipv4.interface }}
ansible_default_ipv4__network : {{ ansible_default_ipv4.network }}
ansible_distribution : {{ ansible_distribution }}
ansible_distribution_file_path : {{ ansible_distribution_file_path }}
ansible_distribution_file_variety : {{ ansible_distribution_file_variety }}
ansible_distribution_major_version: {{ ansible_distribution_major_version }}
ansible_distribution_release : {{ ansible_distribution_release }}
ansible_distribution_version : {{ ansible_distribution_version }}
ansible_machine : {{ ansible_machine }}
ansible_memtotal_mb : {{ ansible_memtotal_mb }}
ansible_nodename : {{ ansible_nodename }}
ansible_os_family : {{ ansible_os_family }}
ansible_pkg_mgr : {{ ansible_pkg_mgr }}
ansible_processor_cores : {{ ansible_processor_cores }}
- name: Copy the make yaml file to local
fetch:
src: "/tmp/system.yml"
dest: "{{ __parameter_dir__ }}/{{ inventory_hostname }}/"
flat: yes
設定項目 |
項目1設定値 |
項目2設定値 |
項目3設定値 |
項目4設定値 |
項目5設定値 |
項目6設定値 |
---|---|---|---|---|---|---|
グループ |
ansible_default_ipv4 |
ansible_default_ipv4 |
ansible_default_ipv4 |
|||
項目の名前 |
ansible_architecture |
ansible_bios_version |
address |
interface |
network |
ansible_distribution |
項目の名前(Rest API用) |
ansible_architecture |
ansible_bios_version |
address |
interface |
network |
ansible_distribution |
入力方式 |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
選択項目 |
64 |
64 |
64 |
64 |
64 |
64 |
正規表現 |
||||||
初期値 |
||||||
必須 |
||||||
一意制約 |
||||||
説明 |
||||||
備考 |
設定項目 |
項目7設定値 |
項目8設定値 |
項目9設定値 |
項目10設定値 |
項目11設定値 |
項目12設定値 |
---|---|---|---|---|---|---|
グループ |
||||||
項目の名前 |
ansible_distribution_file_path |
ansible_distribution_file_variety |
ansible_distribution_major_version |
ansible_distribution_release |
ansible_distribution_version |
ansible_machine |
項目の名前(Rest API用) |
ansible_distribution_file_path |
ansible_distribution_file_variety |
ansible_distribution_major_version |
ansible_distribution_release |
ansible_distribution_version |
ansible_machine |
入力方式 |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
選択項目 |
64 |
64 |
64 |
64 |
64 |
64 |
正規表現 |
||||||
初期値 |
||||||
必須 |
||||||
一意制約 |
||||||
説明 |
||||||
備考 |
設定項目 |
項目13設定値 |
項目14設定値 |
項目15設定値 |
項目16設定値 |
項目17設定値 |
---|---|---|---|---|---|
グループ |
|||||
項目の名前 |
ansible_memtotal_mb |
ansible_nodename |
ansible_os_family |
ansible_pkg_mgr |
ansible_processor_cores |
項目の名前(Rest API用) |
ansible_memtotal_mb |
ansible_nodename |
ansible_os_family |
ansible_pkg_mgr |
ansible_processor_cores |
入力方式 |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
文字列(単一行) |
選択項目 |
64 |
64 |
64 |
64 |
64 |
正規表現 |
|||||
初期値 |
|||||
必須 |
|||||
一意制約 |
|||||
説明 |
|||||
備考 |
項目名 |
設定値 |
---|---|
項番 |
(自動入力) |
パラメータシート名 |
システム情報 |
パラメータシート名(REST) |
system_information |
作成対象 |
パラメータシート(ホスト/オペレーションあり) |
表示順序 |
1 |
バンドル利用 |
「利用する」にチェックを入れない(無効) |
最終更新日時 |
(自動入力) |
最終更新者 |
(自動入力) |
設定項目 |
項目1設定値 |
---|---|
項目の名前 |
hostname |
項目の名前(Rest API用) |
hostname |
入力方式 |
プルダウン選択 |
選択項目 |
Ansible項目:機器一覧:ホスト名 |
参照項目 |
|
初期値 |
|
必須 |
|
一意制約 |
|
説明 |
|
備考 |
設定項目 |
設定値 |
---|---|
項番 |
(自動入力) |
パラメータシート名 |
ホスト名紐付け用 |
パラメータシート名(REST) |
host_association |
作成対象 |
パラメータシート(ホスト/オペレーションあり) |
表示順序 |
2 |
バンドル利用 |
「利用する」にチェックを入れない(無効) |
最終更新日時 |
(自動入力) |
最終更新者 |
(自動入力) |
作業手順の登録¶
- Movement¶
- Exastro IT Automation における、最小の作業単位のことを指します。¶
- 1回の Movement 実行は、1回の ansible-playbook コマンドの実行と同じです。¶
Movement名 |
Ansible利用情報 |
|
---|---|---|
ホスト指定形式 |
ヘッダーセクション |
|
システム情報収集 |
IP |
※ヘッダーセクションを参照 |
- hosts: all
remote_user: "{{ __loginuser__ }}"
gather_facts: yes
become: yes
Ansible Playbook 登録¶
- name: set variable
set_fact:
test: "{{ VAR_hostname }}"
- name: make yaml file
blockinfile:
create: yes
mode: 644
insertbefore: EOF
marker: ""
dest: "/tmp/system.yml"
content: |
ansible_architecture : {{ ansible_architecture }}
ansible_bios_version : {{ ansible_bios_version }}
ansible_default_ipv4__address : {{ ansible_default_ipv4.address }}
ansible_default_ipv4__interface : {{ ansible_default_ipv4.interface }}
ansible_default_ipv4__network : {{ ansible_default_ipv4.network }}
ansible_distribution : {{ ansible_distribution }}
ansible_distribution_file_path : {{ ansible_distribution_file_path }}
ansible_distribution_file_variety : {{ ansible_distribution_file_variety }}
ansible_distribution_major_version: {{ ansible_distribution_major_version }}
ansible_distribution_release : {{ ansible_distribution_release }}
ansible_distribution_version : {{ ansible_distribution_version }}
ansible_machine : {{ ansible_machine }}
ansible_memtotal_mb : {{ ansible_memtotal_mb }}
ansible_nodename : {{ ansible_nodename }}
ansible_os_family : {{ ansible_os_family }}
ansible_pkg_mgr : {{ ansible_pkg_mgr }}
ansible_processor_cores : {{ ansible_processor_cores }}
- name: Copy the make yaml file to local
fetch:
src: "/tmp/system.yml"
dest: "{{ __parameter_dir__ }}/{{ inventory_hostname }}/"
flat: yes
Playbook素材名 |
Playbook素材 |
---|---|
system_collection |
|
Movement と Ansible Playbook の紐付け¶
Movement名 |
Playbook素材 |
インクルード順序 |
---|---|---|
システム情報収集 |
system_collection |
1 |
パラメータシートの項目と Ansible Playbook の変数の紐付け¶
パラメータシート(From) |
登録方式 |
Movement名 |
IaC変数(To) |
||
---|---|---|---|---|---|
メニューグループ:メニュー:項目 |
代入順序 |
Movement名:変数名 |
代入順序 |
||
代入値自動登録用:ホスト紐付け用:パラメータ/hostname |
入力無し |
Value型 |
システム情報収集 |
システム情報収集:VAR_hostname |
入力無し |
収集項目値管理¶
収集項目(From) |
パラメータシート(To) |
||
---|---|---|---|
バース形式 |
PREFIX(ファイル名) |
変数名 |
メニューグループ:項目 |
YAML |
system |
ansible_architecture |
入力用:システム情報:パラメータ/ansible_architecture |
YAML |
system |
ansible_bios_version |
入力用:システム情報:パラメータ/ansible_bios_version |
YAML |
system |
ansible_default_ipv4__address |
入力用:システム情報:パラメータ/ansible_default_ipv4/address |
YAML |
system |
ansible_default_ipv4__interface |
入力用:システム情報:パラメータ/ansible_default_ipv4/interface |
YAML |
system |
ansible_default_ipv4__network |
入力用:システム情報:パラメータ/ansible_default_ipv4/network |
YAML |
system |
ansible_distribution |
入力用:システム情報:パラメータ/ansible_distribution |
YAML |
system |
ansible_distribution_file_path |
入力用:システム情報:パラメータ/ansible_distribution_file_path |
YAML |
system |
ansible_distribution_file_variety |
入力用:システム情報:パラメータ/ansible_distribution_file_variety |
YAML |
system |
ansible_distribution_major_version |
入力用:システム情報:パラメータ/ansible_distribution_major_version |
YAML |
system |
ansible_distribution_release |
入力用:システム情報:パラメータ/ansible_distribution_release |
YAML |
system |
ansible_distribution_version |
入力用:システム情報:パラメータ/ansible_distribution_version |
YAML |
system |
ansible_machine |
入力用:システム情報:パラメータ/ansible_machine |
YAML |
system |
ansible_memtotal_mb |
入力用:システム情報:パラメータ/ansible_memtotal_mb |
YAML |
system |
ansible_nodename |
入力用:システム情報:パラメータ/ansible_nodename |
YAML |
system |
ansible_os_family |
入力用:システム情報:パラメータ/ansible_os_family |
YAML |
system |
ansible_pkg_mgr |
入力用:システム情報:パラメータ/ansible_pkg_mgr |
YAML |
system |
ansible_processor_cores |
入力用:システム情報:パラメータ/ansible_processor_cores |
作業対象の登録¶
機器登録¶
HW機器種別 |
ホスト名 |
IPアドレス |
ログインパスワード |
ssh鍵認証情報 |
Ansible利用情報 |
---|---|---|---|---|---|
ユーザ |
ssh秘密鍵ファイル |
Legacy/Role利用情報 |
|||
認証方式 |
|||||
SV |
server01 |
192.168.0.1 ※適切なIPアドレスを設定 |
接続ユーザ名 |
(秘密鍵ファイル) |
鍵認証(パスフレーズなし) |
Tip
システム情報収集作業の実施¶
作業実施日時 |
2024/04/01 12:00:00 |
作業対象 |
server01(RHEL8) |
作業内容 |
作業前データ収集 |
作業概要登録¶
オペレーション名 |
実施予定日時 |
---|---|
作業前データ収集 |
2024/04/01 12:00:00 |
Tip
パラメータ設定¶
ホスト名 |
オペレーション |
パラメータ |
---|---|---|
オペレーション名 |
hostname |
|
server01 |
2024/04/01 12:00:00_作業前データ収集 |
server01 |
作業実行¶
作業実行
作業実行 を押下します。から、システム情報収集 Movement を選択し、次に、作業実行 を押下します。で、オペレーションに 作業前データ収集 を選択し、画面が開き、実行が完了した後に、ステータスが「完了」になったことを確認します。
事後確認
から、パラメータの入力情報を確認しましょう。パラメータシート作成・定義で作成した、システム情報のパラメータが問題なく入力されているか確認しましょう。また、この後の比較作業で実施日時を入力する必要があるので、から、実施した日付を確認しておきましょう。
ホスト名変更¶
作業後システム情報の収集¶
作業概要登録¶
オペレーション名 |
実施予定日時 |
---|---|
作業後データ収集 |
2024/05/01 12:00:00 |
パラメータ設定¶
ホスト名 |
オペレーション |
パラメータ |
---|---|---|
オペレーション名 |
hostname |
|
admin_user |
2024/05/01 12:00:00_作業後データ収集 |
admin_user |
作業実行¶
作業実行
作業実行 を押下します。から、システム情報収集 Movement を選択し、次に、作業実行 を押下します。で、オペレーションに 作業後データ収集 を選択し、画面が開き、実行が完了した後に、ステータスが「完了」になったことを確認します。
事後確認
から、パラメータの入力情報を確認しましょう。パラメータシート作成・定義で作成した、システム情報のパラメータが問題なく入力されているか確認しましょう。問題なくシステム情報が収集出来ていれば、ホスト名変更前と変更後の2つのパラメータが入力されています。また、この後の比較作業で実施日時を入力する必要があるので、から、実施した日付を確認しておきましょう。
システム情報の比較¶
比較設定¶
比較名称 |
対象パラメータシート1 |
対象パラメータシート2 |
詳細設定フラグ |
備考 |
---|---|---|---|---|
システム情報の差異 |
システム情報 |
システム情報 |
False |
比較実行¶
対象ホスト を選択し対象のホストを選択します。から、システム情報の差異 比較設定 を選択し、次に次に、比較対象のパラメータシートを実施した日時をそれぞれ入力、選択します。実施した日時はから最終実行日時を確認してみてください。最後に、を押下します。そうすると画面右側に比較結果が表示されますので、そちらから先ほど変更したホスト名(ansible_nodename)の欄を確認してみましょう。すると、変更前に収集したパラメータと変更後に収集したパラメータの差異が出ているのが確認できると思います。
比較設定選択 |
ホスト選択 |
基準日時1 |
基準日時2 |
---|---|---|---|
システム情報の差異 |
admin_user |
※例→2024/08/23 15:24:09 |
※例→2024/08/23 15:31:39 |
Tip