swap
空きメモリが十分であるにもかかわらず、Ubuntu 16.04がいっぱいになった理由を理解できません。
実際に使用されているプロセスを見てみましょうswap
。
************************************
Swap's process in count 1
systemd : 1 : VmSwap: 520 kB
otrs.Daemon.pl : 21002 : VmSwap: 3324 kB
systemd-journal : 2326 : VmSwap: 2356 kB
lvmetad : 2353 : VmSwap: 8 kB
systemd-udevd : 2358 : VmSwap: 3052 kB
/usr/sbin/apach : 25162 : VmSwap: 176 kB
/usr/sbin/apach : 28879 : VmSwap: 176 kB
bash : 30064 : VmSwap: 1460 kB
/usr/sbin/apach : 34334 : VmSwap: 180 kB
otrs.Daemon.pl : 36841 : VmSwap: 3708 kB
otrs.Daemon.pl : 36847 : VmSwap: 2976 kB
/usr/sbin/apach : 39489 : VmSwap: 176 kB
/usr/sbin/apach : 39491 : VmSwap: 176 kB
/usr/sbin/apach : 39493 : VmSwap: 176 kB
/usr/sbin/apach : 39494 : VmSwap: 176 kB
/opt/otrs/bin/c : 39496 : VmSwap: 176 kB
/usr/sbin/apach : 39497 : VmSwap: 176 kB
/usr/sbin/apach : 39498 : VmSwap: 176 kB
otrs.Daemon.pl : 43266 : VmSwap: 4320 kB
sshd : 43477 : VmSwap: 12 kB
sshd : 43555 : VmSwap: 72 kB
bash : 43556 : VmSwap: 1328 kB
bash : 43577 : VmSwap: 212 kB
ldapsearch : 43623 : VmSwap: 672 kB
ldapsearch : 43625 : VmSwap: 648 kB
ldapsearch : 43741 : VmSwap: 636 kB
sshd : 44183 : VmSwap: 12 kB
sshd : 44257 : VmSwap: 48 kB
bash : 44258 : VmSwap: 1044 kB
otrs.Daemon.pl : 44373 : VmSwap: 5912 kB
otrs.Daemon.pl : 45169 : VmSwap: 4344 kB
lxcfs : 4987 : VmSwap: 2208 kB
vmtoolsd : 4991 : VmSwap: 27168 kB
cron : 5044 : VmSwap: 136 kB
snapd : 5053 : VmSwap: 4728 kB
systemd-logind : 5055 : VmSwap: 48 kB
accounts-daemon : 5057 : VmSwap: 52 kB
dbus-daemon : 5059 : VmSwap: 4 kB
rsyslogd : 5082 : VmSwap: 44 kB
otrs.Daemon.pl : 50961 : VmSwap: 4348 kB
sshd : 5141 : VmSwap: 588 kB
polkitd : 5149 : VmSwap: 4 kB
mysqld : 5153 : VmSwap: 675748 kB
mdadm : 5162 : VmSwap: 4 kB
master : 5459 : VmSwap: 360 kB
qmgr : 5462 : VmSwap: 68 kB
otrs.Daemon.pl : 57161 : VmSwap: 4324 kB
systemd : 57265 : VmSwap: 896 kB
(sd-pam) : 57274 : VmSwap: 572 kB
otrs.Daemon.pl : 57937 : VmSwap: 56068 kB
/usr/sbin/apach : 8414 : VmSwap: 176 kB
************************************
Swap's process in count 2
systemd : 1 : VmSwap: 520 kB
otrs.Daemon.pl : 21002 : VmSwap: 3324 kB
systemd-journal : 2326 : VmSwap: 2356 kB
lvmetad : 2353 : VmSwap: 8 kB
systemd-udevd : 2358 : VmSwap: 3052 kB
/usr/sbin/apach : 25162 : VmSwap: 176 kB
/usr/sbin/apach : 28879 : VmSwap: 176 kB
bash : 30064 : VmSwap: 1460 kB
/usr/sbin/apach : 34334 : VmSwap: 180 kB
otrs.Daemon.pl : 36841 : VmSwap: 3708 kB
otrs.Daemon.pl : 36847 : VmSwap: 2976 kB
/usr/sbin/apach : 39489 : VmSwap: 176 kB
/usr/sbin/apach : 39491 : VmSwap: 176 kB
/usr/sbin/apach : 39493 : VmSwap: 176 kB
/usr/sbin/apach : 39494 : VmSwap: 176 kB
/usr/sbin/apach : 39496 : VmSwap: 176 kB
/usr/sbin/apach : 39497 : VmSwap: 176 kB
/usr/sbin/apach : 39498 : VmSwap: 176 kB
otrs.Daemon.pl : 43266 : VmSwap: 4320 kB
sshd : 43477 : VmSwap: 12 kB
sshd : 43555 : VmSwap: 72 kB
bash : 43556 : VmSwap: 1328 kB
bash : 43577 : VmSwap: 212 kB
ldapsearch : 43623 : VmSwap: 672 kB
ldapsearch : 43625 : VmSwap: 648 kB
ldapsearch : 43741 : VmSwap: 636 kB
sshd : 44183 : VmSwap: 12 kB
sshd : 44257 : VmSwap: 48 kB
bash : 44258 : VmSwap: 1044 kB
otrs.Daemon.pl : 44373 : VmSwap: 5912 kB
otrs.Daemon.pl : 45169 : VmSwap: 4344 kB
lxcfs : 4987 : VmSwap: 2208 kB
vmtoolsd : 4991 : VmSwap: 27168 kB
cron : 5044 : VmSwap: 136 kB
snapd : 5053 : VmSwap: 4728 kB
systemd-logind : 5055 : VmSwap: 48 kB
accounts-daemon : 5057 : VmSwap: 52 kB
dbus-daemon : 5059 : VmSwap: 4 kB
rsyslogd : 5082 : VmSwap: 44 kB
otrs.Daemon.pl : 50961 : VmSwap: 4348 kB
sshd : 5141 : VmSwap: 588 kB
polkitd : 5149 : VmSwap: 4 kB
mysqld : 5153 : VmSwap: 675748 kB
mdadm : 5162 : VmSwap: 4 kB
master : 5459 : VmSwap: 360 kB
qmgr : 5462 : VmSwap: 68 kB
otrs.Daemon.pl : 57161 : VmSwap: 4324 kB
systemd : 57265 : VmSwap: 896 kB
(sd-pam) : 57274 : VmSwap: 572 kB
otrs.Daemon.pl : 57937 : VmSwap: 56068 kB
/usr/sbin/apach : 8414 : VmSwap: 176 kB
************************************
Swap's process in count 3
systemd : 1 : VmSwap: 520 kB
otrs.Daemon.pl : 21002 : VmSwap: 3324 kB
systemd-journal : 2326 : VmSwap: 2356 kB
lvmetad : 2353 : VmSwap: 8 kB
systemd-udevd : 2358 : VmSwap: 3052 kB
/usr/sbin/apach : 25162 : VmSwap: 176 kB
/usr/sbin/apach : 28879 : VmSwap: 176 kB
bash : 30064 : VmSwap: 1460 kB
/usr/sbin/apach : 34334 : VmSwap: 180 kB
/usr/sbin/apach : 39489 : VmSwap: 176 kB
/usr/sbin/apach : 39491 : VmSwap: 176 kB
/usr/sbin/apach : 39493 : VmSwap: 176 kB
/usr/sbin/apach : 39494 : VmSwap: 176 kB
/usr/sbin/apach : 39496 : VmSwap: 176 kB
/usr/sbin/apach : 39497 : VmSwap: 176 kB
/usr/sbin/apach : 39498 : VmSwap: 176 kB
otrs.Daemon.pl : 43266 : VmSwap: 4320 kB
sshd : 43477 : VmSwap: 12 kB
sshd : 43555 : VmSwap: 72 kB
bash : 43556 : VmSwap: 1328 kB
bash : 43577 : VmSwap: 212 kB
ldapsearch : 43623 : VmSwap: 672 kB
ldapsearch : 43625 : VmSwap: 648 kB
ldapsearch : 43741 : VmSwap: 636 kB
sshd : 44183 : VmSwap: 12 kB
sshd : 44257 : VmSwap: 48 kB
bash : 44258 : VmSwap: 1044 kB
otrs.Daemon.pl : 44373 : VmSwap: 5912 kB
otrs.Daemon.pl : 45169 : VmSwap: 4344 kB
lxcfs : 4987 : VmSwap: 2208 kB
vmtoolsd : 4991 : VmSwap: 27168 kB
cron : 5044 : VmSwap: 136 kB
snapd : 5053 : VmSwap: 4728 kB
systemd-logind : 5055 : VmSwap: 48 kB
accounts-daemon : 5057 : VmSwap: 52 kB
dbus-daemon : 5059 : VmSwap: 4 kB
rsyslogd : 5082 : VmSwap: 44 kB
otrs.Daemon.pl : 50961 : VmSwap: 4348 kB
sshd : 5141 : VmSwap: 588 kB
polkitd : 5149 : VmSwap: 4 kB
mysqld : 5153 : VmSwap: 675748 kB
mdadm : 5162 : VmSwap: 4 kB
master : 5459 : VmSwap: 360 kB
qmgr : 5462 : VmSwap: 68 kB
otrs.Daemon.pl : 57161 : VmSwap: 4324 kB
systemd : 57265 : VmSwap: 896 kB
(sd-pam) : 57274 : VmSwap: 572 kB
otrs.Daemon.pl : 57937 : VmSwap: 56068 kB
/usr/sbin/apach : 8414 : VmSwap: 176 kB
************************************
Swap's process in count 4
systemd : 1 : VmSwap: 520 kB
otrs.Daemon.pl : 21002 : VmSwap: 3324 kB
systemd-journal : 2326 : VmSwap: 2356 kB
lvmetad : 2353 : VmSwap: 8 kB
systemd-udevd : 2358 : VmSwap: 3052 kB
/usr/sbin/apach : 25162 : VmSwap: 176 kB
/usr/sbin/apach : 28879 : VmSwap: 176 kB
bash : 30064 : VmSwap: 1460 kB
/usr/sbin/apach : 34334 : VmSwap: 180 kB
/usr/sbin/apach : 39489 : VmSwap: 176 kB
/usr/sbin/apach : 39491 : VmSwap: 176 kB
/usr/sbin/apach : 39493 : VmSwap: 176 kB
/usr/sbin/apach : 39494 : VmSwap: 176 kB
/usr/sbin/apach : 39496 : VmSwap: 176 kB
/usr/sbin/apach : 39497 : VmSwap: 176 kB
/usr/sbin/apach : 39498 : VmSwap: 176 kB
otrs.Daemon.pl : 43266 : VmSwap: 4320 kB
sshd : 43477 : VmSwap: 12 kB
sshd : 43555 : VmSwap: 72 kB
bash : 43556 : VmSwap: 1328 kB
bash : 43577 : VmSwap: 212 kB
ldapsearch : 43623 : VmSwap: 672 kB
ldapsearch : 43625 : VmSwap: 648 kB
ldapsearch : 43741 : VmSwap: 636 kB
sshd : 44183 : VmSwap: 12 kB
sshd : 44257 : VmSwap: 48 kB
bash : 44258 : VmSwap: 1044 kB
otrs.Daemon.pl : 44373 : VmSwap: 5912 kB
otrs.Daemon.pl : 45169 : VmSwap: 4344 kB
lxcfs : 4987 : VmSwap: 2208 kB
vmtoolsd : 4991 : VmSwap: 27168 kB
cron : 5044 : VmSwap: 136 kB
snapd : 5053 : VmSwap: 4728 kB
systemd-logind : 5055 : VmSwap: 48 kB
accounts-daemon : 5057 : VmSwap: 52 kB
dbus-daemon : 5059 : VmSwap: 4 kB
rsyslogd : 5082 : VmSwap: 44 kB
otrs.Daemon.pl : 50961 : VmSwap: 4348 kB
sshd : 5141 : VmSwap: 588 kB
polkitd : 5149 : VmSwap: 4 kB
mysqld : 5153 : VmSwap: 675748 kB
mdadm : 5162 : VmSwap: 4 kB
master : 5459 : VmSwap: 360 kB
qmgr : 5462 : VmSwap: 68 kB
otrs.Daemon.pl : 57161 : VmSwap: 4324 kB
systemd : 57265 : VmSwap: 896 kB
(sd-pam) : 57274 : VmSwap: 572 kB
otrs.Daemon.pl : 57937 : VmSwap: 56068 kB
/usr/sbin/apach : 8414 : VmSwap: 176 kB
なぜこれが起こるのかを説明できる人はいますか?利用可能なメモリが十分な場合でも、プロセス自体を交換できますか?
編集する:
実行すると、vmstat
両方に対して0が表示されますsi
(so
出力が切り捨てられ、かなり長い間コマンドを実行してきました)。
答え1
はい、メモリが利用可能な場合でもプロセスを交換できます。これはVirtual Memory Controlの値によって制御されますswappiness
。示されているように、この値はシステムで60(多くのインストールのデフォルト)に設定されています。これRed Hat ドキュメント良い説明があります(これはすべてのLinuxに適用されます)。
交換性
システムが匿名メモリまたはページキャッシュをサポートする程度を制御する0から100までの値。値が高いほど、ファイルシステムのパフォーマンスが向上し、アクティブでないプロセスを物理メモリ内で積極的に置き換えます。値が低いほどプロセスがメモリからスワップされるのを防ぐため、通常はI / Oパフォーマンスを犠牲にして待ち時間が短縮されます。デフォルトは60です。
データベースワークロードには、より低いスワップ値を使用することをお勧めします。たとえば、Oracleデータベースの場合、Red Hatはスワップ性値10を推奨します。
より低い値(例:10)に設定するには、/etc/sysctl.conf
次のように行を編集して追加します。
vm.swappiness=10
最新バージョンの場合は、systemd
ファイルを編集/作成する必要があります/etc/sysctl.d/
。説明したようにアーチスウィキ:
注:バージョン207および21x以降、systemdはおよび
/etc/sysctl.d/*.conf
の設定のみを適用します/usr/lib/sysctl.d/*.conf
。カスタマイズした場合は、/etc/sysctl.conf
名前をに変更する必要があります/etc/sysctl.d/99-sysctl.conf
。たとえば、/etc/sysctl.d/foo
に名前を変更する必要があります/etc/sysctl.d/foo.conf
。
しかし、交換が問題になる必要はないことに注意してください。それはすべてあなたの機械が何をしているかに依存します。一つあるとても素敵で詳細な答えこの問題はAsk Ubuntuで解決されました。お読みください。基本的に、コンピュータが遅いと感じない限り、そのままにしてください。
追加資料: