Docker swarm 集群监控平台搭建流程 (influxdb + cadvisor + grafana)

1.安装 influxDB

    a.在监控服务器(xx.xx.xxx.xx)上 创建带默认管理员账户及默认数据库的influx 容器

docker run -d -p 8083:8083 -p 8086:8086 -e ADMIN_USER="root" -e INFLUXDB_INIT_PWD="root" -e PRE_CREATE_DB="cadvisor" -e "Xms=128m" -e "Xmn=64m" --name influxsrv tutum/influxdb
    b.在 Linux 终端输入 curl "http://127.0.0.1:8083" ,如果返回一个html 页面代码,则表示 influx 创建成功

2.安装 cadvisor

    a.在集群 Nginx 机器上,以服务方式在集群各个节点全部运行 cadvisor 容器,

docker service create --mode global -p5563:8080 --detach=true --mount source=/var/run,type=bind,target=/var/run,readonly=false --mount source=/,type=bind,target=/rootfs,readonly=true --mount source=/sys,type=bind,target=/sys,readonly=true --mount source=/var/lib/docker,type=bind,target=/var/lib/docker,readonly=true --name cadvisor  google/cadvisor:v0.24.1 -storage_driver=influxdb -storage_driver_host=172.00.000.000:8086 -storage_driver_db=cadvisor
    b.命令解释
    --network logging  指定网络,可选
    --p:8082:8080      指定对外端口,可选
    --mode global      安装模式
    --mount            挂载
    -storage_driver=influxdb 指定数据库
    -storage_driver_host=xx.xx.xx.xx:8086 指定数据库地址/端口
    -storage_driver_db=cadvisor 指定数据库名

    c.测试是否正常写入数据
        a. 打开监控服务器(xx.xx.xxx.xxx),执行 docker exec -it influxsrv /bin/bash 命令,进入 influx 容器
        b. 执行 influx 命令,进入 influx 命令行
        c. 执行 use cadvisor 命令,进入 监控数据库 cadvisor
        d. 执行 show measurement 命令,查看 cadvisor 下面是否有数据表,如果有,表示数据表写入成功
        e. 执行 select * from fs_usage limit 10 。如果有数据输出,表明写入数据正常

3. 安装 grafana
    在监控服务器(xx.xx.xxx.xxx)上 创建
    
docker run -d -p 3000:3000 -e INFLUXDB_HOST=localhost -e INFLUXDB_PORT=8086 -e INFLUXDB_NAME=cadvisor -e INFLUXDB_USER=root -e INFLUXDB_PASS=root --link influxsrv:influxsrv --name grafana grafana/grafana
4. 配置图形展示界面 
    a. 在浏览器打开 http://xxx.xx.xx.xx:3000 ,进入 grafana。
    b. 输入默认登陆账号 admin/admin  登陆
    c. 在选项 Data Source 配置 grafana 数据源(influx)
    d. 在选项 Dashboards 一个个导入 json 模板,配置监控界面

你可能感兴趣的:(Docker)