reboot

- name: restart machine
  hosts: all
  tasks:
  - name: Reboot
    ansible.builtin.reboot: reboot_timeout=600
    become: true
 
  - name: Ping Connection
    ansible.builtin.ping:

ユーザにwheelグループを与える

sudoさせるために 「/etc/sudoers」で「%wheel ALL=(ALL) ALL」が有効なら

- name: add sub-groups
  hosts: all
  tasks:
   - name: add wheel group
     ansible.builtin.user:
       name: illya
       append: true
       groups: wheel

パスワード変更

ymlに記載するパスワードは暗号化された文字列が必要で、それは「mkpasswd」で作れる 「dnf install mkpasswd」
暗号化パスワードは下記のようにして作れる

[illya@ansible ~]$ mkpasswd --method=sha-512
Password:      <-- 文字列を入力
$6$tveNM6usjLPC.LXd$qZ39A8BfNI08g5uB3k454h85GzVfEEUgSnqS5HflQtXqETFv75wNALEif.Ag50PWtbJ5Mz7MyWBkJ5JxKsvDe/   <--- 作られた文字列

この文字列を組み込んで使う

- name: password change
  hosts: all
  tasks:
   - name: user illya's password change
     ansible.builtin.user:
       name: illya
       password: $6$tveNM6usjLPC.LXd$qZ39A8BfNI08g5uB3k454h85GzVfEEUgSnqS5HflQtXqETFv75wNALEif.Ag50PWtbJ5Mz7MyWBkJ5JxKsvDe/

アカウントロック

sudoできるローカルユーザがあるなら、rootアカウントのロックもいいのかも.

- name: account rock
  hosts: all
  tasks:
   - name: root account rock
     ansible.builtin.user:
       name: root
       password_lock: true

chronyのインストールと設定と再起動

- name: modify etc/profile
  hosts: all
  tasks:
    - name: install chrony
      yum:
        name: chrony
        state: latest
 
    - name: change chrony.conf
      copy:
        dest: /etc/chrony.conf
        content: |
          server c.sybyl.local iburst
          sourcedir /run/chrony-dhcp
          driftfile /var/lib/chrony/drift
          makestep 1.0 3
          rtcsync
          keyfile /etc/chrony.keys
          ntsdumpdir /var/lib/chrony
          leapsectz right/UTC
          logdir /var/log/chrony
 
    - name: restart chrony
      systemd:
        name: chronyd.service
        state: restarted
        daemon_reload: yes
        enabled: yes

これを「mod-chrony-ntp.yml」として

ansible-playbook -i hosts mod-chrony-ntp.yml --syntax-check
ansible-playbook -i hosts mod-chrony-ntp.yml --user root --check
ansible-playbook -i hosts mod-chrony-ntp.yml --user root

/etc/profileに「export HISTTIMEFORMAT='%Y/%m/%d %H:%M:%S '」を追加

- name: modify etc/profile
  hosts: all
  tasks:
    - lineinfile: dest=/etc/profile line="export HISTTIMEFORMAT='%Y/%m/%d %H:%M:%S '"

fstabの修正

---
- name: modify etc/fstab
  hosts: webserver
  tasks:
    - blockinfile:
        dest: /etc/fstab
        content: |
          nfs:/home /home nfs rw,hard,intr 0 0

ユーザ追加

- name: create user
  hosts: all
  tasks:
    - name: groupadd
      group:
        name: munge
        gid: 5001
    - name: useradd
      user:
        name: munge
        uid: 5001
        group: munge
        shell: /bin/bash
        create_home: false

modulefilesの参照先を追加したい

事前に「environment-modules」パッケージが入っていることが必要ですけど

- hosts:  all
  # mofulesfiles add /home/Common/modulefiles
  #
  tasks:
  # edit /usr/share/Modules/init/.modulespath
  #
  - name: append '/home/Common/modulefiles' to /usr/share/Modules/init/.modulespath
    blockinfile:
       dest: /usr/share/Modules/init/.modulespath
       block: |
          /home/Common/modulefiles

これを「modulefiles.yml」として

ansible-playbook -i g00, --user root ./modulefiles.yml

とかで実施すると、g00マシンにansibleが適用される

yum packageをインストール

例えば、openmpi3なら

- hosts:all
  tasks:
  # yum install openmpi3:
  - name: install openmpi3 and openmpi3-devel
    yum:  name=openmpi3-devel state=latest

run:

ansible-playbook -i em01, --user root  openmpi3.yml
最新の60件
2024-05-21 2024-05-16 2024-04-26 2024-04-19 2024-04-18 2024-04-15 2024-04-11 2024-04-06 2024-04-05 2024-03-30 2024-03-29 2024-03-19 2024-03-17 2024-03-15 2024-03-06 2024-03-05 2024-03-03 2024-02-23 2024-02-22 2024-02-21 2024-02-20
  • Ansible/Playbook/sample
2024-02-19 2024-02-18 2024-02-17 2024-02-13 2024-02-12 2024-02-09 2024-02-04 2024-02-03 2024-01-31 2024-01-30 2024-01-29 2024-01-28 2024-01-22 2024-01-16 2024-01-13 2024-01-09 2024-01-08 2024-01-07 2024-01-03 2023-12-22 2023-12-17

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-02-20 (火) 04:42:16