使用 cAdvisor + InfluxDB + Grafana 配置 Docker 监控,cadvisorinfluxdb


配置 Docker 监控系统,采集数据(cAdvisor) -> 存储数据(InfluxDB) -> 显示数据(Grafana)

InfluxDB

一系列 InfluxDB 学习文章,可查看 等英博客、Linux 大学相关文章

一. docker 拉取镜像

docker pull tutum/influxdb:0.9

版本可以根据需要定义,此处默认为 0.9

0001

二. 启动运行

docker run -d -p 8083:8083 -p 8086:8086 --expose 8090 --expose 8099 --name influxsrv tutum/influxdb

参数说明

-d:容器在后台运行 -p:将容器内端口映射到宿主机端口,格式为 宿主机端口:容器内端口;8083 是 influxdb 的 web 管理工具端口,8086 是 influxdb 的 HTTP API 端口 --expose:可以让容器接受外部传入的数据 --name:容器名称 最后是 镜像名称:tag,镜像为 tutum/influxdb,tag 的值如果不填默认为 latest,也可以指定版本如 tutum/influxdb:0.8.8

可以使用 docker ps -a 可以查看正在运行的 influxsrv
容器
如图
0002

可以打开浏览器输入http://localhost:8083 访问

0003

三. 登入管理

输入用户名 root 密码 root,Host 可以自定这里默认localhost ,点击保存。
0004

四. 命令行操作

可以使用命令行进行容器管理,启动容器

docker run -i -t tutum/influxdb bin/bash

004

进入容器操作 influxdb ,可以进行一系列操作,可看教程 InfluxDB学习之InfluxDB的基本操作

005

cAdvisor

五. web 端操作

在登录 influxdb 后台数据库管理平台后, 创建 cAdvisor 数据库, 用于存储 cAdvisor 应用所获取的实时监控数据。在 influxDB 管理界面中的 Queriy 输入框中创建数据库和用户。其中界面的右下角的 Query Templates可以快速使用相关操作语句。

006

1. 创建 cadvisor 数据库

create database 'cadvisor'

0006

查看这个数据库的状态
0007
2. 安装 cAdvisor 容器并将其链接到 InfluxDB 容器

sudo docker run --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 --link influxsrv:influxsrv --name=cadvisor google/cadvisor:latest -storage_driver_db=influxdb -storage_driver_host=influxsrv:8086

如图
0008

安装成功后,浏览器输入 http://localhost:8080/ 访问,成功访问后就可以看到在 Docker 主机和容器上收集统计信息的 cAdvisor

0009

Grafana

六.安装 Grafana 仪表板并将其链接到 InfluxDB 容器

sudo docker run -d -p 3000:3000 -e HTTP_USER=admin -e HTTP_PASS=admin -e INFLUXDB_HOST=influxsrv -e INFLUXDB_PORT=8086 -e INFLUXDB_NAME=cadvisor -e INFLUXDB_USER=root -e INFLUXDB_PASS=root --link influxsrv:influxsrv --name grafana grafana/grafana

如图
0010

安装成功后,浏览器输入 http://localhost:3000/ 访问 Grafana

0012

1.登录到 Grafana 并配置数据源
登入界面,Username 输入admin,Password 输入 admin,点击登入即可以进入

013

2. 将 InfluxDB 连接到 Grafana 仪表板

成功登入后,点击界面左上角的 Grafama 图标,弹出菜单栏点击数据源
0014

3. 在 Data Source Settings 界面填写相关信息

Data Sources /New 界面
0015

填写以下信息

Data Sources / New
Settings

Name:influxDB Default:yes
Type:InfluxDB

HTTP
URL:http://influxsrv:8086/
Access:proxy

Auth
Basic Auth:yes     With Credentials: no
TLS Client Auth:no   With CA Cert:no

Skip TLS Verification (Insecure):no

Basic Auth Details
User:admin
Password:admin

Advanced HTTP Settings
Whitelisted Cookies:none

InfluxDB Details
Database:cadvisor
User:root
Password:root

Min time interval:60s

如图
0016

当点击 Save&Test 返回 Data source is working 信息的时候,表示 grafana 已经正确连接到相应的容器

七. Grafana 配置完成可视化监控

新建监控面板
0017

填写相关信息
0018

关于 Grafaba 上的配置选项可查看官网教程 Using InfluxDB in Grafana

八. 使用 docker compose.yml 配置文件部署 Docker 监控系统

这里有一份现成的 Docker 监控配置文件 docker-compose.yml

下载该文件

在安装目录下执行

 docker-compose -f docker-compose.yml up -d

具体可查看 Docker-monitoring

 

相关内容