头图
- hosts: 1.1.1.1
  gather_facts: no
  tasks:
    - name: Collect only facts about hardware
      setup:
        gather_subset:
          - 'hardware'

    - name: ensure disk at least 10% free space
      assert:
        that:
          - mount.size_available > mount.size_total|float * 0.1
        fail_msg: "Disk avail: {{(mount.size_available/1000000000.0 )| round(1,'common') }}GB    Disk total: {{(mount.size_total / 1000000000.0) | round(1,'common') }}GB    Disk space is near full!!! "
        success_msg: "Disk avail: {{(mount.size_available/1000000000.0 )| round(1,'common') }}GB    Disk total: {{(mount.size_total / 1000000000.0) | round(1,'common') }}GB"
      vars:
        mount: "{{ ansible_mounts | selectattr('device', 'equalto', '/dev/vdb1') | list | first }}"

# https://gist.github.com/mahemoff/07c0c3427aa3eb3c0abc07f76fc68279
# https://gist.github.com/goodc0re/cbaffab5674cc9324ecb591ab350e564
# https://stackoverflow.com/questions/26981907/using-ansible-to-manage-disk-space

如果磁盘空间不足10%,运行结果如下:


shooter
82 声望1 粉丝