systemd的命令systemctl set-property testSpeed CPUQuota=10%
总结
systemd 的资源限制一般要写到unit文件中,但是,现在测试发现会有 被值被覆盖的现象;经过排查发现是,没有 使用systemd的接口,凡是使用echo "" > 的方式,非systemd 的方式都会在daemon-reload后被干掉
systemctl set-property dd.service CPUQuota=10%slice 1 下有1个service dd,slice2 有3个service M1 M2 mm 我们做如下试验,发现,只会影响到同一个slice下的
问题描述
Slice 1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/jiangyi.slice/dd.service/cpu.cfs_quota_us
-1
Slice 2
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M1.service/cpu.cfs_quota_us
-1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M2.service/cpu.cfs_quota_us
-1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/mm.service/cpu.cfs_quota_us
30000
echo修改
echo修改 slice1/dd.service
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#echo 5000 > /sys/fs/cgroup/cpu/jiangyi.slice/dd.service/cpu.cfs_quota_us
echo修改 slice2/M1.service,M2.service,mm.service
M1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M1.service/cpu.cfs_quota_us
-1
M2
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#echo 5000 > /sys/fs/cgroup/cpu/system.slice/M2.service/cpu.cfs_quota_us
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M2.service/cpu.cfs_quota_us
5000
mm : mm不做修改,在service unit 中使用CPUQuota=30%
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/mm.service/cpu.cfs_quota_us
30000
仅重启M1
结果:均没有发现变化
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#systemctl restart M1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/mm.service/cpu.cfs_quota_us
30000
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M1.service/cpu.cfs_quota_us
-1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M2.service/cpu.cfs_quota_us
5000
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/jiangyi.slice/dd.service/cpu.cfs_quota_us
5000
仅daemon-reload
依然没有发现任何变化
daemon-reload后重启M1
- M1同slice下的M2被恢复
- M1同slice下的mm没有被恢复,因为,mm使用了CPUQuota=30%
- M1非同slice下的dd没有被修改,可能是因为,和M1不在同一个slice下
大概的猜测是,daemon-reload后,M1的restart会导致同slice下的所有service的cpu quota值 reload一下,但不会使得,非同一个slice下的 cpu quota值reload一下;
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/mm.service/cpu.cfs_quota_us
30000
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M2.service/cpu.cfs_quota_us
-1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/system.slice/M1.service/cpu.cfs_quota_us
-1
[root@jiangyi01.sqa.zmf /sys/fs/cgroup/memory]
#cat /sys/fs/cgroup/cpu/jiangyi.slice/dd.service/cpu.cfs_quota_us
5000
systemd的命令systemctl set-property testSpeed CPUQuota=10%的更多相关文章
- Centos7 服务 service 设置命令 systemctl 用法 (替代service 和 chkconfig)
在Centos 中 systemctl 是设置系统服务的命令,即 service , 它融合之前service和chkconfig的功能于一体. 可以使用它永久性或只在当前会话中启用/禁用服务 ...
- Centos7 环境下开机 自启动服务(service) 设置的改变 (命令systemctl 和 chkconfig用法区别比较)
参考文章: <Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)> http://blog.csdn.net/kenhins/article/ ...
- [转帖]Linux systemd 常用命令
Linux systemd 常用命令 https://www.cnblogs.com/tsdxdx/p/7288490.html systemctl hostnamectl timedatectl l ...
- Linux系统管理命令-systemctl 和 sshd 服务
一系统服务管理命令systemctl 开启一个服务 : systemctl start sshd 关闭一个服务: systemctl stop sshd 查看一个服务的状态: systemctl st ...
- Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)
之前在Linux centos 7 上安装了apache 和mysql,当时并没有设置开机自动启动. 最近又重新练习网页,每次开机总是要手动启动httpd和mysqld,不方便,就想设置成开机自动启动 ...
- systemd服务管理--systemctl常用命令
转自 :https://m635674608.iteye.com/blog/2359480 1. #systemctl enable crond.service //让某个服务开机启动(.servic ...
- systemd服务管理---systemctl命令列出所有服务
1.列出系统所有服务 #systemctl list-units --all --type=service
- Linux systemd 常用命令
系统管理 systemctl 显示系统状态: $ systemctl status 立即激活单元: # systemctl start [单元] 立即停止单元: # systemctl stop [单 ...
- Linux命令——systemctl
前言 systemctl本身的意义并不仅仅是一个命令那么简单,他标志着SysV时代的终结,Systemd时代的开始.CentOS 7.X系列已经抛弃SysV,全面拥抱Systemd这个init sys ...
随机推荐
- PAT (Advanced Level) 1057. Stack (30)
树状数组+二分. #include<iostream> #include<cstring> #include<cmath> #include<algorith ...
- Chapter 1 First Sight——6
"You didn't need to do that, Dad. I was going to buy myself a car." 你不需要这样,父亲,我会自己买一辆车的 &q ...
- Eclipse开发工具的使用之-使用Eclipse的Debug调试Android程序
1.设置断点,双击Eclipse编辑界面的边界,或者右击编辑界面的边界,快捷键Ctrl+Shift+B. 2.F11键开始调试程序,程序安装到手机之后,并不会自动运行,需要你手动运行到断点处. 3.运 ...
- Android中通过pid获取app包名
String callerPackage = getAppNameByPID(getContext(), Binder.getCallingPid()); private String getAppN ...
- <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
Asp.net Mvc 未能加载类型“System.Web.Mvc.ViewPage 的解決方法 2010-11-30 17:31:51| 分类: .net mvc |举报 |字号 订阅 如果多 ...
- SQL复习四(完整性约束)
完整性约束是为了表的数据的正确性.主要有主键,外键的约束. 1 主键 当某一列添加了主键约束后,该列的数据就不能重复出现.这样每行记录中其主键列就能唯一的标识着以行.如学生可以用学号作为唯一的标识. ...
- IOS 清除UIWebview的缓存以及cookie
cookie清除 NSHTTPCookie *cookie; NSHTTPCookieStorage *storage = [NSHTTPCookieS ...
- 关于IP选项
源:关于IP选项 校验和算法
- php管理关系工具Composer 之安装与下载
参考网址:http://www.phpcomposer.com https://packagist.org 1.linux 安装Composer curl -sS https://getcompose ...
- HDU 1255 覆盖的面积 ——(线段树+扫描线)
又做了一题扫描线以后对节点的覆盖标记理解的更加深刻了. 代码如下: #include <stdio.h> #include <algorithm> #include <s ...