使用docker-compose快速部署Prometheus+grafana环境
由于最近公司服务频繁出问题,老板很生气,下面的人都很不好过,于是老大让加一下业务监控,来观察线上数据状态。
但是由于qa环境数据量太少,所以自己搭建了一套环境做相关监控,并且写了个脚本模仿生产上的数据,并且做了很多指标,写了一些Grafana的PromQL语法,网上的资料也很少,我就来补充一下,这个下一章再讲。
注意:
docker和docker-compose请自行下载安装
创建相关目录并给予权限,持久化目录需要给777权限,否则容器启动失败
cd ~ && mkdir prometheus && chmod 777 prometheus
cd prometheus && mkdir grafana_data prometheus_data && chmod 777 grafana_data prometheus_data
vim docker-compose.yml
version: "3.7"
services:
node-exporter:
image: prom/node-exporter:latest
container_name: "node-exporter0"
ports:
- "9100:9100"
restart: always
prometheus:
image: prom/prometheus:latest
container_name: "prometheus0"
restart: always
ports:
- "9090:9090"
volumes:
- "./prometheus.yml:/etc/prometheus/prometheus.yml"
- "./prometheus_data:/prometheus"
grafana:
image: grafana/grafana
container_name: "grafana0"
ports:
- "3000:3000"
restart: always
volumes:
- "./grafana_data:/var/lib/grafana"
注:prometheus主机需要部署以上容器,其他被监控主机只需要部署node-exporter
3.prometheus配置文件(根据自己的服务器ip进行修改targets内容)
vim prometheus.yml
global:
scrape_interval: 15s # 默认抓取周期
external_labels:
monitor: 'codelab-monitor'
scrape_configs:
- job_name: 'node-exporter' #服务的名称
scrape_interval: 5s
metrics_path: /metrics #获取指标的url
static_configs:
- targets: ['139.224.224.229:9100'] # 这个为监听指定服务服务的ip和port,需要修改为自己的ip,貌似云服务必须用公网ip
4.docker-compose启动
docker-compose up -d # 挂载目录给权限,不然会启动失败
如果启动报如下的"没有权限"错误:
grafana0 | You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
grafana0 | mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
grafana0 | GF_PATHS_DATA='/var/lib/grafana' is not writable.
grafana0 | You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
grafana0 | mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
grafana0 | GF_PATHS_DATA='/var/lib/grafana' is not writable.
grafana0 | You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
grafana0 | mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
grafana0 | GF_PATHS_DATA='/var/lib/grafana' is not writable.
grafana0 | You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
grafana0 | mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
grafana0 | GF_PATHS_DATA='/var/lib/grafana' is not writable.
grafana0 | You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
grafana0 | mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
则需要将挂载目录赋予权限,即:
chmod 777 grafana_data/ prometheus_data/ #个人根据配置文件中具体的挂在目录进行权限修改
5.访问主机的9090端口可以查到Prometheus监控到的数据,访问3000端口是grafana的界面,账密admin/admin
6.配置监控,点击齿轮,选择Data Sources
7.点击Add data source
8.填写prometheus地址 ip+端口或者主机名+端口(需要配置hosts)
9.点击save&test
10.点击+号,选择import
11.输入模板号9276,点击load。 8919

