ユーザー管理 (解答)

問題 (再掲)

下記のようなユーザーを Exastro IT Automation を使って管理できるようにします。
また、その際に、ユーザー管理だけではなく、ホスト名設定、パッケージ管理も併せて実施できる必要があります。
表 113 ユーザー情報

ユーザー名

ユーザーID

ログインパスワード

グループ名

wwwuser01

10001

password01

www

wwwuser02

10002

password02

www

appuser01

20001

password01

app

appuser02

20002

password02

app

パラメータ設計

本演習ではユーザーの管理方法について扱いますが、ユーザーは何らかのグループに必ず所属する必要があります。
まずは、ユーザーをパラメータシート上で管理できるようにしておきます。

グループのパラメータシート作成

グループ用のパラメータシートを作成します。
利用する Ansible Playbook は下記のPlaybookになります、下記のパラメータが管理できるようにパラメータシートを作成しましょう。
リスト 428 group.yml
---
- name: create/update group
  group:
    name: "{{ item.0 }}"
    gid: "{{ item.1 }}"
  with_together:
    - "{{ group_name }}"
    - "{{ group_id }}"
    - "{{ group_action }}"
  when: item.2 == 'present'

- name: create/update group
  group:
    name: "{{ item.0 }}"
    gid: "{{ item.1 }}"
  with_together:
    - "{{ group_name }}"
    - "{{ group_id }}"
    - "{{ group_action }}"
  when: item.2 == 'absent'
表 114 グループ設定のパラメータ

項目

説明

group_name

グループ名

group_id

グループID

action

構築時の設定
present: 作成/更新
absent: 削除
パラメータシート作成 ▶ パラメータシート定義・作成 から、パラメータシートを登録します。

Tip

必須一意制約 にチェックを入れることで、外部のパラメータシートから項目を参照できるようになります。

Tip

パラメータシート作成情報で バンドル利用 を「利用する」にチェックを入れることで、1つの設定項目に対して複数のパラメータを設定することが可能になります。
グループのパラメータシート
表 115 グループパラメータシートの設定値

設定項目

項目1設定値

項目2設定値

項目3設定値

項目の名前

グループ名

グループID

状態

項目の名前(Rest API用)

group_name

group_id

state

入力方式

文字列(単一行)

整数

プルダウン選択

最小値

(項目なし)

1000

(項目なし)

最大値

(項目なし)

(項目なし)

最大バイト数

32

(項目なし)

(項目なし)

正規表現

(項目なし)

(項目なし)

選択項目

(項目なし)

(項目なし)

入力用:状態:present-absent

参照項目

(項目なし)

(項目なし)

初期値

必須

一意制約

説明

備考

表 116 パラメータシート作成情報の設定値

項目名

設定値

項番

(自動入力)

パラメータシート名

グループ

パラメータシート名(REST)

groups

作成対象

パラメータシート(ホスト/オペレーションあり)

表示順序

4

バンドル利用

「利用する」にチェックを入れる(有効)

最終更新日時

(自動入力)

最終更新者

(自動入力)

ユーザーのパラメータシート作成

ユーザー用のパラメータシートを作成します。
利用する Ansible Playbook は下記のPlaybookになります、下記のパラメータが管理できるようにパラメータシートを作成しましょう。
リスト 429 user.yml
---
- name: create user
  user:
    name: "{{ item.0 }}"
    uid: "{{ item.1 }}"
    group: "{{ item.2 }}"
    comment: "{{ item.3 }}"
    home: "{{ item.4 }}"
    shell: "{{ item.5 }}"
    password: "{{ item.6 | password_hash('sha512') }}"
  with_together:
    - "{{ user_name }}"
    - "{{ user_id }}"
    - "{{ group }}"
    - "{{ comment }}"
    - "{{ home_dir }}"
    - "{{ login_shell }}"
    - "{{ password }}"
    - "{{ user_action }}"
    - "{{ password_apply }}"
  when: item.7 == 'present' and password_apply

