You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Gilbert Song <so...@gmail.com> on 2017/07/18 00:44:35 UTC
Review Request 60934: Implemented blkio subsystem usage() for resource
statistics.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/60934/
-----------------------------------------------------------
Review request for mesos, haosdent huang, Jason Lai, Jie Yu, Qian Zhang, Vinod Kone, and Zhitao Li.
Bugs: MESOS-6162
https://issues.apache.org/jira/browse/MESOS-6162
Repository: mesos
Description
-------
Implemented blkio subsystem usage() for resource statistics.
Diffs
-----
src/slave/containerizer/mesos/isolators/cgroups/subsystems/blkio.hpp a2c575cc87a9e08612cf417013dac76ad6de873b
src/slave/containerizer/mesos/isolators/cgroups/subsystems/blkio.cpp 6be0f9ed4aa8c1a2273e5808ad54d3a4922c5e8d
Diff: https://reviews.apache.org/r/60934/diff/1/
Testing
-------
make check
Tested with `mesos-execute` and verified that the blkio statistics can be collected from the resource statistics endpoint:
Start the master:
sudo ./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/var/lib/mesos
Start the agent:
sudo GLOG_v=1 ./bin/mesos-agent.sh --master=127.0.0.1:5050 --isolation=cgroups/blkio,docker/runtime,filesystem/linux --work_dir=/tmp --image_providers=docker --executor_environment_variables="{}"
Launch `mesos-execute` test framework:
sudo ./src/mesos-execute --master=127.0.0.1:5050 --name=test --docker_image=alpine --shell=true --command="while true ; do echo 'hello' > test.txt ; done"
Collect the statistics for blkio:
```
vagrant@vagrant-ubuntu-wily-64:~$ curl localhost:5051/monitor/statistics.json | python -m json.tool
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1247 100 1247 0 0 39390 0 --:--:-- --:--:-- --:--:-- 40225
[
{
"executor_id": "test",
"executor_name": "Command Executor (Task: test) (Command: sh -c 'while true ;...')",
"framework_id": "39fb6d5c-d5bd-4b18-a632-0a42e417b946-0000",
"source": "test",
"statistics": {
"blkio": {
"cfq": [
{
"io_merged": [
{
"op": "TOTAL",
"value": 0
}
],
"io_queued": [
{
"op": "TOTAL",
"value": 0
}
],
"io_service_bytes": [
{
"op": "TOTAL",
"value": 0
}
],
"io_service_time": [
{
"op": "TOTAL",
"value": 0
}
],
"io_serviced": [
{
"op": "TOTAL",
"value": 0
}
],
"io_wait_time": [
{
"op": "TOTAL",
"value": 0
}
]
}
],
"cfq_recursive": [
{
"io_merged": [
{
"op": "TOTAL",
"value": 0
}
],
"io_queued": [
{
"op": "TOTAL",
"value": 0
}
],
"io_service_bytes": [
{
"op": "TOTAL",
"value": 0
}
],
"io_service_time": [
{
"op": "TOTAL",
"value": 0
}
],
"io_serviced": [
{
"op": "TOTAL",
"value": 0
}
],
"io_wait_time": [
{
"op": "TOTAL",
"value": 0
}
]
}
],
"throttling": [
{
"device": {
"major": 8,
"minor": 0
},
"io_service_bytes": [
{
"op": "READ",
"value": 0
},
{
"op": "WRITE",
"value": 4096
},
{
"op": "SYNC",
"value": 0
},
{
"op": "ASYNC",
"value": 4096
},
{
"op": "TOTAL",
"value": 4096
}
],
"io_serviced": [
{
"op": "READ",
"value": 0
},
{
"op": "WRITE",
"value": 1
},
{
"op": "SYNC",
"value": 0
},
{
"op": "ASYNC",
"value": 1
},
{
"op": "TOTAL",
"value": 1
}
]
},
{
"io_service_bytes": [
{
"op": "TOTAL",
"value": 4096
}
],
"io_serviced": [
{
"op": "TOTAL",
"value": 1
}
]
}
]
},
"cpus_limit": 1.1,
"mem_limit_bytes": 167772160,
"timestamp": 1500335339.30187
}
}
]
```
Thanks,
Gilbert Song