最近有小夥伴買的騰訊雲的1核1G入門級服務器,發現部署的服務多了後,會自動停掉一些docker的的容器。
新買的騰訊雲主機沒有提供Swap分區,理由是因爲主機常常由於內存使用率太高,頻繁使用Swap,致使磁盤IO太高,服務器總體性能反而降低.
不過用戶依然能夠使用Swap文件的方式添加Swap分區。docker
先用free -m
查看當前分區狀況,swap分區顯示爲0centos
free -m服務器
[root@VM_0_2_centos ~]# free -m total used free shared buff/cache available Mem: 3789 858 1579 0 1351 2638 Swap: 0 0 0
新建一個目錄用於交換分區的文件,好比個人目錄/root/swap, 建立一個2G的文件性能
dd if=/dev/zero of=/root/swap bs=2048 count=1048576spa
[root@VM_0_2_centos ~]# dd if=/dev/zero of=/root/swap bs=2048 count=1048576 1048576+0 records in 1048576+0 records out 2147483648 bytes (2.1 GB) copied, 15.3681 s, 140 MB/s
把這個文件設置爲交換分區文件debug
mkswap /root/swap3d
[root@VM_0_2_centos ~]# mkswap /root/swap Setting up swapspace version 1, size = 2097148 KiB no label, UUID=0d63d460-a558-4a60-9a7e-94e78be2dfc5
修改文件權限爲600code
chmod 600 /root/swap內存
啓用交換分區文件部署
swapon /root/swap
設置開機自啓動,需修改修改文件/etc/fstab ,在最後添加一行 /root/swap swap swap defaults 0 0
[root@VM_0_2_centos ~]# vi /etc/fstab [root@VM_0_2_centos ~]# cat /etc/fstab UUID=4b499d76-769a-40a0-93dc-4a31a59add28 / ext4 noatime,acl,user_xattr 1 1 proc /proc proc defaults 0 0 sysfs /sys sysfs noauto 0 0 debugfs /sys/kernel/debug debugfs noauto 0 0 devpts /dev/pts devpts mode=0620,gid=5 0 0 /swap swap swap defaults 0 0 /root/swap swap swap defaults 0 0 [root@VM_0_2_centos ~]#
刪除swap分區
swapoff /root/swap rm -f /root/swap