11.导入模板完成
使用docker-compose快速部署Prometheus+grafana环境的更多相关文章
- 利用Docker Compose快速搭建本地测试环境
前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...
- 使用 Docker Compose 快速构建 TiDB 集群
本文档介绍如何在单机上通过 Docker Compose 快速一键部署一套 TiDB 测试集群.Docker Compose 可以通过一个 YAML 文件定义多个容器的应用服务,然后一键启动或停止. ...
- 用Docker swarm快速部署Nebula Graph集群
用Docker swarm快速部署Nebula Graph集群 一.前言 本文介绍如何使用 Docker Swarm 来部署 Nebula Graph 集群. 二.nebula集群搭建 2.1 环境准 ...
- Docker Compose 一键部署LNMP
Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...
- Docker Compose 一键部署Nginx代理Tomcat集群
Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...
- Docker Compose 一键部署多节点爬虫程序
Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── cento ...
- 如何快速部署 Prometheus?- 每天5分钟玩转 Docker 容器技术(85)
上一节介绍了 Prometheus 的核心,多维数据模型.本节演示如何快速搭建 Prometheus 监控系统. 环境说明 我们将通过 Prometheus 监控两台 Docker Host:192. ...
- 使用Prometheus监控docker compose方式部署的ES
需求 收集 ES 的指标, 并进行展示和告警; 现状 ES 通过 docker compose 安装 所在环境的 K8S 集群有 Prometheus 和 AlertManager 及 Grafana ...
- 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 ...
- [phvia/dkc] Docker Compose 快速构建(LNMP+Node)运行环境
快速构建(LNMP+Node)运行环境. dkc 在此作为 docker-compose 的缩写,你可以理解为 alias dkc=docker-compose 准备 安装 docker 选择1) 从 ...
随机推荐
- 直播预告 | 字节跳动云原生大数据分析引擎 ByConity 与 ClickHouse 有何差异?
ByContiy 是字节跳动开源的一款云原生的大数据分析引擎,擅长交互式查询和即席查询,具有支持多表关联复杂查询.集群扩容无感.离线批数据和实时数据流统一汇总等特点. ByConity 从1月份发布开 ...
- vue前端开发仿钉图系列(7)底部数据列表的开发详解
底部数据列表主要是记录图层下面对应的点线面数据,点击单元行或者查看或者编辑,弹出右侧编辑页面,点击单元行地图定位到相应的绘图位置.里面的难点1是动态绑定字段管理编辑的字段以及对应的value值,2是点 ...
- 云原生爱好者周刊:Lens 5.2 发布,支持 M1 芯片
云原生一周动态要闻: Lens 5.2 发布 CNI 1.0.1 发布 K8ssandra 从 Helm 迁移到 Operator Amazon EKS Anywhere – 现在普遍可用于在本地创建 ...
- Chrome使用回退,出现表单提交失败,ERR_CACHE_MISS问题
是什么.为什么.怎么办 "ERR_CACHE_MISS" 错误通常发生在你使用浏览器的"返回"按钮时.这种错误与浏览器处理缓存数据的方式有关,特别是在处理表单和 ...
- 连接ORACLE数据库,是否必须要安装oracle客户端
公司升级Oracle版本(12g~19C),服务器端是DBA团队升级.客户端的升级工作由各个团队自己负责完成.突然想为什么Oracle提供的JDBC Driver需要客户端的软件.没有Oracle客户 ...
- Nuxt.js 应用中的 server:devHandler 事件钩子详解
title: Nuxt.js 应用中的 server:devHandler 事件钩子详解 date: 2024/10/26 updated: 2024/10/26 author: cmdragon e ...
- Ubuntu安装Edge浏览器,好用的浏览器!!
秉持着简介的原则,我这里把重要的步骤记录下来,减少废话的使用量,大大缩短你们看的时间,好吧.. 步骤 首先,使用以下命令更新您的系统: sudo apt update 然后,使用以下命令安装Micro ...
- 基于Hadoop实现的对历年四级单词的词频分析(入门级Hadoop项目)
前情提要:飞物作者屡次四级考试未能通过,进而恼羞成怒,制作了基于Hadoop实现的对历年四级单词的词频分析项目,希望督促自己尽快通过四级(然而并没有什么卵用) 项目需求:Pycharm.IDEA.Li ...
- 3.4 Linux文件(目录)命名规则
介绍完 Linux 系统中目录结构之后,读者一定想知道如何为文件或目录命名. 我们知道,在 Linux 系统中,一切都是文件,既然是文件,就必须要有文件名.同其他系统相比,Linux 操作系统对文件或 ...
- 【已解决】无法打开受保护的PDF
笔者在使用三星笔记导入PDF时提示"无法打开受保护的PDF",经查询需要使用在线破解工具来破解,重新下载就可以了 方法一:在线破解网站(适用于文件较小的PDF) 这里提供两个破解在 ...