Docker的OOM事件(docker的yml文件在哪儿)

Docker Docker的OOM事件 OOM(Out Of Memory)内存不足,通常是由于某些不稳定的进程占用过多的内存造成,在Docker中称为OOM事件,当容器使用的内存过多时就会发生OOM事件 By myfreax 4 Jul 2019

OOM(Out Of Memory)内存不足,一般根本原因是一些不稳进程占据太多内存造成,在Docker中称作OOM事儿,当容器所使用的内存过多也会出现OOM事儿,这件事是由Linux内核的内存管理机制开展,并可谓是运用占据内存太多容器Kill掉,保证系统的可持续运转。Linux内核为了保证系统的稳定性而将内存划分为两大部分用户空间与内核空间

linux-kernel-shared-memory-user-space

用户空间是发放到用户进程所使用的内存空间。内核空间是仅提供给内核运行的空间。用户的进程是打不开内核空间,而内核是可以访问用户空间与内核空间。在Linux内存管理机制里面还存在一个计划任务,检查电子计算机内存是否足够运用,分别收集以下这些指标

  • Total page cache as page cache is easily reclaimed
  • Total free pages because they are already available
  • Total free swap pages as userspace pages may be paged out
  • Total pages managed by swapper_space although this double-counts the free swap -
    pages. This is balanced by the fact that slots are sometimes reserved but not used
  • Total pages used by the dentry cache as they are easily reclaimed
  • Total pages used by the inode cache as they are easily reclaimed

倘若内核发现内存不能应用中渐渐开展OOM情况检查,随后开启out-of-memory函数搜索应用内存数最多的进程并kill掉

oom

在Docker的容器中默认是没有限制互联网资源所使用的,也就是说容器获得到CPU/内存与服务器之间是一样的,为了避免OOM事儿,可以给Docker的容器作一些调整

  • 依据系统测试之后才放入办公环境的容器中

  • 确保服务器上有足够的资源分配

  • 运用SWAP(交换空间)

  • 将容器转换到有足够内存的Docker Swarm服务上

Docker不建议手动式调整--oom-score-adj与--oom-disable-kill选项来避免OOM

LINUX

如何使用pecl安装php扩展(怎么使用扩展屏幕)

2023-1-18 14:59:14

LINUX

Fedora 31可能禁止基于密码的root ssh登录(禁止root用户ssh登录)

2023-1-19 8:06:06

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索