docker安装prometheus+Granfan并监控容器

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
可观测监控 Prometheus 版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 【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 中看到监控容器的仪表盘了。你可以根据自己的需求进一步定制和扩展这个设置,例如添加更多的监控指标、创建警报等。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
相关文章
|
4天前
|
弹性计算 运维 持续交付
探索Docker容器化技术及其在生产环境中的应用
探索Docker容器化技术及其在生产环境中的应用
26 5
|
15天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
5天前
|
运维 Docker 微服务
掌握 Docker Compose:简化你的多容器应用部署
在微服务架构和容器化技术普及的今天,管理多容器部署变得颇具挑战。Docker Compose 通过一个 YAML 文件定义和运行多容器应用,简化了部署和运维。本文介绍其基本概念、使用方法及优势,包括服务、项目、卷和网络等核心概念,并提供从安装到管理服务的详细步骤,助你轻松掌握 Docker Compose,提高开发效率和应用运维质量。
|
2天前
|
存储 Prometheus 监控
在Ubuntu系统上安装与配置Prometheus的步骤
通过以上步骤,您应该已经成功在Ubuntu系统上安装并配置了Prometheus。您现在可以开始使用Prometheus收集和分析您的系统和应用程序的指标数据了。
11 1
|
4天前
|
Cloud Native 持续交付 Docker
探索容器化技术Docker的奥秘
探索容器化技术Docker的奥秘
17 3
|
13天前
|
Cloud Native 持续交付 Docker
云原生技术实践:Docker容器化部署教程
【9月更文挑战第4天】本文将引导你了解如何利用Docker这一云原生技术的核心工具,实现应用的容器化部署。文章不仅提供了详细的步骤和代码示例,还深入探讨了云原生技术背后的哲学,帮助你理解为何容器化在现代软件开发中变得如此重要,并指导你如何在实际操作中运用这些知识。
|
Prometheus 监控 Cloud Native
基于Docker+Prometheus+Grafana监控SpringBoot健康信息
使用最新的开源监控系统,监控springboot应用程序
7266 0
|
16天前
|
Ubuntu Linux pouch
Docker容器管理工具
文章介绍了Docker容器管理工具,以及早期使用的LXC容器管理工具,包括它们的安装、使用和相关技术特点。
43 10
Docker容器管理工具
|
16天前
|
监控 数据管理 pouch
Docker容器技术概览
关于Docker容器技术的概览,包括Docker的优势、劣势、核心技术、容器所依赖的技术,以及Docker容器的管理和编排工具。
45 7
Docker容器技术概览
|
15天前
|
NoSQL 应用服务中间件 Redis
Docker跨宿主机容器通信-通过网络跨宿主机互联
这篇文章介绍了Docker容器跨宿主机通信的实现方法,包括Docker的四种网络模式(host、none、container、bridge)以及如何通过修改网络配置和添加路由规则来实现不同宿主机上的容器之间的互联。
42 0
Docker跨宿主机容器通信-通过网络跨宿主机互联