1、背景

购买的云主机(1核2G,Debian系统)安装了docker。docker中运行着六七个服务(包括几个微服务项目和mysql,redis,nginx等),之前启动一直好好的,偶尔一天,不知什么原因,系统需要重启,当我手动启动docker的时候,几秒钟的时间内存和cpu立马撑爆了,并且服务器处于假死或者说宕机状态。也无法登录,连云厂商的后台监控都丢失了cpu和内存的监控数据。

服务器重启之后,正常,但是只要一启动docker就再次假死,怎么回事?之前一直好好的呀

2、解决

进过多次重启尝试无果后,仔细查看了一下内存free -m 发现used与free占比很少,大量内存被buff/cache占据。因此,需要释放buff/cache的内存,将其变成free的。使用下面的命令:

echo 1 > /proc/sys/vm/drop_cachesecho 2 > /proc/sys/vm/drop_cachesecho 3 > /proc/sys/vm/drop_caches

drop_caches的值可以是0-3之间的数字,代表不同的含义: 0:不释放(系统默认值) 1:释放页缓存 2:释放dentries和inodes 3:释放所有缓存

详细内容可以查看下面这篇知乎
https://zhuanlan.zhihu.com/p/459398220

经过这样一番解决,启动docker总算正常了。同时,由于服务器的内存太小(主要是没钱),所以还可以降低性能,通过磁盘空间扩充内存,主要是使用swap,如下图是扩充后的结果

详细内容可以参考这篇博客:https://blog.csdn.net/qq_44625080/article/details/110203173

注意

如果Permission denied。是因为权限不够,我们只是让echo有root权限,没有让">"命令也有root权限。这时使用下面

sudo sh -c 'sync && echo 1 > /proc/sys/vm/drop_caches'
sudo sh -c 'sync && echo 2 > /proc/sys/vm/drop_caches'
sudo sh -c 'sync && echo 3 > /proc/sys/vm/drop_caches'

释放linux缓存 echo 1 > /proc/sys/vm/drop_caches相关推荐

  1. linux的cache过高的原因定位与解决echo 3 > /proc/sys/vm/drop_caches

    先说结论解决办法: 一.在crontab定时执行echo 3> /proc/sys/vm/drop_caches清理缓存.治标不治本,过段时间缓存又会增加上来. 二.hcache -top 10 ...

  2. linux跑程序占用缓存过多释放内存echo 3 > /proc/sys/vm/drop_caches

    在跑pytorch时出现了占用内存过多的问题,当然这个问题可以通过调小num_workers解决,不过还有手动解决办法就是释放内存,命令如下: echo 3 > /proc/sys/vm/dro ...

  3. 手工释放linux内存——/proc/sys/vm/drop_caches

    总有很多朋友对于Linux的内存管理有疑问,之前一篇[转]理解Linux的性能日志似乎也没能清除大家的疑虑.而在新版核心中,似乎对这个问题提供了新的解决方法,特转出来给大家参考一下.最后,还附上我对这 ...

  4. linux内存——/proc/sys/vm/drop_caches

    原贴:http://www.linuxfly.org/post/320/ http://blog.csdn.net/chinalinuxzend/article/category/265273/2 h ...

  5. linux proc 自动清理,Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches

    Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的Cache使用量大增 $ free -m total used free shared ...

  6. Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches

    Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的Cache使用量大增 $ free -m total used free shared ...

  7. /proc/sys/vm虚拟内存参数

    1.admin_reserve_kbytes 给有cap_sys_admin权限的用户保留的内存数量,默认值是min(free pages * 3%, 8MB).这些内存是为了给管理员登录和杀死进程恢 ...

  8. /proc/sys/vm/ 内存参数

    linux下proc里关于磁盘性能的参数 http://blog.csdn.net/eroswang/article/details/6126646  我们在磁盘写操作持续繁忙的服务器上曾经碰到一个特 ...

  9. dirty_background_ration 与 /proc/sys/vm/dirty_ratio

    wappiness的值的大小对如何使用swap分区是有着很大的联系的.swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用s ...

  10. 释放linux缓存文件命令,Linux定时释放缓存Shell脚本实现自动化运维 | kTWO-个人博客...

    使用Linux服务器的用户应该都知道,Linux在使用的时候,可用内存会随着时间慢慢的变小,最终可能到80%-90%,这个时候就需要我们去人工干预,来进行魂村的释放. 本文将使用Linux的Cron定 ...

最新文章

  1. 【NeurIPS2021】存在潜在变量和选择偏差的递归因果结构学习
  2. python卸载pip重新安装_pip无法正常使用卸载并重新安装
  3. 马斯克涨价推出完全自动驾驶FSD,放话“激光雷达即使免费也不用”
  4. uptime命令分析负载
  5. ansible(自动化运维下)——yaml语言,Role-角色扮演
  6. POJ 1007 DNA Sorting
  7. 事务未提交导致记录被锁的解决方法
  8. 【zookeeper】zookeeper 查看ZK连接总数
  9. 如何处理好与孩子沟通的关系?
  10. 收集一些jQueryMobile的插件和案例
  11. EXCEL出错 8000401a
  12. 巩固大一,大二知识 练习计划
  13. Themeforest上销量第一的WordPress高级企业主题
  14. 台式u盘显示计算机未响应怎么办,u盘插上去电脑没反应怎么办_u盘插上后无任何反应的解决教程-系统城...
  15. 扫地僧是怎样练成的,前辈学51单片机的感悟是怎么样的
  16. LC振荡电路L和C 参数越小 频率越高
  17. 玩游戏4g计算机的内存不足,别再说内存不足了!教你一招彻底解决,电脑运行加速3倍!...
  18. java oval_Java对象校验框架Oval怎么使用 | 学步园
  19. 分享4款非常实用的黑科技APP,使用过后才发现离不开它们了
  20. 阿宽食品冲刺深交所:年销售11亿 高瓴与茅台建信是股东

热门文章

  1. 心上莲花:佛教简介(上)
  2. 023_fireshot
  3. office2019 完美卸载
  4. 快捷键,总结一些实用高效的快捷键
  5. 柯美smb扫描出现服务器连接错误_柯尼卡美能达283设置好扫描之后,不能完成,提示与服务器连接错误,是什么原因,之前是可以用的...
  6. python怎么用拼音-用Python写一个拼音输入法
  7. 关系型数据库的一对一、一对多、多对一、多对多关系
  8. iMX8MP方案推荐|一款适用于心电监护仪的嵌入式核心板
  9. linux link 硬链接,Linux系统中的硬链接(hard link)与软链接(symbolic link)
  10. svg-path圆点沿路径跟随动画