Docker学习笔记十三:Docker安装Prometheus

1|0介绍

1|1Prometheus介绍

  • 是一款基于时序数据库的开源监控告警系统,非常适合Kubernetes集群的监控。
  • 基本原理是通过HTTP协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控,输出被监控组件信息的HTTP接口被叫做exporter。

 

1|2常用exporter介绍 

  • node_exporter
    • 说明:收集Linux系统数据,默认端口号9100
    • 下载1:https://prometheus.io/download/#node_exporter
    • 下载2:https://github.com/prometheus/node_exporter/releases
  • mysql_exporter
    • 说明:收集MySQL数据库数据,默认端口号9104
    • 下载:https://prometheus.io/download/#mysqld_exporter
  • ...

 

2|0安装Prometheus

2|1下载

  • 命令:docker pull prom/prometheus:latest
  • 说明:安装可参考Docker  Hub官网说明的镜像的用法

 

2|2安装

1|0创建容器

  • a、准备“prometheus.yml”配置文件
    • 说明:如下配置文件可供复制,配置文件内容可根据需要添加相应配置
    • 配置:prometheus获取对应的exporter信息,都可以在该配置文件中配置新的“job_name”,配置文件之后需要重启服务,并保证对应的“exporter”服务监听启动成功。
复制代码
# my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Alertmanager configuration alerting: alertmanagers: - static_configs: - targets: # - alertmanager:9093 # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'prometheus' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['192.168.6.9:9090']
View Code
复制代码

  • b、创建映射目录
    • 命令:mkdir prometheus
    • 说明:创建了映射目录之后,可以将“prometheus.yml”文件放在该目录下

  • c、创建容器
复制代码
docker run -d \ --name prometheus \ -p 9090:9090 \ --privileged=true \ -v /opt/docker_data/prometheus/:/data \ -e TZ=Asia/Shanghai \ prom/prometheus:latest --config.file=/data/prometheus.yml # docker run:运行并启动容器 # -d:在后台运行容器,并输出容器ID # --name:设置容器的名称 # -p 9090:9090:容器的9090端口映射宿主机9090端口(程序访问端口) # --privileged=true:可选配置,目录映射时避免出现权限问题 # -v:设置"宿主机目录:容器目录"映射位置 # -e:设置时区、mysql的密码 # 执行安装的镜像信息,格式:名称:标签(REPOSITORY:TAG)
复制代码

1|0访问页面

  • prometheus默认的端口是9090,访问web页面查看对应的标签规则。如:http://xxxx.xxx.xxx.xxx:9090

 


__EOF__

本文作者零下一度的微笑
本文链接https://www.cnblogs.com/jason2018524/p/16994520.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   零下一度的微笑  阅读(1071)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示