Как проверить, что дисковое пространство соответствует ожиданиям в анзибле?

Я пытаюсь проверить, присутствует ли место на диске, как ожидалось. (Ожидаемый размер 5G)

- name: Get Disk Size 
  shell: |
    mountresult=$(mount | grep  {{ volumeName }} | awk '{print $1}')
    multipath -l $mountresult | grep 'size=' | awk '{print $1}' | awk -F'=' '{print $2}'    
  register: mountresponse
  delegate_to: "{{ node_volume_mounted }}"

- name: Get disk size 
  set_fact:
    diskSize: "{{mountresponse.stdout}}"

- name: ensure the file size
  fail:
    msg: "{{volumeName}} size is {{diskSize}} . It should be increased to {{expectedSize}}"
  when: "diskSize != expectedSize"
  vars:
    expectedSize='5G'

Это работает, пока команда multipath возвращает размер тома как 5G. Но какое-то время возвращает размер как 5.0G . В то время мой код не работает. (Я видел, что в некоторых случаях он возвращался как 4,9 G)

Есть ли какой-нибудь стандартный способ проверить, соответствует ли размер диска ожидаемому? Эти тома монтируются iscsi SAN. Из-за этого я также не мог увидеть это через факты ansible_mounts

0 ответов

Другие вопросы по тегам