- name: create user
  user:
    name: "{{ item.0 }}"
    uid: "{{ item.1 }}"
    group: "{{ item.2 }}"
    comment: "{{ item.3 }}"
    home: "{{ item.4 }}"
    shell: "{{ item.5 }}"
  with_together:
    - "{{ user_name }}"
    - "{{ user_id }}"
    - "{{ group }}"
    - "{{ comment }}"
    - "{{ home_dir }}"
    - "{{ login_shell }}"
    - "{{ user_action }}"
    - "{{ password_apply }}"
  when: item.6 == 'present' and not password_apply

- name: delete user
  user:
    state: absent
    name: "{{ item.0 }}"
    remove: 'yes'
  with_together:
    - "{{ user_name }}"
    - "{{ user_action }}"
  when: item.1 == 'absent'
表 117 ユーザー設定のパラメータ

項目

説明

user_name

ユーザー名

user_id

ユーザーID

group_id

グループID

comment

コメント

home_dir

ホームディレクトリ

login_shell

ログインシェル名

password

パスワード

action

構築時の設定
present: 作成/更新
absent: 削除

password_apply

構築時のパスワード設定の有無
true: パスワードの設定を行う
false: パスワードの設定を行わない
パラメータシート作成 ▶ パラメータシート定義・作成 から、パラメータシートを登録します。

Tip

入力方式プルダウン選択 に設定することで、グループのパラメータシート作成 で登録したデータシートを参照できるようになります。
ユーザーのパラメータシートの作成1
表 118 パラメータ項目の設定値(1/2)

設定項目

項目1設定値

項目2設定値

項目3設定値

項目4設定値

項目5設定値

項目の名前

ユーザー名

ユーザーID

パスワード

パスワード設定

グループ

項目の名前(Rest API用)

user_name

user_id

password

password_apply

group

入力方式

文字列(単一行)

整数

パスワード

プルダウン選択

プルダウン選択

最大バイト数

32

(項目なし)

32

(項目なし)

(項目なし)

正規表現

(項目なし)

(項目なし)

(項目なし)

(項目なし)

最小値

(項目なし)

1000

(項目なし)

(項目なし)

(項目なし)

最大値

(項目なし)

(項目なし)

(項目なし)

(項目なし)

選択項目

(項目なし)

(項目なし)

(項目なし)

パラメータシート作成:選択2:True-False

入力用:グループ:グループ名

参照項目

(項目なし)

(項目なし)

(項目なし)

初期値

(項目なし)

False

必須

一意制約

説明

備考

ユーザーのパラメータシート作成_2
表 119 パラメータ項目の設定値(2/2)

設定項目

項目6設定値

項目7設定値

項目8設定値

項目9設定値

項目の名前

ホームディレクトリ

ログインシェル

コメント

状態

項目の名前(Rest API用)

home_dir

login_shell

comment

state

入力方式

文字列(単一行)

文字列(単一行)

文字列(単一行)

プルダウン選択

最大バイト数

128

32

128

(項目なし)

正規表現

(項目なし)

最小値

(項目なし)

(項目なし)

(項目なし)

(項目なし)

最大値

(項目なし)

(項目なし)

(項目なし)

(項目なし)

選択項目

(項目なし)

(項目なし)

(項目なし)

入力用:状態:present-absent

参照項目

(項目なし)

(項目なし)

(項目なし)

初期値

/bin/bash

必須

一意制約

説明

備考

表 120 パラメータシート作成情報の設定値

項目名

設定値

項番

(自動入力)

パラメータシート名

ユーザー

パラメータシート名(REST)

users

作成対象

パラメータシート(ホスト/オペレーションあり)

表示順序

3

バンドル利用

「利用する」にチェックを入れる(有効)

最終更新日時

(自動入力)

最終更新者

(自動入力)

作業対象の登録

作業実施を行う対象機器の登録を行います。

機器登録

作業対象となるサーバーは 前のシナリオ で登録した web01 を利用するため、作業は不要です。

