cAdvisor Test - y12studio/y12io GitHub Wiki
cAdvisor only
$ sudo docker run \
--volume=/var/run:/var/run:rw \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest
$ sudo docker run --name some-mysql \
-e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
curl POST
$ curl -i -H "Accept: application/json" -X POST http://localhost:8080/api/v1.0/machine
HTTP/1.1 200 OK
Date: Thu, 07 Aug 2014 03:42:24 GMT
Content-Length: 44
Content-Type: text/plain; charset=utf-8
{"num_cores":1,"memory_capacity":4145586176}
$ curl -X POST http://localhost:8080/api/v1.0/containers/docker/some-mysql | python -m json.tool
time-event json, allow data to be pushed to influxdb #39 that suits the data.
{
"cpu": {
"load": 0,
"usage": {
"per_cpu_usage": [
1611849380
],
"system": 1000000000,
"total": 1611849380,
"user": 420000000
}
},
"memory": {
"container_data": {
"pgfault": 39173,
"pgmajfault": 182
},
"hierarchical_data": {
"pgfault": 39173,
"pgmajfault": 182
},
"usage": 604106752,
"working_set": 588668928
},
"network": {
"rx_bytes": 0,
"rx_dropped": 0,
"rx_errors": 0,
"rx_packets": 0,
"tx_bytes": 0,
"tx_dropped": 0,
"tx_errors": 0,
"tx_packets": 0
},
"timestamp": "2014-08-07T03:47:05.387437215Z"
}
with influxDB
influxDB
$ sudo docker run -d --name=influxdb1 \
-p 8083:8083 -p 8086:8086 --expose 8090 --expose 8099 tutum/influxdb
// create database cadvisor from http://localhost:8083
$ sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}' influxdb1
172.17.0.2
$ sudo docker run \
--volume=/var/run:/var/run:rw \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest \
-storage_driver influxdb \
-storage_driver_host 172.17.0.2:8086 \
-storage_driver_name cadvisor \
-storage_driver_user root \
-storage_driver_password root
InfluxDB query port:8083
select * from /.*/ limit 10
columns: [time, sequence_number, container_name, cpu_cumulative_usage, cpu_cumulative_usage_system,…]
0: "time"
1: "sequence_number"
2: "container_name"
3: "cpu_cumulative_usage"
4: "cpu_cumulative_usage_system"
5: "cpu_cumulative_usage_user"
6: "cpu_instant_usage"
7: "machine"
8: "memory_container_pgfault"
9: "memory_container_pgmajfault"
10: "memory_hierarchical_pgfault"
11: "memory_hierarchical_pgmajfault"
12: "memory_usage"
13: "memory_working_set"
14: "per_core_cumulative_usage_core_0"
15: "per_core_instant_usage_core_0"
16: "sample_duration"
17: "timestamp"
name: "cadvisorTable"
select MAX(memory_usage) from /.*/ group by time(1m)
SELECT STDDEV(memory_usage) FROM /.*/