Ubuntuサーバを運用中、実メモリに余裕があるにもかかわらずスワップアウトが出ている事象を確認。
これを変更してみます。
環境
- Ubuntu 20.04
- メモリ4GB
- スワップ6GB
事象と設定変更
現状確認
- メモリ使用量の確認
free -h
- 自分の環境の確認
total used free shared buff/cache available
Mem: 3.8Gi 1.8Gi 694Mi 176Mi 1.3Gi 1.6Gi
Swap: 6.0Gi 6.0Mi 6.0Gi
- swappiness確認
cat /proc/sys/vm/swappiness
60
を確認しました。
設定変更
- 参考:
- 設定ファイルバックアップ
sudo cp -pi /etc/sysctl.conf /path/to/backup/directory/systtl.conf.$(date +%Y%m%d)
任意のバックアップディレクトリを指定します。
- バックアップ確認
diff -u /path/to/backup/directory/systtl.conf.$(date +%Y%m%d) /etc/sysctl.conf
差分がなければ(エラーなく実行できれば)バックアップ成功です。
- sedによるファイル追記
sudo sed -i '$ a\vm.swappiness = 10' /etc/sysctl.conf
上記の参考サイトを元に、swappinessを10に指定します
- 設定変更確認
diff -u /path/to/backup/directory/systtl.conf.$(date +%Y%m%d) /etc/sysctl.conf
- 差分
+vm.swappiness = 10
- 設定反映
sudo sysctl -p
vm.swappiness = 10
と結果が返ってくることを確認します。
設定反映確認
cat /proc/sys/vm/swappiness
10
に変更されていることを確認します。
まずはこの値で様子を見てみようと思います。