作業手順の登録

グループを作成・削除してから、ユーザーを作成・削除する順番で Ansible Playbook が実行されるように Movement を設定します。
これまでのシナリオでは、1つの Movement ごとに1つの Ansible Playbook を紐付けていましたが、今回は 1つの Movement に対して、グループ管理とユーザー管理が行えるように設定します。

注釈

グループ管理とユーザー管理それぞれに対して、Movement を1つずつ作成しても同じように動作させることができます。

Movement 登録

Ansible-Legacy ▶ Movement一覧 から、ユーザー管理のための Movement を登録します。
Movement登録
表 121 Movement 情報の設定値

Movement名

Ansible利用情報

ホスト指定形式

ヘッダーセクション

ユーザー管理

IP

※ヘッダーセクションを参照

リスト 430 ヘッダーセクション
- hosts: all
  remote_user: "{{ __loginuser__ }}"
  gather_facts: no
  become: yes

Ansible Playbook 登録

本シナリオでは、 以下のPlaybookを利用します。以下をコピーして、yml形式でgroup.ymlとuser.ymlを作成してください。
リスト 431 group.yml
---
- name: create/update group
  group:
    name: "{{ item.0 }}"
    gid: "{{ item.1 }}"
  with_together:
    - "{{ group_name }}"
    - "{{ group_id }}"
    - "{{ group_action }}"
  when: item.2 == 'present'

- name: create/update group
  group:
    name: "{{ item.0 }}"
    gid: "{{ item.1 }}"
  with_together:
    - "{{ group_name }}"
    - "{{ group_id }}"
    - "{{ group_action }}"
  when: item.2 == 'absent'
リスト 432 user.yml
---
- name: create user
  user:
    name: "{{ item.0 }}"
    uid: "{{ item.1 }}"
    group: "{{ item.2 }}"
    comment: "{{ item.3 }}"
    home: "{{ item.4 }}"
    shell: "{{ item.5 }}"
    password: "{{ item.6 | password_hash('sha512') }}"
  with_together:
    - "{{ user_name }}"
    - "{{ user_id }}"
    - "{{ group }}"
    - "{{ comment }}"
    - "{{ home_dir }}"
    - "{{ login_shell }}"
    - "{{ password }}"
    - "{{ user_action }}"
    - "{{ password_apply }}"
  when: item.7 == 'present' and password_apply

- name: create user
  user:
    name: "{{ item.0 }}"
    uid: "{{ item.1 }}"
    group: "{{ item.2 }}"
    comment: "{{ item.3 }}"
    home: "{{ item.4 }}"
    shell: "{{ item.5 }}"
  with_together:
    - "{{ user_name }}"
    - "{{ user_id }}"
    - "{{ group }}"
    - "{{ comment }}"
    - "{{ home_dir }}"
    - "{{ login_shell }}"
    - "{{ user_action }}"
    - "{{ password_apply }}"
  when: item.6 == 'present' and not password_apply

- name: delete user
  user:
    state: absent
    name: "{{ item.0 }}"
    remove: 'yes'
  with_together:
    - "{{ user_name }}"
    - "{{ user_action }}"
  when: item.1 == 'absent'
Ansible-Legacy ▶ Playbook素材集 から、上記のPlaybookを登録します。
Ansible-Playbook登録
表 122 Ansible Playbook 情報の登録

Playbook素材名

Playbook素材

group

group.yml

user

user.yml

Movement と Ansible Playbook の紐付け

Ansible-Legacy ▶ Movement-Playbook紐付 から、Movement と Ansible Playbook の紐付けを行います。
本シナリオでは、 group.yml および user.ymlを利用します。
ユーザーを作成する際には、先にグループを指定する必要があるため下記の順序でインクルードする必要があります。
MovementとAnsible Playbook の紐づけ
表 123 Movement-Playbook紐付け情報の登録

Movement名

Playbook素材

インクルード順序

ユーザー管理

group.yml

1

ユーザー管理

user.yml

2

代入値自動登録設定

