云服务器增加虚拟内存

本文环境:CentOS 7

如果服务器上运行了较多的应用,当内存不足时,就会发生宕机的情况。可以通过增加虚拟内存的方式,提高总的内存容量,以解决这一问题。

创建 swap 分区

查看内存使用情况

free -h

解释一下看到的信息:

  • Mem 这一行显示了服务器的物理内存的使用情况。
  • Swap 这一行显示了虚拟内存的使用情况,如果没有创建过虚拟内存,则为0。

创建 swap 文件

创建名为 swapfile 、大小为 4G 的 swap 文件(执行需要几十秒):

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

解释一下这段代码:

  • dd:用于读取、转换并输出数据的命令
  • if=/dev/zero:参数 if 用于指定源文件,这里我们用 /dev/zero ,是因为它是“零”设备,可以无限的提供空字符。
  • of=/var/swapfile:参数 of 用于指定目的文件,这里我们指定文件的路径是 /var/swapfile
  • bs=1024:参数 bs 指 block size,用于设置单位数据块同时读入/输出的块字节大小,这里我们设定为 1024 字节,即 1KB 。
  • count=4194304:参数 count 用于设置拷贝块的个数,我们设定的个数是 4194304 = 1024 * 1024 * 4 ,加上前面设定了每个块的大小是 1KB,因此 swap 文件总大小为 1024 * 1024 * 4 * 1 KB = 4 GB 。

建立 swap 分区

用 mkswap 命令建立 swap 分区,并指定 swap 文件是刚才创建好的 /var/swapfile

mkswap /var/swapfile

激活 swap 分区

swapon /var/swapfile

如果出现提示【不安全的权限 0644,建议使用 0600】,可以忽略,也可以听从建议修改权限。

chmod -R 0600 /var/swapfile

激活后,可以使用 free -h 查看系统内存情况。

修改 swap 配置

开机自动挂载 swap 分区

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

调整系统使用 swap 分区的策略

系统使用虚拟内存是有一定策略的,通过参数 swappiness 来平衡。不同系统的默认值不太一样,Ubuntu 是 60,Linux 是 30。

swappiness 的值,越大表示越积极使用 swap 分区,越小表示越积极使用物理内存。以值取 30 为例,代表了当剩余物理内存小于 30% 时,系统开始使用 swap 分区。

一般的建议是:

  • 如果内存充足,就将 swappiness 值设置很低,甚至为0,以避免系统进行 swap 而影响性能。
  • 如果内存不足,就将 swappiness 值设大,让系统更多地使用 swap 分区,但不要设太大(除非是 SSD ),一般设置在 10 ~ 50 之间即可。

查看当前的 swappiness 值:

cat /proc/sys/vm/swappiness

(临时)修改 swappiness 值为 10:

sysctl vm.swappiness=10

(永久)修改 swappiness 值为 10:

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

删除 swap 分区

讲完了怎么创建,再讲讲怎么复原,需要 3 步:

step1. 停止正在使用的 swap 分区

swapoff  /var/swapfile

step2. 删除swap分区文件

rm -rf   /var/swapfile

step3. 删除或注释掉之前在 /etc/fstab 文件里追加的开机自动挂载配置内容,以及在 /etc/sysctl.conf 文件里追加的 swappiness 值。

vim /etc/fstab  # 注释这一行: /var/swapfile   swap  swap  defaults  0  0vim /etc/sysctl.conf  # 注释这一行: vm.swappiness = 10

