RHEL9 Ansible ユーザとグループを設定するサンプル

環境
RHEL 9.2
Ansible

操作方法
1.イベントリファイルの作成
testdevという親グループを作成し、baseという子グループを作成します

ファイル名:hosts
内容

[testdev]
dev-gw01

[base:children]
testdev

2.マスタープレイブックを作成する
ファイル名 cft.yaml
内容

---
- include: base.yml

3.グループのプレイブックを作成する
ファイル名 base.yml
内容

---
- hosts: base
  vars_files:
    - ./vars/usergroup.yml
  tasks:
    - include: ./tasks/usergroup-set.yml

4.変数定義ファイルを作成する
ファイル名 usergroup.yml
内容

usergroup:
  user:
    name: test
    group: test
    uid: xxx
    gid: xxx
    password: xxx

  group:
    name: testgroup
    gid: xxx

5.タスクファイルの作成
構築対象のサーバーの設定をタスクとして定義する。ユーザ作成とグループ作成を行う場合はuserモジュールとgroupモジュールを利用して
変数定義ファイルから設定値を取得してユーザとグループを設定する
ファイル名:usergroup-set.yml
内容

- name: グループの作成
  group: name={{usergroup.group.name}} gid={{usergroup.group.gid}}

- name: グループに参加するユーザーを追加 (wheel and usergroup)
  user: name={{usergroup.user.name}} uid={{usergroup.user.uid}} state=present password={{usergroup.user.password}} groups={{usergroup.user.group}},wheel

6.実行

シンタックステスト
ansible-playbook -i ~/xxx/common-playbook/hosts  ~/xxx/cft.yml --syntax-check

実行
ansible-playbook -i ~/xxx/common-playbook/hosts  ~/xxx/cft.yml

 

Ansible

Posted by arkgame