如何启用与盐堆栈的交换?

igo*_*igo 6 ubuntu swap saltstack

如何使用盐堆栈创建和启用永久的 1GB 交换文件,该文件将在重新启动后起作用?salt.states.mount.swap不允许定义交换大小。此外,我需要定义swappiness。目前我这样做echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf

小智 8

这是我在基于 debian 的系统上使用的。这是丹的答案的改进版本。它从粒度中获取可用内存,将其乘以 2,以创建具有适当大小的交换文件。如果 /etc/fstab 不存在,它还会在 /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
Run Code Online (Sandbox Code Playgroud)


Dan*_*ite 5

我目前在生产中使用它,对我有用。

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"
Run Code Online (Sandbox Code Playgroud)