部署环境:
 
    两台 Docker Host 10.12.31.211 10.12.31.212
 
监控内容:
 
    使用Prometheus 监控两台host以及上面的容器
 
安装组件:
 
    Prometheus Server
 
        以容器的形式运行在 10.12.31.212 上
    
    Exporter
 
        Prometheus有很多现成的Exporter,完成的列表请参考https://prometheus.io/docs/instrumenting/exporters/
        使用Node Exporter 收集host硬件和操作系统数据。他将以容器的方式运行在所有host上
        使用cAdvisor收集容器数据,他将以容器的方式运行在所有host上
 
    Grafana
 
        显示多维数据,以容器的方式运行在 10.12.31.212 上
    

安装node-exporter ( 10.12.31.211 10.12.31.212 )
 
docker run -d -p 9100:9100 \
  -v "/proc:/host/proc" \
  -v "/sys:/host/sys" \
  -v "/:/rootfs" \
  --net=host \
  prom/node-exporter \
  --path.procfs /host/proc \
  --path.sysfs /host/sys \
  --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"
 
 
 
安装cadvisor( 10.12.31.211 10.12.31.212 )
 
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 \
  --name=cadvisor \
  --net=host \
  google/cadvisor:latest
 
 
 
安装prometheus( 10.12.31.212 )
 
docker run -d -p 9090:9090 \
  -v /root/prometheus.yml:/etc/prometheus/prometheus.yml \
  --name prometheus \
  --net=host \
  prom/prometheus
 
配置prometheus( 10.12.31.212 )
 
root@host2:~# docker exec -it prometheus /bin/sh
/prometheus $ vi /etc/prometheus/prometheus.yml
 
编辑 static_configs - targets ,添加需要监控的接口,修改完毕后需要重启一下容器
 
static_configs:
  - targets: ['localhost:9090','localhost:8080','localhost:9100','192.168.56.102:8080','192.168.56.102:9100']
 
 
 
安装grafana( 10.12.31.212 )
 
docker run -d -i -p 3000:3000 \
  -e "GF_SERVER_ROOT_URL=http://grafana.server.name"  \
  -e "GF_SECURITY_ADMIN_PASSWORD=secret"  \
  --net=host \
  grafana/grafana
 
http://10.12.31.212:3000/    admin secret
 
 

 
安装完成后,访问 Prometheus 查看监控内容是否正常    http://10.12.31.212:9090/targets
 
 
配置Grafana    http://10.12.31.212:3000/ admin secret
 
 
添加数据源
 
 
在列举出来的数据源类型中选择 Prometheus
 
 
在URL处填写Prometheus的地址,因为就在本机,所以 http://localhost:9090 即可,然后点击“Save & Test”按钮
 
 
 
返回首页,点击左侧 + ,Create - Import 
 
 
有三种方式可以导入 dashboard ,填写官网上的模板id ,上传json文件,粘贴json内容
 
 
我们去Grafana官网去查找docker的模板   https://grafana.com/dashboards?dataSource=prometheus&search=docker
 
 
这里我们选择模板“Docker and system monitoring” 我们可以拷贝模板id,也可以下载json文件
 
 
这里我们在本地的Grafana中填写模板的id  893 
 
 
因为本地的是Grafana是联网的,自动联网查询模板 893 的信息,我们需要做的就是在Prometheus处的下拉菜单中选择 Prometheus,然后点击 Import 按钮即可
 
 
然后我们就可以看到绚丽的监控画面了
 
 
 

