赞
踩
cgroups
本质:内核附加在程序上的一系列钩子(hook),通过程序运行时对资源的调度触发相应的钩子以达到资源追踪和限制的目的cgroups
的用途
cgroups
可以控制的子系统
子系统 | 说明 |
---|---|
blkio | 对块设备的IO进行限制 |
cpu | 下面自己哦CPU时间片的分配 |
cpuacct | 生成cgroup中的任务占用CPU资源的报告,与CPU挂载在同一目录 |
cpuset | 给cgroup中的任务分配独立的CPU(多处理器系统)和内存节点 |
devices | 限制设备文件的创建,和对设备文件的读写 |
freezer | 暂停/恢复cgroup中的任务 |
memory | 对cgroup中的任务的可用内存进行限制,并自动生成资源占用报告 |
perf_event | 允许perf观测cgroup中的task |
net_cls | cgroup中的任务创建的数据报文的类别标识符,这让Linux流量控制器(tc指令)可以识别来自特定cgroup任务的数据包,并进行网络限制 |
hugetlb | 限制使用的内存页数量 |
pids | 限制任务的数量 |
rdma | 限制RDMA资源(Remote Direct Memory Access,远程直接数据存取) |
功能:监控全部或指定进程的CPU、内存、线程、设备IO等系统资源的占用情况
语法
pidstat [OPTIONS] [<时间间隔>] [<次数>]
参数
参数 | 作用 |
---|---|
-u | 默认参数,显示各进程的CPU使用统计 |
-r | 显示各进程的内存使用统计 |
-d | 显示各进程的IO使用情况 |
-p | 指定进程号,ALL表示所有进程 |
-C | 指定命令 |
-l | 显示命令名和所有参数 |
功能:压力测试工具,可以对CPU、Memory、IO、磁盘进行压力测试
语法
stress [OPTION [ARG]]
参数
参数 | 作用 |
---|---|
-c, --cpu N | 产生N个进程,每个进程都循环调用sqrt() 产生CPU压力 |
-i, --io N | 产生N个进程,每个进程循环调用sync 将内存缓冲区内容写到磁盘上,产生IO压力 |
-m, --vm N | 产生N个进程,每个进程循环调用malloc/free分配和释放内存 |
–vm-bytes B | 指定分配内存的大小 |
–vm-keep | 一直占用内存,区别于不断的释放和重新分配(默认是不断释放并重新 分配内存) |
-d, --hdd N | 产生N个不断执行write和unlink函数的进程(创建文件,写入内容,删除文件) |
–hdd-bytes B | 指定文件大小 |
-t, --timeout N | 在 N 秒后结束程序 |
-q, --quiet | 程序在运行的过程中不输出信息 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。