Ansible-Legacy ▶ 代入値自動登録設定 から、パラメータシートの項目と Ansible Playbook の変数の紐付けを行います。
大量のデータを一度に登録するような場合には、全件ダウンロード・ファイル一括登録を使って、ファイルからデータを投入する方法が適切です。
Ansible-Legacy ▶ 代入値自動登録設定 ▶ 全件ダウンロード・ファイル一括登録 から、新規登録用ファイルをダウンロードします。ダウンロードしたファイルを編集し、ファイル一括登録にてファイルを登録すると代入値自動登録設定が簡単に行うことが出来ます。
グループの代入値自動登録設定
表 124 グループの代入値自動登録設定の設定値

パラメータシート(From)

登録方式

Movement名

IaC変数(To)

メニューグループ:メニュー:項目

代入順序

Movement名:変数名

代入順序

代入値自動登録用:グループ:グループ名

1

Value型

ユーザー管理

ユーザー管理:group_name

1

代入値自動登録用:グループ:グループID

1

Value型

ユーザー管理

ユーザー管理:group_id

1

代入値自動登録用:グループ:状態

1

Value型

ユーザー管理

ユーザー管理:group_action

1

代入値自動登録用:グループ:グループ名

2

Value型

ユーザー管理

ユーザー管理:group_name

2

代入値自動登録用:グループ:グループID

2

Value型

ユーザー管理

ユーザー管理:group_id

2

代入値自動登録用:グループ:状態

2

Value型

ユーザー管理

ユーザー管理:group_action

2

...

...

...

...

...

...

代入値自動登録用:グループ:グループ名

5

Value型

ユーザー管理

ユーザー管理:group_name

5

代入値自動登録用:グループ:グループID

5

Value型

ユーザー管理

ユーザー管理:group_id

5

代入値自動登録用:グループ:状態

5

Value型

ユーザー管理

ユーザー管理:group_action

5

ユーザーの代入値自動登録設定
ユーザーの代入値自動登録設定
ユーザーの代入値自動登録設定
ユーザーの代入値自動登録設定
ユーザーの代入値自動登録設定
表 125 ユーザーの代入値自動登録設定の設定値

パラメータシート(From)

登録方式

Movement名

IaC変数(To)

メニューグループ:メニュー:項目

代入順序

Movement名:変数名

代入順序

代入値自動登録用:ユーザー:ユーザー名

1

Value型

ユーザー管理

ユーザー管理:user_name

1

代入値自動登録用:ユーザー:ユーザーID

1

Value型

ユーザー管理

ユーザー管理:user_id

1

代入値自動登録用:ユーザー:パスワード

1

Value型

ユーザー管理

ユーザー管理:password

1

代入値自動登録用:ユーザー:パスワード設定

1

Value型

ユーザー管理

ユーザー管理:password_apply

1

代入値自動登録用:ユーザー:グループ

1

Value型

ユーザー管理

ユーザー管理:group

1

代入値自動登録用:ユーザー:ホームディレクトリ

1

Value型

ユーザー管理

ユーザー管理:home_dir

1

代入値自動登録用:ユーザー:ログインシェル

1

Value型

ユーザー管理

ユーザー管理:login_shell

1

代入値自動登録用:ユーザー:コメント

1

Value型

ユーザー管理

ユーザー管理:comment

1

代入値自動登録用:ユーザー:状態

1

Value型

ユーザー管理

ユーザー管理:user_action

1

代入値自動登録用:ユーザー:ユーザー名

2

Value型

ユーザー管理

ユーザー管理:user_name

2

代入値自動登録用:ユーザー:ユーザーID

2

Value型

ユーザー管理

ユーザー管理:user_id

2

代入値自動登録用:ユーザー:パスワード

2

Value型

ユーザー管理

ユーザー管理:password

2

代入値自動登録用:ユーザー:パスワード設定

2

Value型

ユーザー管理

ユーザー管理:password_apply

2

代入値自動登録用:ユーザー:グループ

