zoukankan      html  css  js  c++  java
  • centos 6,7 上cgroup资源限制使用举例

    在Centos6,7使用cgroup做内存限制,使用的配置包是libcgroup,具体方案和操作步骤如下。

    步骤1:安装配置管理包

    Centos 6:

      # yum install libcgroup
    

    Centos 7:

      # yum install libcgroup libcgroup-tools
    

    步骤2:添加控制组

    创建文件 /etc/cgconfig.d/cgroup.orange.conf,限制orange用户物理内存只使用200M,并禁用orange用户使用swap。

    文件内容如下:

    group orange_limitmem{
            memory {
                memory.limit_in_bytes=200m;
                memory.memsw.limit_in_bytes=200m;
            }
    }
    

    cgred服务将根据这条规则,匹配happy用户的进程。

    步骤3:添加规则

    在文件/etc/cgrules.conf中添加对happy用户的规则,关联步骤2的控制组:

    # echo "orange memory orange_limitmem/">> /etc/cgrules.conf
    

    步骤4:重启配置服务使之生效

    Centos 6:

    # service cgconfig restart
    # service cgred restart
    

    Centos 7:

    # systemctl restart cgconfig.service
    # systemctl restart cgred.service
    

    其中,cgconfig服务负责资源控制组挂载;
    cgred服务负责识别进程,并将进程添加到指定资源控制组。

    步骤5:测试

    使用orange用户,编写消耗内存脚本,观察脚本执行情况。

    #!/bin/bash
    x='a'
    while [ True ];do
            x=$x$x
    done;
    

    可以看到,进程被Kill。

    注意:
    centos7建议使用systemd进行资源限制。
    原因可参考:
    https://blog.csdn.net/lanyang123456/article/details/82319731

    关于如何使用systemd进程资源限制,可以参考:
    https://blog.csdn.net/lanyang123456/article/details/81610779

    https://blog.csdn.net/lanyang123456/article/details/82318978

  • 相关阅读:
    jvm05
    jvm04
    jvm03
    jvm02
    jvm01
    rabbitmq-01
    lock接口认识及可重入锁的实现
    volitile的使用
    自旋锁,死锁与重入锁
    上机实验4--求序列的最大元素和最小元素
  • 原文地址:https://www.cnblogs.com/lanyangsh/p/9420168.html
Copyright © 2011-2022 走看看