紫色的风
吹着你跳动的心

NetworkManager在运行docker容器时占用大量内存怎么办?

问题现象

在运行多个docker容器的环境下NetworkManager服务占用内存很大,导致内存使用率过高。


说明:

  • 本节操作适用于CentOS 7、Ubuntu 16.04操作系统。
  • 该文档涉及重启网络服务,可能会造成业务中断,请谨慎操作。

问题分析

NetworkManager消耗的内存量随着容器启动/停止的每次迭代而增加,即使在所有容器已被停止和删除之后也不会减少。

处理方法

短期处理方法:

执行以下命令重启NetworkManager服务。

# systemctl restart NetworkManager

长期处理方法:

  • CentOS 7操作系统云服务器 执行以下命令停止NetworkManager服务,改用network管理网络 # systemctl disable NetworkManager # /sbin/chkconfig network on # kill `pgrep -o dhclient` # systemctl stop NetworkManager # systemctl start network
  • Ubuntu16.04操作系统
    1. 执行以下命令使用networking管理网络。 # systemctl disable NetworkManager # systemctl disable network-manager # systemctl enable networking # kill `pgrep -o dhclient` # systemctl stop NetworkManager # systemctl start networking
    2. 启用networking服务,一定要检查interfaces文件中是否设置网络配置为DHCP模式。 vi /etc/network/interfaces 若只有一个网卡eth0则可以检查或增加: auto eth0 iface eth0 inet dhcp 图1 设置网络配置为DHCP模式
赞(1)
未经允许不得转载:紫风 » NetworkManager在运行docker容器时占用大量内存怎么办?

评论 抢沙发