2

Value型

ユーザー管理

ユーザー管理:group

2

代入値自動登録用:ユーザー:ホームディレクトリ

2

Value型

ユーザー管理

ユーザー管理:home_dir

2

代入値自動登録用:ユーザー:ログインシェル

2

Value型

ユーザー管理

ユーザー管理:login_shell

2

代入値自動登録用:ユーザー:コメント

2

Value型

ユーザー管理

ユーザー管理:comment

2

代入値自動登録用:ユーザー:状態

2

Value型

ユーザー管理

ユーザー管理:user_action

2

代入値自動登録用:ユーザー:ユーザー名

3

Value型

ユーザー管理

ユーザー管理:user_name

3

代入値自動登録用:ユーザー:ユーザーID

3

Value型

ユーザー管理

ユーザー管理:user_id

3

代入値自動登録用:ユーザー:パスワード

3

Value型

ユーザー管理

ユーザー管理:password

3

代入値自動登録用:ユーザー:パスワード設定

3

Value型

ユーザー管理

ユーザー管理:password_apply

3

代入値自動登録用:ユーザー:グループ

3

Value型

ユーザー管理

ユーザー管理:group

3

代入値自動登録用:ユーザー:ホームディレクトリ

3

Value型

ユーザー管理

ユーザー管理:home_dir

3

代入値自動登録用:ユーザー:ログインシェル

3

Value型

ユーザー管理

ユーザー管理:login_shell

3

代入値自動登録用:ユーザー:コメント

3

Value型

ユーザー管理

ユーザー管理:comment

3

代入値自動登録用:ユーザー:状態

3

Value型

ユーザー管理

ユーザー管理:user_action

3

代入値自動登録用:ユーザー:ユーザー名

4

Value型

ユーザー管理

ユーザー管理:user_name

4

代入値自動登録用:ユーザー:ユーザーID

4

Value型

ユーザー管理

ユーザー管理:user_id

4

代入値自動登録用:ユーザー:パスワード

4

Value型

ユーザー管理

ユーザー管理:password

4

代入値自動登録用:ユーザー:パスワード設定

4

Value型

ユーザー管理

ユーザー管理:password_apply

4

代入値自動登録用:ユーザー:グループ

4

Value型

ユーザー管理

ユーザー管理:group

4

代入値自動登録用:ユーザー:ホームディレクトリ

4

Value型

ユーザー管理

ユーザー管理:home_dir

4

代入値自動登録用:ユーザー:ログインシェル

4

Value型

ユーザー管理

ユーザー管理:login_shell

4

代入値自動登録用:ユーザー:コメント

4

Value型

ユーザー管理

ユーザー管理:comment

4

代入値自動登録用:ユーザー:状態

4

Value型

ユーザー管理

ユーザー管理:user_action

4

...

...

...

...

...

...

代入値自動登録用:ユーザー:ユーザー名

10

Value型

ユーザー管理

ユーザー管理:user_name

10

代入値自動登録用:ユーザー:ユーザーID

10

Value型

ユーザー管理

ユーザー管理:user_id

10

代入値自動登録用:ユーザー:パスワード

10

Value型

ユーザー管理

ユーザー管理:password

10

代入値自動登録用:ユーザー:パスワード設定

10

Value型

ユーザー管理

ユーザー管理:password_apply

10

代入値自動登録用:ユーザー:グループ

10

Value型

ユーザー管理

ユーザー管理:group

10

代入値自動登録用:ユーザー:ホームディレクトリ

10

Value型

ユーザー管理

ユーザー管理:home_dir

10

代入値自動登録用:ユーザー:ログインシェル

10

Value型

ユーザー管理

ユーザー管理:login_shell

10

代入値自動登録用:ユーザー:コメント

10

Value型

ユーザー管理

ユーザー管理:comment

10

代入値自動登録用:ユーザー:状態

10

Value型

ユーザー管理

ユーザー管理:user_action

10

機器登録

