于今腐草无萤火,终古垂杨有暮鸦。这篇文章主要讲述prometheus的搭建部署相关的知识,希望能为你提供帮助。
环境准备:1 centos7.0
2.安装需要用到的插件(官网下载)
??https://prometheus.io/download/??
- prometheus-2.32.1.linux-amd64.tar.gz服务端组件
- node_exporter-1.3.1.linux-amd64.tar.gz监控端组件
- grafana-enterprise-8.3.3-1.x86_64.rpm图形界面组件
- alertmanager-0.23.0.linux-amd64.tar.gz告警管理组件
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时,服务会不断重启【prometheus的搭建部署】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界面
点击Status> Targets,可以看到若干个配置好的job node,也就是之前在prometheus.yml配置文件中,配置好的需要监控的节点。当State为"UP"时,表示已连接并获取其监控指标,为"DOWN"时则需要根据Error来排查错误原因。
推荐阅读
- 2操作系统的发展历史
- k8s-apiServer 准入控制插件(webhook)
- (服务运维)cacti安装和配置管理
- e-2高级存储-stratis-vdo-NFS
- Redis Cluster集群操作
- linux中管理硬盘的命令
- win8.1系统下如何将自带地图程序改成中文【图文】
- Windows 8系统下怎样清除无线wifi连接历史记录
- win8.1系统无法连接到此网络提示网络受限无法正常上网