docker安装prometheus+Granfan并监控容器

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 【9月更文挑战第14天】本文介绍了在Docker中安装Prometheus与Grafana并监控容器的步骤,包括创建配置文件、运行Prometheus与Grafana容器,以及在Grafana中配置数据源和创建监控仪表盘,展示了如何通过Prometheus抓取数据并利用Grafana展示容器的CPU使用率等关键指标。

以下是在 Docker 中安装 Prometheus 和 Grafana 并监控容器的步骤:


一、安装 Prometheus


  1. 创建一个目录用于存储 Prometheus 的配置文件:


mkdir prometheus && cd prometheus


  1. 创建一个名为 prometheus.yml 的配置文件,内容如下:


global:
     scrape_interval: 15s
   scrape_configs:
     - job_name: 'prometheus'
       static_configs:
         - targets: ['localhost:9090']
     - job_name: 'docker'
       static_configs:
         - targets: ['docker.for.mac.host.internal:9323']


这个配置文件定义了 Prometheus 抓取数据的频率和目标。在 scrape_configs 部分,我们定义了两个作业:一个是监控 Prometheus 自身,另一个是监控 Docker。请注意,如果你使用的不是 macOS,可能需要调整 docker.for.mac.host.internal 为其他地址。


  1. 运行 Prometheus 容器:


docker run -d --name prometheus -p 9090:9090 -v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus


这将在后台运行一个 Prometheus 容器,并将本地的配置文件挂载到容器中。


二、安装 Grafana


  1. 运行 Grafana 容器:


docker run -d --name grafana -p 3000:3000 grafana/grafana


这将在后台运行一个 Grafana 容器,并将 Grafana 的端口 3000 映射到主机的端口 3000。


三、配置 Grafana 以显示 Prometheus 数据


  1. 打开浏览器,访问 http://localhost:3000。默认的用户名和密码是 admin/admin
  2. 登录后,点击左侧菜单栏的 “Configuration”(配置),然后选择 “Data Sources”(数据源)。
  3. 点击 “Add data source”(添加数据源),选择 “Prometheus”。
  4. 在 “Settings”(设置)选项卡中,输入以下信息:
  • Name:可以自定义一个名称,例如 “Prometheus”。
  • URL:http://localhost:9090(如果 Prometheus 运行在不同的主机上,请相应地调整这个地址)。
  1. 点击 “Save & Test”(保存并测试)按钮,如果一切正常,你应该看到 “Data source is working”(数据源正常工作)的消息。


四、创建仪表盘以监控容器


  1. 点击左侧菜单栏的 “+” 号,然后选择 “Dashboard”(仪表盘)。
  2. 在仪表盘编辑页面,点击 “Add Panel”(添加面板)。
  3. 在面板编辑页面,选择 “Metrics”(指标)选项卡。
  4. 在 “Query”(查询)部分,选择你之前创建的 Prometheus 数据源,并输入查询语句来获取你想要监控的指标。例如,要获取容器的 CPU 使用率,可以使用以下查询语句:


sum(rate(container_cpu_usage_seconds_total{id="/"}[1m])) by (id)


  1. 根据需要调整面板的设置,如标题、颜色、轴标签等。
  2. 点击 “Save”(保存)按钮保存仪表盘。


现在,你应该能够在 Grafana 中看到监控容器的仪表盘了。你可以根据自己的需求进一步定制和扩展这个设置,例如添加更多的监控指标、创建警报等。

相关文章
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
254 5
|
1月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
127 6
|
1月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
274 2
|
3月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
683 108
|
4月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
370 57
|
1月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
3月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
236 16