普罗米修斯-docker安装
1、只有一台服务器,所以使用docker来进行试验
#安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
#查看安装版本
 docker --version
#查看安装是否成功
 docker ps -a
如果报以下错误,是因为docker没启动
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
#启动docker
systemctl restart docker
#查看docker 
docker ps -a 
#输出
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
2、安装普罗米修斯
Prometheus Server
Prometheus组件中的核心部分,收集和存储时间序列数据,提供PromQL查询语言的支持。内置的 Express Browser UI,通过这个 UI 可以直接通过 PromQL 实现数据的查询以及可视化。
Exporters
将监控数据采集的端点通过HTTP服务的形式暴露给Prometheus Server,Prometheus Server通过访问该Exporter提供的Endpoint端点,即可以获取到需要采集的监控数据
PushGateway
主要是实现接收由 Client push 过来的指标数据,在指定的时间间隔,由主程序来抓取。由于 Prometheus 数据采集基于 Pull 模型进行设计,因此在网络环境的配置上必须要让 Prometheus Server 能够直接与 Exporter 进行通信。当这种网络需求无法直接满足时,就可以利用 PushGateway 来进行中转。可以通过 PushGateway 将内部网络的监控数据主动 Push 到 Gateway 当中。而 Prometheus Server 则可以采用同样 Pull 的方式从 PushGateway 中获取到监控数据。
Alertmanager
管理告警,主要是负责实现报警功能。在 Prometheus Server 中支持基于 PromQL 创建告警规则,如果满足PromQL定义的规则,则会产生一条告警,而告警的后续处理流程则由 AlertManager 进行管理。在 AlertManager 中我们可以与邮件,Slack 等等内置的通知方式进行集成,也可以通过 Webhook 自定义告警处理方式。AlertManager 即 Prometheus 体系中的告警处理中心。

docker 拉取镜像
#下载镜像
#收集服务器硬件和操作系统信息(被监控)
docker pull prom/node-exporter
#收集mysql使用情况数据信息
docker pull prom/mysqld-exporter
#负责收集服务器运行的docker容器信息(被监控)
docker pull google/cadvisor
#普罗米修斯监控服务
docker pull prom/prometheus
#用于展示普罗米修斯监控的图形化界面
docker pull grafana/grafana
 
拉取镜像结束
docker images
 
REPOSITORY             TAG       IMAGE ID       CREATED        SIZE
grafana/grafana        latest    e9fdff47a6dd   7 days ago     293MB
prom/prometheus        latest    8c01021bb2f4   2 weeks ago    211MB
prom/mysqld-exporter   latest    121b8a7cd052   4 months ago   17.8MB
prom/node-exporter     latest    1dbe0e931976   7 months ago   20.9MB
google/cadvisor        latest    eb1210707573   3 years ago    69.6MB
安装监控
# 安装Node Exporter 来收集硬件信息
docker run -d -p 9100:9100 \
-v "/proc:/host/proc" \
-v "/sys:/host/sys" \
-v "/:/rootfs" \
-v "/etc/localtime:/etc/localtime" \
--net=bridge \
prom/node-exporter \
--path.procfs /host/proc \
--path.sysfs /host/sys \
--collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"
 
# 安装cAdvisor 来收集容器信息 所有节点运行以下命令来安装cAdvisor
docker run -d \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
--privileged=true \
-v "/etc/localtime:/etc/localtime" \
google/cadvisor:latest
 
# 查看docker的ip地址
ifconfig | grep -A 1 docker0
 
 
# prometheus.yml的内容如下
# 其中targets中的网址是对应服务器所在的地址
global:
  scrape_interval:     20s
  evaluation_interval: 20s
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
      labels:
          instance: 'prometheus'
  - job_name: 'linux'
    static_configs:
    - targets: ['localhost:9100']
  - job_name: 'cadvisor'
    static_configs:
    - targets: ['localhost:8080']
# 创建prometheus容器
docker run -itd --name prometheus -p 9090:9090 \
-v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-v /opt/prometheus/rules/:/etc/prometheus/rules/ \
-v /etc/localtime:/etc/localtime:ro \
prom/prometheus
在DockerMachine上运行Grafana, http://机器地址:3000,登录用admin 密码为刚创建Grafana时的admin8888,
docker run -d -i -p 3000:3000 \
-v "/etc/localtime:/etc/localtime" \
-e "GF_SERVER_ROOT_URL=http://grafana.server.name" \
-e "GF_SECURITY_ADMIN_PASSWORD=admin8888" \
--net=bridge \
grafana/grafana
验证安装是否成功
浏览器访问:http://promethus所在的服务器地址:9090
普罗米修斯-docker安装的更多相关文章
- 监控神器-普罗米修斯Prometheus的安装
		
搬砖党的福音:普罗米修斯-监控神器 功能: 在业务层用作埋点系统 Prometheus支持多种语言(Go,java,python,ruby官方提供客户端,其他语言有第三方开源客户端).我们可以通过客户 ...
 - 普罗米修斯!Ubuntu下prometheus监控软件安装使用
		
