docker + grafana + prometheus

文章讲述了如何在10.9.9.9服务器上使用Docker部署Grafana和Prometheus,监控来自10.8.8.8/metrics的数据。Prometheus配置文件包括对自身和10.8.8.8的监控任务,Grafana用于数据的可视化展示,可以通过http://10.9.9.9:3000访问,使用默认的admin/admin登录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前提:已部署docker

监控数据来源于10.8.8.8/metrics,接下来将在10.9.9.9 的服务上部署grafana和prometheus,用于展示监控数据。

安装grafana

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

docker ps -a

安装prometheus

配置文件prometheus.yml

vi /tmp/prometheus.yml

vi /etc/prometheus/prometheus.yml

prometheus.yml文件内容如下,其中:

job_name为prometheus的任务,为监控本机10.9.9.9的prometheus服务。

job_name为metrics的任务,为监控10.8.8.8的数据。

global:
  scrape_interval: 30s
  scrape_timeout: 20s
scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.9.9.9:9090']
  - job_name: 'metrics'
    scrape_interval: 30s
    scrape_timeout: 20s
    metrics_path: "/metrics"
    static_configs:
      - targets: ['10.8.8.8:9173']

运行prometheus

docker run -p 9090:9090 -v /tmp/prometheus.yml:/etc/prometheus/prometheus.yml  prom/prometheus

查看监控数据

Prometheus: http://10.9.9.9:9090/targets

可查看所监控的目标主机的状态:

job_name为prometheus的任务,状态为UP,表示监控成功。

job_name为metrics的任务,状态为UP,表示监控成功。

Grafana: http://10.9.9.9:3000/

用户名:admin

密码:admin

可用来可视化展示数据,自定义配置需要展示监控的目标主机的数据。

### 集成 cAdvisor、PrometheusGrafana 实现容器资源监控 #### 安装与配置组件 为了实现 Docker 容器的全面监控,需安装三个主要组件:cAdvisor 负责收集容器性能指标;Prometheus 作为时间序列数据库保存这些数据;Grafana 则用来创建直观的数据面板。 对于 cAdvisor 的部署,在目标机器上启动该服务即可开始监测本地所有的容器实例[^1]。具体操作可以通过拉取官方镜像并运行容器完成: ```bash docker run \ --volume=/:/rootfs:ro \ --volume=/var/run:/var/run:rw \ --volume=/sys:/sys:ro \ --volume=/var/lib/docker/:/var/lib/docker:ro \ --publish=8080:8080 \ --detach=true \ --name=cadvisor \ google/cadvisor:latest ``` 接着是 Prometheus 的设置,这一步骤涉及下载对应的 Docker 映像文件以及编写简单的 `prometheus.yml` 文件指定数据抓取的目标地址列表,其中包括之前提到过的 cAdvisor API 地址[^2]。下面给出了一段典型的 Prometheus 启动命令及其配置样例: ```yaml global: scrape_interval: 15s scrape_configs: - job_name: 'cadvisor' static_configs: - targets: ['localhost:8080'] ``` ```bash docker pull prom/prometheus docker run -d -p 9090:9090 --name=prometheus -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus ``` 最后要做的就是引入 Grafana 来构建可视化的仪表板。同样地,这里也推荐采用 Docker 方式快速上线此应用,并将其连接至已有的 Prometheus 数据源以便于后续查询和绘图工作[^3]。以下是启动 Grafana 所需执行的一条简单指令: ```bash docker pull grafana/grafana docker run -d -p 3000:3000 --name=grafana grafana/grafana ``` 访问 http://<your-server-ip>:3000 即可进入 Grafana 登录界面,默认用户名密码均为 admin/admin 。登录成功后按照提示更改初始密码,并添加 Prometheus 为新的数据源,之后就可以利用内置模板或是自行设计图表来进行深入分析了。 #### 组件间协作机制 整个架构中各个部分相互配合紧密。cAdvisor 不断扫描所在节点上的所有活跃容器并将它们的各项参数上报给 Prometheus 存储起来形成历史记录库;而 Grafana 只负责从后者读取所需的时间序列片段进而渲染出易于理解的画面供管理员查看系统健康状况和发展趋势[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值