085、如何快速部署 Prometheus (2019-05-07 周二)的更多相关文章

  1. 如何快速部署 Prometheus?- 每天5分钟玩转 Docker 容器技术(85)

    上一节介绍了 Prometheus 的核心,多维数据模型.本节演示如何快速搭建 Prometheus 监控系统. 环境说明 我们将通过 Prometheus 监控两台 Docker Host:192. ...

  2. 【转载】Spring Boot【快速入门】2019.05.19

    原文出处:https://www.cnblogs.com/wmyskxz/p/9010832.html   Spring Boot 概述 Build Anything with Spring Boot ...

  3. docker-compose 快速部署Prometheus之服务端并监控ceph cluster 使用钉钉webhook 报警

    现在环境是这样: ceph 4台: 192.168.100.21  ceph-node1 192.168.100.22  ceph-node2 192.168.100.23  ceph-node3 1 ...

  4. docker-compose 快速部署Prometheus,监控docker 容器, 宿主机,ceph -- cluster集群

    话不多说上菜: 现在环境是这样: ceph 4台: 192.168.100.21  ceph-node1 192.168.100.22  ceph-node2 192.168.100.23  ceph ...

  5. git遇到的问题记录2019.05.07

    用sourcetree拉取代码,报错如下: error: cannot lock ref 'refs/remotes/origin/my_branch': unable to resolve refe ...

  6. 教你在Kubernetes中快速部署ES集群

    摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...

  7. 使用Ambari快速部署Hadoop大数据环境

    使用Ambari快速部署Hadoop大数据环境   发布于2013-5-24   前言 做大数据相关的后端开发工作一年多来,随着Hadoop社区的不断发展,也在不断尝试新的东西,本文着重来讲解下Amb ...

  8. kubernetes之监控Operator部署Prometheus(三)

    第一章和第二章中我们配置Prometheus的成本非常高,而且也非常麻烦.但是我们要考虑Prometheus.AlertManager 这些组件服务本身的高可用的话,成本就更高了,当然我们也完全可以用 ...

  9. k8s部署prometheus

    https://www.kancloud.cn/huyipow/prometheus/527092 https://songjiayang.gitbooks.io/prometheus/content ...

随机推荐

  1. uswgi

    1.安装uwsgi注意: 1)在系统环境安装,非虚拟环境 2)使用对应python版本安装 3)要先安装python开发包 ###sudo apt-get install python3.6-dev ...

  2. Vue CLi3入门

    摘自:https://www.jianshu.com/p/cf9b56efd3b8 Vue CLi3入门 12018.11.15 14:16:17字数 1222阅读 8895 地址 Vue CLi3 ...

  3. 剑指offer:关于复制构造函数

    1:首先参看代码: #include "stdafx.h" #include "iostream" using namespace std; class A { ...

  4. leetcode-easy-others-268 Missing Number

    mycode   80.25% class Solution(object): def missingNumber(self, nums): """ :type nums ...

  5. kotlin之数组

    一.使用arrayOf函数定义可以存储任意值的数组 var arr1 = arrayOf(1,2,3,'a') println(arr1[3]) 二.使用arrayOfNulls函数定义数组 var ...

  6. 自定义view防支付成功页面

    package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.Canvas ...

  7. squid 3.5.2配置文件

    https://www.cnblogs.com/mchina/p/3812190.html 配置文件就加入下面这几句话: cache_mem 64 MB maximum_object_size 4 M ...

  8. win server2012r2上发布网站常见错误 "HTTP 错误 500.19 请求的页面的相关配置数据无效" 解决办法

    HTTP 错误 500.19 - Internal Server Error无法访问请求的页面,因为该页的相关配置数据无效. 问题“详细错误信息模块 IIS Web Core通知 BeginReque ...

  9. HCL试验2

    PC端配置:配置ip地址 交换机1配置:①创建VLAN system-view vlan 10 vlan 20 ②配置PC端接口 interface gi 1/0/1 port link-type a ...

  10. ARM汇编指令特点

    根据朱有鹏老师课程笔记整理而来: (汇编)指令是CPU机器指令的助记符,经过编译后会得到一串1 0组成的机器码,由CPU读取执行. (汇编)伪指令本质上不是指令(只是和指令一起写在代码中),它是编译器 ...