LinuxでAnsibleリセットスワップ可能

LinuxでAnsibleリセットスワップ可能

私は最初にAnsibleに触れ、次のコマンドでansibleを使用するのに問題があります。

ansible host -a "/sbin/swapoff -a && /sbin/swapon -a"

これだけ効果があります。

ansible host -a "/sbin/swapoff -a
ansible host -a "/sbin/swapon -a

プレイブックを作ろうと思っています。おそらく次のように始めます。

- name: Turn off swap
  shell : "swapoff -a"

- name: Turn on swap
  shell : "swapon -a"

私の考えではスワップ空間のリセット条件付きスワップ使用スペースが次の場合にのみ大きい比較する100MB。これは可能ですか?

助けてくれてありがとう

ベストアンサー1

使用されたスワップ領域が100 MBを超えるとスワップ領域をリセットする方法

これを行う方法はいくつかあります。これはいくつかの基本的なAnsible概念を紹介する方法です。

まず、システムからスワップ領域を取得します。

- name: Grab the swap space used (in megabytes)
  shell: free -m | grep Swap | awk '{print $2}'
  register: swap_used

これにより、swap_spaceがしきい値より大きい場合にのみスワップがオンまたはオフになります。

- name: Turn off swap
  shell: "swapoff -a"
  when: (swap_used.stdout_lines[0] | int) > 100

- name: Turn on swap
  shell : "swapon -a"
  when: (swap_used.stdout_lines[0] | int) > 100

おすすめ記事