作業対象となるサーバーは 前のシナリオ で登録した web01 を利用するため、作業は不要です。

ユーザー追加作業の実施

Movement を実行してユーザーとグループを追加します。

作業概要の作成

まずは作業計画を立てましょう。
表 126 作業の方針

作業実施日時

2024/04/04 12:00:00

作業対象

web01(RHEL8)

作業内容

Webサーバーへユーザー追加作業

作業概要登録

基本コンソール ▶ オペレーション一覧 から、作業実施日時や作業名を登録します。
Conductor作業実行
表 127 オペレーション登録内容

オペレーション名

実施予定日時

Webサーバーへユーザー追加作業

2024/04/04 12:00:00

パラメータ設定

入力用 ▶ グループ から、グループに対するパラメータを登録します。
グループのパラメータ登録
表 128 グループパラメータの設定値

ホスト名

オペレーション

代入順序

パラメータ

オペレーション名

グループ名

グループID

状態

web01

2023/04/04 12:00:00_Webサーバーへユーザー追加作業

1

www

10001

present

web01

2023/04/04 12:00:00_Webサーバーへユーザー追加作業

2

app

10002

present

入力用 ▶ ユーザー から、ユーザーに対するパラメータを登録します。
ユーザのパラメータ登録
ユーザのパラメータ登録
表 129 ユーザーパラメータの設定値

ホスト名

オペレーション

代入順序

パラメータ

オペレーション名

ユーザー名

ユーザーID

パスワード

パスワード設定

グループ

ホームディレクトリ

ログインシェル

コメント

状態

web01

2024/04/04 12:00:00_Webサーバーへユーザー追加作業

1

wwwuser01

10001

password01

True

www

/home/wwwuser01

/bin/bash

Web server maintainer

present

web01

2024/04/04 12:00:00_Webサーバーへユーザー追加作業

2

wwwuser02

10002

password02

True

www

/home/wwwuser02

/bin/bash

Web server maintainer

present

web01

2024/04/04 12:00:00_Webサーバーへユーザー追加作業

3

appuser01

20001

password01

True

app

/home/appuser01

/bin/bash

Application server maintainer

present

web01

2024/04/04 12:00:00_Webサーバーへユーザー追加作業

4

appuser02

20002

password02

True

app

/home/appuser02

/bin/bash

Application server maintainer

present

作業実行

  1. 事前確認

    現在のサーバーの状態を確認しましょう。
    グループ一覧を確認します。
    リスト 433 コマンド
    # グループ一覧の取得
    cat /etc/group|grep -E "www|app"
    
    リスト 434 実行結果
    # 何も表示されない
    
    ユーザー一覧を確認します。
    リスト 435 コマンド
    # ユーザー一覧の取得
    cat /etc/passwd|grep -E "www|app"
    
    リスト 436 実行結果
    # 何も表示されない
    
  2. 作業実行

    Ansible-Legacy ▶ 作業実行 から、ユーザー管理 Movement を選択し、 作業実行 を押下します。
    次に、作業実行設定 で、オペレーションに Webサーバーへユーザー追加作業 を選択し、作業実行 を押下します。
    作業状態確認 画面が開き、実行が完了した後に、ステータスが「完了」になったことを確認します。
作業実行
  1. 事後確認

    再度サーバーに下記のグループとユーザーが設定されていることを確認しましょう。
    グループ一覧を確認します。
    リスト 437 コマンド
    # グループ一覧の取得
    cat /etc/group|grep -E "app|www"
    
    リスト 438 実行結果
    www:x:10001:
    app:x:10002:
    
    ユーザー一覧を確認します。
    リスト 439 コマンド
    # ユーザー一覧の取得
    cat /etc/passwd|grep -E "app|www"
    
    リスト 440 実行結果
    wwwuser01:x:10001:10001:Web server mainterner:/home/wwwuser01:/bin/bash
    wwwuser02:x:10002:10001:Web server mainterner:/home/wwwuser02:/bin/bash
    appuser01:x:20001:10002:Application server mainterner:/home/appuser01:/bin/bash
    appuser02:x:20002:10002:Application server mainterner:/home/appuser02:/bin/bash
    

