収集・比較機能¶
作業前システム情報の収集¶
パラメータシートの作成¶
- 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名 | 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