CentOS增加虚拟内存

最近在搭建自己写的博客网站,使用的是cloud+vue项目.没想到的是微服务太占内存了.只启动了一些中间件,三个微服务.我阿里云2H4G的服务器就快扛不住了.

为此只能进行扩充虚拟内存了.

swap分区的创建


1、查看磁盘使用情况

free -h 

 

因为我之前增加了交换空间4G,所以Swap会显示4G,并且已经使用了1G了

 

2、添加Swap分区

使用dd命令创建名为swapfile 的swap交换文件(文件名和目录任意):

dd  if=/dev/zero  of=/var/swapfile  bs=1024  count=4194304 

dev/zero是Linux的一种特殊字符设备(输入设备),可以用来创建一个指定长度用于初始化的空文件,如临时交换文件,该设备无穷尽地提供0,可以提供任何你需要的数目。 

bs=1024  :单位数据块(block)同时读入/输出的块字节大小为1024  个字节即1KB,bs(即block size)。

count = 4194304 表示的是4G

具体计算公式为:1KB * 4194304 =1KB *1024(k)*1024*4 = 4194304 =4G

如果小伙伴需要调整交换区的大小的话,可以自行设置其他的

执行完命令后,会进行4G读写操作,所以会有一些卡顿,小伙伴耐心等待

3、对交换文件格式化并转换为swap分区

mkswap  /var/swapfile

 

4、挂载并激活分区

swapon   /var/swapfile

执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略提示,也可以听从系统的建议修改下权限:

chmod -R 0600 /var/swapfile

 

5、查看新swap分区是否正常添加并激活使用

free -h

 

6、修改 fstab 配置,设置开机自动挂载该分区

echo  "/var/swapfile   swap  swap  defaults  0  0" >>  /etc/fstab

 

7、查看是否已经使用了交换内存

top

我们能够看到,交换空间已经成功被使用

 

更改Swap配置

一般默认的情况,当我们开启交换虚拟内存空间后,默认好像是当内存使用百分50的时候,就会开始使用交换空间,这样就会造成一个情况,就是本身物理内存还没有使用完成, 缺去使用虚拟内存,这样肯定会影响我们的使用效率,那么我们怎么避免这个情况的发生呢?

答案就是:可以通过swappiness值进行管理,swappiness表示系统对Swap分区的依赖程度,范围是0~100,数值越大,依赖程度越高,也就是越高越会使用Swap分区。

所以,我们现在并不希望我们的机器过度依赖Swap分区,只有当我们 负载超过某个百分比的时候,才使用交换空间,所以这也决定了,我们这个值并不是非常大,一般设置 10 ~50 左右。

当然如果小伙伴的是SSD的话,那么这个值可以稍微大一些。

 

下面我们查看当前的swappiness数值:

cat /proc/sys/vm/swappiness

 

修改swappiness值,这里以10为例:

sysctl vm.swappiness=10

 

设置永久有效,重启系统后生效

echo "vm.swappiness = 10"  >>  /etc/sysctl.conf

 

我们最后再次通过top命令,能够查看到,交换空间已经被使用了,物理内存也大概占用了百分90左右

到此时,就扩容了4G的虚拟内存了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 中,虚拟内存是由操作系统用于扩展物理内存的一种技术。它允许将部分硬盘空间用作临时存储,以便在物理内存不足时使用。 要配置虚拟内存,可以按照以下步骤进行操作: 1. 查看当前的虚拟内存配置:可以使用命令 `sysctl vm.swappiness` 来查看当前的 swappiness 值,该值表示内核在多大程度上倾向于将内存页面交换到磁盘中的交换空间。默认值为 60。 2. 修改虚拟内存配置:可以使用命令 `sysctl -w vm.swappiness=新值` 来修改 swappiness 值。较低的值(如10)将减少交换,而较高的值(如100)将增加交换。 3. 永久修改虚拟内存配置:可以编辑 `/etc/sysctl.conf` 文件,在文件末尾添加 `vm.swappiness=新值`,保存并退出。然后使用命令 `sysctl -p` 来重新加载配置文件。 4. 创建交换文件:如果需要增加虚拟内存空间,可以创建一个交换文件。首先,创建一个具有适当大小的文件(例如 2GB):`sudo fallocate -l 2G /swapfile`。然后设置访问权限:`sudo chmod 600 /swapfile`。接下来,将文件转换为交换文件:`sudo mkswap /swapfile`。最后,激活交换文件:`sudo swapon /swapfile`。 5. 永久激活交换文件:可以编辑 `/etc/fstab` 文件,在末尾添加一行 `/swapfile swap swap defaults 0 0`,保存并退出。这样系统在每次启动时会自动激活交换文件。 请注意,虚拟内存的使用可能会对系统性能产生一定影响。因此,在调整虚拟内存配置时需谨慎,并根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值