(参考) 既存のジョブフローへの追加

本演習では、ジョブフローを利用せずに Movement から直接ユーザー設定作業を実施しましたが、当然ジョブフローの利用も可能です。
ジョブフローシナリオまでに行ったサーバー構築の一連の作業の中に本演習で作成した Movement を組み込むことで、ホスト名登録、パッケージ導入、ユーザー登録といった一連の作業フローを組み立てることができます。
この場合の作業の流れは、
  1. ジョブフローの作成

  2. オペレーション登録

  3. ホスト名のパラメータ登録 (パラメータ変更なし)

  4. パッケージのパラメータ登録 (パラメータ変更なし)

  5. グループのパラメータ登録

  6. ユーザーのパラメータ登録

  7. ジョブフロー実行

となります。
しかし、Exastro IT Automation では、オペレーションと機器の組み合わせごとにパラメータを登録する必要があるため、今回のように、グループとユーザーのみの設定にも関わらず、それ以外のホスト名やパッケージといったパラメータを設定をしなげればなりません。
このような場合に個別オペレーションを使うことで、Movement ごとにオペレーションを設定することができます。
ただし、個別オペレーションを使った場合、実行時のオペレーションとは異なるオペレーションによりパラメータが管理されるため、運用上パラメータの見通しが悪くなることもあります。

ジョブフローの編集と実行 (失敗例)

Conductor ▶ Conductor一覧 から、サーバー構築詳細 を押下し、ジョブフローを編集します。
1. 画面上部の  編集 を押下し、更新モードに移行します。
2. 右下のペインに、作成した ユーザー管理 Movement があるので、これを画面中央にドラッグアンドドロップします。
3. 各 Mode 間を下記の様に再接続します。
表 130 オブジェクト間の接続

OUT

IN

Start

ホスト名設定

ホスト名設定

パッケージ管理

パッケージ管理

ユーザー管理

ユーザー管理

End

4. 画面上部にある、  更新 を押下します。
5. Conductor ▶ Conductor編集/作業実行 から、 選択 を押下します。
6. サーバー構築 Conductor を選択し、選択決定 を押下します。
7. オペレーションに Webサーバーへユーザー追加作業 を選択し、作業実行 を押下します。
実行失敗
Conductor作業確認 画面が開き、ホスト名設定の Movement が ERROR となり想定外エラーになるはずです。
これは、Webサーバーへユーザー追加作業 に紐づくホスト名のパラメータがないことにより起こる動作です。

ジョブフローの編集と実行 (成功例)

Conductor ▶ Conductor一覧 から、サーバー構築詳細 を押下し、再度ジョブフローを編集します。
1. 画面上部の  編集 を押下し、更新モードに移行します。
2. 右下のペインに、作成した ユーザー管理 Movement があるので、これを画面中央にドラッグアンドドロップします。
3. 各 Mode に対して下記の様に個別オペレーションを設定します。
表 131 個別オペレーション設定

Movement

オペレーション名

ホスト名設定

RHEL8のホスト名変更作業

パッケージ管理

RHEL8のパッケージ管理

ユーザー管理

Webサーバーへユーザー追加作業

4. 画面上部にある、  更新 を押下します。
5. Conductor ▶ Conductor編集/作業実行 から、 選択 を押下します。
6. サーバー構築 Conductor を選択し、選択決定 を押下します。
7. オペレーションに Webサーバーへユーザー追加作業 を選択し、作業実行 を押下します。
実行成功
Conductor作業確認 画面が開き、実行が完了した後に、全ての Movement のステータスが「Done」になったことを確認します。

まとめ

本シナリオでは、これまでのシナリオの確認のために、演習課題を実施しました。
また Conductor のパラメータ連携の1つの手段として、個別オペレーションについて紹介をしました。
より詳細な情報を知りたい場合は、マニュアル を参照してください。