云服务器增加虚拟内存相关推荐

  1. 云服务器增加虚拟内存,windows云服务器提示虚拟内存不足的解决方案

    Windows云服务器系统部署Web站点环境时,会遇到环境安装不上或者卡死问题.此类问题的发生,一般都是由于服务器配置较低或者虚拟内存不足导致的. 出错场景 1. 虚拟内存不足导致程序安装失败 服务器 ...

  2. 腾讯云服务器添加虚拟内存

    使用腾讯云服务器也有一段时间了,不过由于对Linux知识了解的比较少,加上服务器稳定性一直都比较好的,所以便很少去折腾服务器.直到最近,站点时常打不开,查了很久的原因,才发现是内存不够导致的~ 用命令 ...

  3. 云服务器可以虚拟内存吗,云服务器可以设置虚拟内存吗

    云服务器可以设置虚拟内存吗 内容精选 换一换 开启弹性云服务器的虚拟内存后,会导致硬盘I/O性能下降,因此,平台提供的Windows弹性云服务器默认未配置虚拟内存.如果弹性云服务器内存不足,建议通过& ...

  4. 云服务器修改虚拟内存,云服务器可以设置虚拟内存

    云服务器可以设置虚拟内存 内容精选 换一换 开启弹性云服务器的虚拟内存后,会导致硬盘I/O性能下降,因此,平台提供的Windows弹性云服务器默认未配置虚拟内存.如果弹性云服务器内存不足,建议通过&q ...

  5. 云服务器需要虚拟内存,云服务器需要设置虚拟内存

    云服务器需要设置虚拟内存 内容精选 换一换 开启弹性云服务器的虚拟内存后,会导致硬盘I/O性能下降,因此,平台提供的Windows弹性云服务器默认未配置虚拟内存.如果弹性云服务器内存不足,建议通过&q ...

  6. 腾讯云服务器增加网卡,腾讯云服务器(CVM主机)绑定多个弹性网卡和IP地址的方法...

    附:腾讯云官方提供的添加方法. 1.以管理员身份登录云服务器,执行以下命令: cd /etc/sysconfig/network-scripts/ 2.创建新网卡的配置文件 ifcfg-eth1 ,输 ...

  7. 腾讯云服务器增加网卡,腾讯云centos7服务器添加辅助网卡绑定多IP实践

    购买的腾讯云CVM服务器默认只有一个公网IP的,如果您的业务有多IP的需求,可以通过云服务器绑定弹性网卡,再通过弹性网卡绑定弹性公网IP的方式实现.本文为介绍如何通过绑定弹性网卡的方式,绑定弹性公网I ...

  8. 腾讯云服务器增加网卡,腾讯云绑定和配置弹性网卡

    由于都是技术文档,就不做过多的介绍和解释,直接进入具体操作步骤 1. 有了弹性网卡,需要绑定主机才能够进行其他相关的配置 进入腾讯云进行弹性网卡与云主机的绑定 2. 弹性网卡的配置 vim /etc/ ...

  9. linux服务器增加虚拟内存

    使用 free -h 查看当前内存占用情况,可以看到物理内存所剩无几,下面的swap也是使用的文件作为虚拟内存使用的创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的cou ...

最新文章

  1. poj 1474 Video Surveillance - 求多边形有没有核
  2. LeetCode686 Repeated String Match(字符串匹配)
  3. hdu-2553 N皇后问题(深搜 + 状态压缩)
  4. dataframe 修改某列_python dataframe操作大全数据预处理过程(dataframe、md5)
  5. java 中导出word后压缩文件_Java批量导出word压缩后的zip文件案例
  6. 【Navicat】查看1000行以后的内容
  7. LeetCode(1002)——查找常用字符(JavaScript)
  8. html view设置全屏,uni-app 如何设置web-view 不全屏,不自动铺满,动态控制web-view的高度...
  9. web服务器php配置实例,配置 Web 服务器提供 PHP 服务
  10. spring 中事物的说明
  11. 安装matlab2016a教程---适合小白,超详细
  12. 需求规格说明书【样本】
  13. 瞎聊高速公路与主干道的立交匝道设计
  14. android 的一些编译问题
  15. scrapy入门小案例--爬取电影天堂最新电影下载地址
  16. 小米2/2S刷基于Android 5.1.1的CM12.1系统教程
  17. Makerbase_ODrive常见驱动问题及解决
  18. Python实现psf2otf
  19. VS2015编辑图片
  20. professional issue复习

热门文章

  1. Day20200713—点在三角形内
  2. Python3网络爬虫教程8——有道在线翻译项目(JS加密)
  3. php7模拟,认识PHP7虚拟机()三
  4. 智能车小白必看,该竞赛相关宝贵经验+资源借鉴总结1
  5. CREO 用最简单的方法做个莫比乌斯带
  6. java企业邮箱发送_Spring boot 的腾讯企业邮箱发送 实例
  7. Day 7/100:Python列表
  8. 一文详解 Band Protocol :预言机博弈中的价值输出
  9. 软件工程课程实践-项目开发总结报告
  10. OpenGL硬件加速判断