*Prometheus* 是一个开源的服务监控系统和时间序列数据库 官方网站:prometheus.io 一.安装prometheus cd /usr/local/ #进入安装目录 wg ...
 - 记录一次k8s环境尝试过程(初始方案,现在已经做过很多完善,例如普罗米修斯)
		
记录一次Team k8s环境搭建过程(初始方案,现在已经做过很多完善,例如普罗米修斯) span::selection, .CodeMirror-line > span > span::s ...
 - 当ABAP遇见普罗米修斯
		
Jerry每次在工作场合中同Prometheus(普罗米修斯)打交道时,都会"出戏",因为这个单词给我的第一印象,并不是用go语言实现的微服务监控利器,而是名导雷德利·斯科特(Ri ...
 - 普罗米修斯Prometheus监控安装
		
普罗米修斯Prometheus监控安装 架构: 服务端:192.168.0.204 客户端:192.168.0.206 环境准备:所有节点安装go 语言环境 rz go1.12.linux-amd64 ...
 - Prometheus普罗米修斯快速入门
		
欢迎来到普罗米修斯! Prometheus是一个监控平台,通过从监控目标的抓取HTTP端点上获取指标. 本指南将展示如何使用和安装Promethues,配置和监视第一个资源.还将下载并安装导出器Exp ...
 - (2012年旧文)纪念史蒂夫乔布斯---IT界的普罗米修斯
		
谈苹果与乔布斯系列一 IT界的普罗米修斯 纪念PC界的先驱 史蒂夫乔布斯 2012-4-5 清明节,纪念IT时代的开创人—伟大的史蒂夫 乔布斯. 没有乔布斯,计算机还是属于一群科技人士的工具,没有漂 ...
 - 在Grafana使用普罗米修斯
		
aaarticlea/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IE ...
 - 一步步教你用Prometheus搭建实时监控系统系列(一)——上帝之火,普罗米修斯的崛起
		
上帝之火 本系列讲述的是开源实时监控告警解决方案Prometheus,这个单词很牛逼.每次我都能联想到带来上帝之火的希腊之神,普罗米修斯.而这个开源的logo也是火,个人挺喜欢这个logo的设计. 本 ...
 - 普罗米修斯+grafana监控k8s
		
其实现原理有点类似ELK.node-exporter组件负责收集节点上的metrics监控数据,并将数据推送给prometheus, prometheus负责存储这些数据,grafana将这些数据通过 ...
 
随机推荐
- 通过URL地址将图片保存到本地
			
今天一朋友问我如何通过URL地址将图片保存下来. 特地找了些资源,实现了一下代码: using System; using System.Drawing; using System.Drawing.I ...
 - 【DS】1.2
			
top-iron man 算法 效率度量 时间T=T(n) 1.顺序忽略2.只选一个基本操作分析3.多层嵌套只考虑最深的循环循环了几次 test1: test2: 空间 原地工作:算法所需内 ...
 - Diffusers中基于Stable Diffusion的哪些图像操作
			
目录 辅助函数 Text-To-Image Image-To-Image In-painting Upscale Instruct-Pix2Pix 基于Stable Diffusion的哪些图像操作们 ...
 - 使用 Three.js 的 3D 制作动画场景
			
推荐:将 NSDT场景编辑器 加入你的3D开发工具链. 由于 GSL 语法的复杂性,对于许多开发人员来说 WebGL 是一个未知的领域.但是有了 Three.js,在浏览器中 3D 的实现变得简单.下 ...
 - 在VSCode中配置代码自动 eslint 格式化 (实测有用)
			
一.Eslint Eslint 是用来检测和规范代码格式的工具,应用在工程化项目中,可以保证项目代码格式的一致性和规范性,大大提升了代码的可读性. 二.配置过程 本博客是讲述对一个已经引用 esl ...
 - swiper列数 slidesPerView属性决定
			
swiper轮播一行有几列如下决定 slidesPerView为3是三列,不写一列 // 初始化文章swiper var newsSwiper = new Swiper('#news-swiper', ...
 - 如何在js中把对象object追加到数组中?
			
arrObj 是array类型,如何追加数据? var arrObj =[] for(var i = 0;i<2;i++){ var obj = {} obj.ass_head_img = ' ...
 - Postgresql CTE解析
			
一.简介 WITH提供了一种方式来书写在一个大型查询中使用的辅助语句.这些语句通常被称为公共表表达式或CTE(Common Table Expressions),它们可以被看成是定义只在一个查询中存在 ...
 - npm -D与-S
			
--save == -S -S, --save 安装包信息将加入到dependencies(生产阶段的依赖,也就是项目运行时的依赖,就是程序上线后仍然需要依赖) --save-dev == -D -D ...
 - 如何设置QGraphicsItem线宽不随QGraphicsView缩放而变小或变大
			
很简单,只需要重写一下Item中的paint()方法 void my_line_item::paint(QPainter *painter, const QStyleOptionGraphicsIte ...