部署环境:
 
    两台 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. Redis Cluster Cache with SpringBoot

    前提: 根据  https://www.cnblogs.com/luffystory/p/12081074.html 创建好Redis集群 <project xmlns="http:/ ...

  2. Kotlin学习入门笔记

    参考资料 官网:https://kotlinlang.org/ 官方文档:https://kotlinlang.org/docs/reference/ Kotlin 源码:https://github ...

  3. 浅谈2-SAT

    引入: 相信大家都了解过差分约束系统.差分约束系统的大体意思就是给出一些有某种关系的变量,问你是否有某种赋值使得这些关系全部成立 其实\(2-SAT\)的题目描述和这个很像(虽然解法不一样) 那么\( ...

  4. leetcode 94二叉树的中序遍历

    递归算法C++代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; ...

  5. prism 4 模块配置 管理

    本章导读: 第四章讲述了模块化应用程序开发中模块的生命周期,生成方法,实例引用的存活时间等关键内容,和经常会应用到的包含定义模块在内的7种场景(以Unity为例,也说明了MEF与Unity中可能不同的 ...

  6. Linux_RHEL7_YUM

    目录 目录 前言 RPM rpm常用指令 YUM yum常用指令RHEL7 最后 前言 yum:yellow dog updater modifier(黄狗包管理器),是RHEL默认的基于RPM包的软 ...

  7. layer的iframe弹框中父子元素的传值

    项目中,左侧导航树,右侧是 iframe 嵌套的页面,在右侧页面中又有layer弹框,可以说是有两层 iframe 框架. 所以查询网上的parent什么的方法都不能用.自己摸索的下面的方法: 1.父 ...

  8. zabbix监控httpd进程、添加动作、报警媒介类型

    1.在server_agent端创建脚本 mkdir -p /usr/local/etc/zabbix_scripts vi /usr/local/etc/zabbix_scripts/check_h ...

  9. java调用支付宝 支付api 【沙箱环境】

    由于支付宝支付api需要各种备案,但学校项目需要引入支付功能  先演示  ,所以采用 沙箱环境 一.登录支付宝 开放平台 及配置相关 https://openhome.alipay.com/platf ...

  10. Linux小技巧:du -sh * —— 查询文件目录大小

    du -ach * #这个能看到当前目录下的所有文件占用磁盘大小和总大小 du -sh #查看当前目录总大小 du -sh * #查看所有子目录大小 du -sh ./* #查看当前目录下所有文件/文 ...