【小伟哥AI之路】linux之docker run getty进程cpu占用过高的解决办法

本文分析了Docker容器在使用/sbin/init和–privileged参数时导致服务器CPU占用过高的问题。详细解释了问题原因,并提供了具体的解决步骤,包括关闭和禁用getty进程,有效降低了CPU资源占用。

今天突然发现服务器CPU占用过高,查看了下是getty这个进程占用过高。

原因:

在使用docker run运行容器时使用了 /sbin/init和–privileged参数。 使用/sbin/init启动容器并加上–privileged参数,相当于docker容器获得了宿主机的全权委托权限。这时docker容器内部的init与宿主机的init产生了混淆。

解决办法:

关闭getty这个进程

root@VM-0-9-ubuntu:~# systemctl stop getty@tty1.service 
root@VM-0-9-ubuntu:~# systemctl disable getty@tty1.service 

在查看进程

CPU资源占用瞬间下来了

kswapd是Linux系统的一个内核进程,主要负责管理系统内存的交换和预取机制,确保系统能够效地利用内存。而Docker则是一种虚拟化技术,可以在单个操作系统上运行多个相互隔离的应用程序。 如果kswapd进程一直占用CPU,可能意味着系统内存出现了问题。以下是一些可能的解决方案: 1. 增加系统内存:当系统内存不足时,kswapd进程会经常运行以提内存利用率。这时可以通过增加系统内存来缓解问题。 2. 优化内存占用:如果系统中存在进程或应用程序占用过多内存,可以通过优化它们的内存占用降低kswapd进程的负载。可以考虑关闭一些不必要的应用或进程,或者通过修改应用程序或脚本来减少它们的内存占用。 3. 调整系统参数:可以通过修改系统内存管理的一些参数来调整kswapd进程的行为。例如,可以修改/proc/sys/vm/swappiness参数来调整内存页面管理的行为。 4. 检查Docker容器:如果问题与Docker相关,可以检查Docker容器是否占用过多的系统资源,例如内存和CPU。可以使用Docker stats命令查看Docker容器使用的资源情况,然后根据情况调整容器配置。 总之,如果kswapd进程一直占用CPU,需要先了解系统的内存使用情况,并采取相应的措施来调整系统配置。如果问题与Docker有关,也需要检查Docker容器的资源使用情况,并进行必要的优化。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值