prometheus的搭建部署

Posted chenxin23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了prometheus的搭建部署相关的知识,希望对你有一定的参考价值。

环境准备:1 centos7.0

2.安装需要用到的插件(官网下载)

​https://prometheus.io/download/​

  1. prometheus-2.32.1.linux-amd64.tar.gz 服务端组件
  2. node_exporter-1.3.1.linux-amd64.tar.gz 监控端组件
  3. grafana-enterprise-8.3.3-1.x86_64.rpm 图形界面组件
  4. alertmanager-0.23.0.linux-amd64.tar.gz 告警管理组件

3.​我一般讲这些文件放到/opt下,部署一般都是弄到/usr/local

4 解压缩安装包,放到/usr/local

tar -zxvf  prometheus-2.32.1.linux-amd64.tar.gz -C /usr/local

5  修改文件夹名称

mv prometheus-2.32.1.linux-amd64 prometheus

6 修改prometheus.yml配置文件

   默认配置文件说明:

默认prometheus配置文件

[root@node00 prometheus]# cat prometheus.yml.default

# 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 its 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: [localhost:9090] 节点配置文件


  • global: 此片段指定的是prometheus的全局配置, 比如采集间隔,抓取超时时间等。
  • rule_files: 此片段指定报警规则文件, prometheus根据这些规则信息,会推送报警信息到alertmanager中。
  • scrape_configs: 此片段指定抓取配置,prometheus的数据采集通过此片段配置。
  • alerting: 此片段指定报警配置, 这里主要是指定prometheus将报警规则推送到指定的alertmanager实例地址。
  • remote_write: 指定后端的存储的写入api地址。
  • remote_read: 指定后端的存储的读取api地址。
 

7.设置prometheus用户
groupadd prometheus
useradd -g prometheus -s /sbin/nologin prometheus
8.给prometheus用户赋权
cd ~
chown -R prometheus:prometheus /usr/local/prometheus/
9.创建prometheus运行数据目录
mkdir -p /var/lib/prometheus
chown -R prometheus:prometheus /var/lib/prometheus/
10.设置开机启动
touch /usr/lib/systemd/system/prometheus.service
chown prometheus:prometheus /usr/lib/systemd/system/prometheus.service
11 修改prometheus.service
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
[Service]

Type设置为notify时,服务会不断重启

Type=simple
User=prometheus

--storage.tsdb.path是可选项,默认数据目录在运行目录的./dada目录中

ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/Prometheus --web.listen-address=:9090
Restart=on-failure
[Install]
WantedBy=multi-user.target
注意:默认端口可以修改,可以用以下命令启动
./prometheus --config.file=prometheus.yml --web.listen-address=:10001 &
12.检查配置文件是否有问题
./promtool check config prometheus.yml 用来检查yml配置文件问题

13 启动服务

systemctl enable prometheus

systemctl start prometheus

systemctl status Prometheus

14 ​​http://localhost:9090/graph​​默认打开prometheus界面

prometheus的搭建部署_配置文件

点击Status>Targets,可以看到若干个配置好的job node,也就是之前在prometheus.yml配置文件中,配置好的需要监控的节点。当State为"UP"时,表示已连接并获取其监控指标,为"DOWN"时则需要根据Error来排查错误原因。



以上是关于prometheus的搭建部署的主要内容,如果未能解决你的问题,请参考以下文章

Prometheus+Grafana监控系统搭建

基于Prometheus+Grafana搭建监控平台(Windows/Linux环境exporter部署)

Kubernetes第七篇:使用kubernetes部署prometheus+grafana监控系统(Kubernetes工作实践类)

Kubernetes第七篇:使用kubernetes部署prometheus+grafana监控系统(Kubernetes工作实践类)

Kubernetes_08_使用kubernetes部署prometheus+grafana监控系统(Kubernetes工作实践类)

Prometheus容器监控环境部署