docker安装prometheus+Granfan并监控容器

本文涉及的产品
可观测监控 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 中看到监控容器的仪表盘了。你可以根据自己的需求进一步定制和扩展这个设置,例如添加更多的监控指标、创建警报等。

相关文章
|
2月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
189 57
|
2月前
|
存储 监控 Java
如何对迁移到Docker容器中的应用进行性能优化?
如何对迁移到Docker容器中的应用进行性能优化?
200 58
|
2月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
259 11
|
2月前
|
缓存 Java Docker
如何对应用代码进行优化以提高在Docker容器中的性能?
如何对应用代码进行优化以提高在Docker容器中的性能?
177 1
|
1月前
|
安全 持续交付 Docker
Docker:重塑现代软件交付的容器引擎
Docker:重塑现代软件交付的容器引擎
|
1月前
|
运维 测试技术 Docker
Docker:轻量级容器化技术革命
Docker:轻量级容器化技术革命
|
1月前
|
存储 持续交付 Docker
Docker:颠覆传统开发的轻量级容器革命
Docker:颠覆传统开发的轻量级容器革命
|
3月前
|
Docker 容器
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
|
3月前
|
Ubuntu 安全 数据安全/隐私保护
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
311 12