Metrics are collected via the cAdvisor API. CAdvisor must be deployed on each container server that requires monitoring.
Note: HTTP Only
cAdvisor only supports HTTP at this time.
Your primary reference for getting up-and-running with cAdvisor is the cAdvisor github repository.
Deployment of cAdvisor
The cAdvisor repo contains a Quick Start section, which shows you how to run cAdvisor in a Docker container. Make sure you're referencing the instructions specific to your OS. (See: Running cAdvisor.
For advanced runtime options for cAdvisor, see the cAdvisor Runtime Options documentation.
cAdvisor deployment for your OS Type
You must run the provided commands on each Docker host you want to monitor. The commands also should be adjusted for your particular orchestration system (e.g., Rancher, Kubernetes, Docker Swarm, etc.)
The following example command is referenced in the cAdvisor documentation. It should be run as root or via sudo, and we also recommend adding the --restart=always
line as shown below:
docker run \
--restart=always \
--privileged=true \
--volume=/cgroup:/cgroup:ro \
--volume=/:/rootfs:ro \
--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
Testing cAdvisor
To ensure that your Docker Server is ready to gather metrics, connect to the cAdvisor system with: http://<docker server>:8080
Port: 8080 (TCP) HTTP connection to the cAdvisor container API
cAdvisor (Container Advisor): 0.25.0+
Docker Enterprise and Community Editions: 17.x, 18.x
Hosts
Required
Comma-separated list of one or more Docker hosts to connect to. These hosts must be running cAdvisor
Ports
Required
Comma-separated list of one or more ports for communication to Docker hosts. Default port: 8080
Collect Events
Controls whether events are collected and returned.
Max Events
The maximum number of events to collect.
Event Cutoff Time
Events before this time will not be collected.
Maximum Concurrent Hosts
The maximum number of Docker hosts to collect from at the same time.
Connection Timeout (seconds)
The number of seconds to allow for connecting to the target.
Container Name
Container Name
Memory Usage (Kilobytes)
Memory Used
Number Of Cores
Number of CPU Cores
Received Errors (Errors per Second)
Receiving Errors
Received Throughput (Kilobytes per Second)
Data Received
Resource Alias
The alias of the Container resource.
Sent Errors (Errors per Second)
Total Transmission Errors
Sent Throughput (Kilobytes per Second)
Data Transmitted
System CPU Usage (%)
Kernel CPU Usage
Total CPU Usage (%)
Total CPU Usage
User CPU Usage (%)
User CPU Usage
Working Set (Kilobytes)
Working Set
Boot ID
Boot ID
cAdvisor Version
CAdvisor Version
Cloud Provider
Cloud Provider
Container OS Version
Container OS Version
CPU Frequency (Gigahertz)
CPU Frequency
Hostname
Hostname
Instance ID
Cloud Instance ID
Instance Type
Cloud Instance Type
IP Address
Host IP Address
Kernel Version
Kernel Version
Memory Capacity (Kilobytes)
Size
Memory Usage (Kilobytes)
Current usage, this includes all memory regardless of when it was accessed
Memory Working Set (Kilobytes)
This includes recently accessed memory, dirty memory, and kernel memory
Number of Cores
Number of Cores
Port
Port
System CPU Usage (%)
Kernel usage on the container host
System UUID
System UUID
Total CPU Usage (%)
Total Usage for the Container Host
User CPU Usage (%)
User usage on the container host
Docker Version
Docker Version
Memory Usage (Kilobytes)
Memory Usage
Memory Working Set (Kilobytes)
Memory Working Set
System CPU Usage (%)
System CPU Usage
System UUID
System UUID
Total CPU Usage (%)
CPU Usage
User CPU Usage (%)
User CPU Usage
Available (Kilobytes)
Amount of storage available in bytes
Device ID
Device ID
Storage Capacity (Kilobytes)
Total size of storage in bytes
System UUID
System UUID
Usage (Kilobytes)
Amount of storage used in bytes
Updated 14 days ago