Skip to content

Latest commit

 

History

History
89 lines (72 loc) · 1.74 KB

File metadata and controls

89 lines (72 loc) · 1.74 KB

mrlesmithjr.mdadm

An Ansible role to install and manage mdadm raid arrays.

Requirements

  • Available unpartitioned disk devices

Role Variables

defaults/main.yml

Dependencies

None

Example Playbook

Manual device configuration

- hosts: all
  become: true
  vars:
    mdadm_arrays:
      - name: md200
        devices:
          - /dev/nvme0n1
          - /dev/nvme1n1
        filesystem: lvm
        level: 5
        state: present
        auto_detect: false  # default, can be omitted
  roles:
    - role: ansible-mdadm

Auto-detection mode

- hosts: all
  become: true
  vars:
    mdadm_arrays:
      - name: md200
        devices: []  # empty list for auto-detection
        filesystem: lvm
        level: 5
        state: present
        auto_detect: true
        min_disks: 3  # minimum number of disks required
  roles:
    - role: ansible-mdadm

Mixed configuration

- hosts: all
  become: true
  vars:
    mdadm_arrays:
      - name: md0
        devices:
          - /dev/sdb
          - /dev/sdc
        filesystem: ext4
        level: 1
        state: present
        auto_detect: false
      - name: md200
        devices: []
        filesystem: lvm
        level: 5
        state: present
        auto_detect: true
        min_disks: 3
  roles:
    - role: ansible-mdadm

Note: Auto-detection will automatically use all unused disks (not mounted, not in RAID, not in LVM, not formatted) when auto_detect: true and devices: []. Setting both auto_detect: true and defining devices will result in an error.

License

BSD

Authors

  • Larry Smith Jr.
  • Kiln: added detection of unused devices + some fixes