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 ...
随机推荐
- Ubuntu + VMware=Linux虚拟机
1.工具 2.要点 3.问题 有时间再写
- Quartus14.1中Qsys创建custom component时编译出错原因
利用Quartus14.1中Qsys工具新建自定义组件时会产生“part-select direction is opposite from prefix index direction”错误,这是由 ...
- Jackson基础笔记
具体内容待完善......手抖,发错了! 一.基本使用 1. bean->jsonStr 2. jsonStr->bean 二.注解使用 三.复杂对象转换 四.其他细节 读取json文本.
- js中的全局函数
以前没搞懂JS的全局函数,全局函数和window对象的函数不一样.全局函数不属于任何一个内置对象. JS包含以下7个全局函数,用于一些常用的功能:escape(),eval(),isNan(),isF ...
- windows下强大的wmic命令行工具
windows最令网管诟病的地方就是命令行没有unix和linux强大.但这种情况正在不断改观,windows命令行也越来越强大了.其中,微软耗费大量精力打造的wmi就是一例. 获得进程ID与进程名 ...
- Python异常处理体系
1.Python内建异常体系结构 The class hierarchy for built-in exceptions is: BaseException +-- SystemExit +-- ...
- CodeForces 609B The Best Gift
统计+枚举 #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> ...
- Vmware克隆虚拟机后网卡eth0变eth1解决
在克隆虚拟机的过程中,发现新克隆的机器的网卡由eth0变成了eth1,然而并没有eth1的配置文件. 1.#ip a 查看当前ip地址,发现是eth1网卡 2.#ll /etc/sysconfig/n ...
- CentOS 6.4 x64 安装 配置 Redmine 2.4.1
Redmine 安装配置 1. 安装Redmine 所需的依赖 首先安装 yaml wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz ...
- Selinux是什么?
在新的基于RHEL一般都自带了selinux,多数情况下我们把selinux禁用了,事实上既然RHEL要集成它,必然有他的优点和长处,我们通过下文来了解selinux,也许你会喜欢用上它. 英文原文来 ...