Ubuntu

如何啟用與鹽堆棧的交換?

  • July 29, 2017

如何使用鹽堆棧創建和啟用永久 1GB 交換文件,該文件將在重新啟動後工作?salt.states.mount.swap不允許定義交換大小。此外,我需要定義交換性。目前我用echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf

我目前在生產中使用它,對我有用。

community_swap_file:
 cmd.run:
   - name: |
       [ -f /.swapfile ] || dd if=/dev/zero of=/.swapfile bs=1M count=2048
       chmod 0600 /.swapfile
       mkswap /.swapfile
       echo '/.swapfile      none      swap     sw       0       0' >> /etc/fstab
       swapon -a
   - unless: file /.swapfile 2>&1 | grep -q "Linux/i386 swap"

這是我在基於 debian 的系統上使用的。這是丹答案的改進版本。它從grain中獲取可用記憶體,將其乘以2,以創建具有適當大小的交換文件。如果不存在,它還會在 /etc/fstab 中創建一個條目。

coreutils:
 pkg.installed

/swapfile:
 cmd.run:
   - name: |
       [ -f /swapfile ] || dd if=/dev/zero of=/swapfile bs=1M count={{ grains["mem_total"] * 2 }}
       chmod 0600 /swapfile
       mkswap /swapfile
       swapon -a
   - unless:
     - file /swapfile 2>&1 | grep -q "Linux/i386 swap"
 mount.swap:
   - persist: true

引用自:https://serverfault.com/questions/628531