【波斯猫备忘录】我试用了AWS免费套餐!正在添加交换空间

你好!
我是井上,Beyond Shikoku 办公室的波斯猫。
这次我在自己的 AWS 实例上创建了一个交换区,所以
这篇博文就以波斯猫的口吻写给波斯猫的备忘录的形式呈现。
希望对大家有所帮助!(*'ω' *)
SWAP(交换)功能是指当内存不足时,将数据临时移动到磁盘进行存储。
换出(swap-out)机制是将一部分内存数据保存到磁盘。
换入(swap-in)则是将换出的数据返回到内存的过程。
内存可以比作电脑的工作空间。
如果工作空间狭小,工作效率就会降低,
因为你需要将暂时不用的东西收起来,取出需要的东西。
硬盘就像电脑工作空间里的抽屉。
交换空间的使用方式类似于内存,它会让你感觉硬盘
空间比实际更大。
然而,使用硬盘执行任务的速度比使用内存要慢。
因此,使用交换空间会降低电脑的运行速度。
为什么使用交换空间会降低电脑的运行速度呢?
首先,CPU 进行计算所需的数据必须始终加载到主内存中。
在狭小的工作空间里工作时,你别无选择,只能将数据暂时放入“抽屉”中,因此你会
更频繁地将数据放入抽屉,从而增加交换空间的使用。
此外,你还需要将需要使用的数据从抽屉中取出并放到桌面上,因此你会更频繁地从抽屉中取出数据。
你频繁地将数据放入交换分区(换出)和取出交换分区(换入)。
这种频繁的换出和换入操作称为抖动。
交换操作的处理速度比内存操作慢,因此
交换分区使用量的增加会降低计算机的性能。
以下是导致交换操作的可能原因:
① 内存不足。②
内存碎片化严重,以至于无法分配大块内存。
创建交换区域
[root@test-aws-harukainoue var]# free -m 总计 已用 可用 共享 缓冲区/缓存 可用 内存:983 226 75 0 681 596 交换空间:0 0 0
默认情况下,可以看到没有交换空间,只使用了内存。
让我们开始创建交换空间吧!
首先,我们将创建一个交换文件用作内存。
我将在 /var 目录下创建一个名为“swapfile”的目录,并在其中创建一个名为“swap”的文件。
[root@test-aws-harukainoue var]# mkdir 交换文件 [root@test-aws-harukainoue var]# ls -altr drwxr-xr-x 2 root root 6 Feb 2 04:52 交换文件 [root@test-aws-harukainoue var]# cd 交换文件 [root@test-aws-harukainoue 交换文件]# pwd /var/swapfile [root@test-aws-harukainoue swapfile]# dd if=/dev/zero of=/var/swapfile/swap bs=1M count=1024 1024+0 条记录中的 1024+0 条记录复制了 1073741824 字节 (1.1 GB),13.6114 秒,78.9 MB/s [root@test-aws-harukainoue交换文件]# ls -altr -rw-r--r-- 1 root root 1073741824 Feb 11 08:40 swap [root@test-aws-harukainoue swapfile]# chmod 600 swap [root@test-aws-harukainoue swapfile]# ls -altr -rw------- 1 root root 1073741824 Feb 11 08:40 swap
为防止意外编辑“swap”文件,600请将权限设置为
*如果权限未设置为“600”,则会显示以下警告。
mkswap: /swap: 不安全的权限 0644, 0600 建议。.
将交换文件格式化为交换区域。
然后,启用交换文件。
[root@test-aws-harukainoue swapfile]# mkswap ./swap 设置交换空间版本 1,大小 = 1024 MiB (1073737728 字节) 无标签,UUID=8227fefa-a6da-4c63-a9c3-ae21c06dad30 [root@test-aws-harukainoue swapfile]# swapon ./swap [root@test-aws-harukainoue swapfile]# free -m 总计 已用 可用 共享 缓冲区/缓存 可用 内存:983 227 73 0 682 594 交换空间:1023 0 1023 [root@test-aws-harukainoue swapfile]# swapon -s 文件名 类型 大小 已用 优先级 /var/swapfile/swap 文件 1048572 0 -2
交换区已创建!!!
设置交换分区,使其在重启后也不会消失。
挂载 SWAP 分区,以便重启后仍可使用。
[root@test-aws-harukainoue 交换文件]# vi /etc/fstab
请输入以下内容并覆盖原有内容:
/var/swapfile/swap swap swap defaults 0 0 :wq
重启・・・・・・・・・
[root@test-aws-harukainoue ~]# free -m 总计 已用 可用 共享 缓冲区/缓存 可用 内存:983 218 78 0 686 604 交换空间:1023 0 1023
可以看到,重启后 SWAP 仍在被使用。
我通常不会在我的 AWS 实例环境中使用交换空间,所以我把它关闭了。
(注:如果您确实使用了交换空间,则无需将其关闭。)
[root@test-aws-harukainoue swapfile]# swapoff ./swap [root@test-aws-harukainoue swapfile]# free -m total used free shared buff/cache available Mem: 983 226 73 0 682 594 Swap: 0 0 0
概括
当内存不足时,OOM killer 会强制终止进程。
作为内存不足时的临时措施,
使用临时存储区域 SWAP
有效利用内存和 SWAP 空间对于防止系统崩溃至关重要。
切记挂载 SWAP 区域,以免重启后 SWAP 空间消失!
每天都在成长,每天都在进步。
我必须每天都提升自己!
感谢您阅读到最后。
0
