CentOS7下简单搭建Prometheus+Grafana监控系统(上)

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: CentOS7下简单搭建Prometheus+Grafana监控系统
+关注继续查看

640.jpg


Prometheus is an open-source systems monitoring and alerting toolkit originally built at SoundCloud.


1、Features


Prometheus's main features are:

a multi-dimensional data model with time series data identified by metric name and key/value pairs

PromQL, a flexible query language to leverage this dimensionality

no reliance on distributed storage; single server nodes are autonomous

time series collection happens via a pull model over HTTP

pushing time series is supported via an intermediary gateway

targets are discovered via service discovery or static configuration

multiple modes of graphing and dashboarding support


2、Components


The Prometheus ecosystem consists of multiple components, many of which are optional:

the main Prometheus server which scrapes and stores time series data

client libraries for instrumenting application code

a push gateway for supporting short-lived jobs

special-purpose exporters for services like HAProxy, StatsD, Graphite, etc.

an alertmanager to handle alerts

various support tools

Most Prometheus components are written in Go, making them easy to build and deploy as static binaries.


3、Architecture


This diagram illustrates the architecture of Prometheus and some of its ecosystem components:

640.png


Prometheus scrapes metrics from instrumented jobs, either directly or via an intermediary push gateway for short-lived jobs. It stores all scraped samples locally and runs rules over this data to either aggregate and record new time series from existing data or generate alerts. Grafana or other API consumers can be used to visualize the collected data.


下面介绍CentOS7下简单搭建Prometheus+Grafana监控系统


1、先官网下载安装包

https://prometheus.io/download/
1)prometheus-2.17.2.linux-amd64.tar.gz
2)node_exporter-0.18.1.linux-amd64.tar.gz

640.png

grafana官网下载:https://grafana.com/grafana/download

3)https://dl.grafana.com/oss/release/grafana-6.7.3-1.x86_64.rpm


640.png


上传安装包到CentOS7服务器上

640.png


2、安装并配置prometheus服务端

groupadd prometheus
useradd -g prometheus -m -d /opt/prometheus/ -s /sbin/nologin prometheus
tar -zxf /data/prometheus-2.17.2.linux-amd64.tar.gz -C /opt
cd /opt/
mv prometheus-2.17.2.linux-amd64/* prometheus
cd prometheus
chown -R prometheus *

640.png

prometheus配置文件语法校验方法


./promtool check config prometheus.yml

640.png

先采用默认配置启动Prometheus Server

640.png


登录Prometheus Server的Web界面http://192.168.31.80:9090可以看到只有一个Targets:http://127.0.0.1:9090/metrics


640.png

设置Prometheus为系统服务,并配置为开机自启动

touch /usr/lib/systemd/system/prometheus.service
chown prometheus:prometheus /usr/lib/systemd/system/prometheus.service
vi /usr/lib/systemd/system/prometheus.service

并加入如下配置

[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/opt/prometheus/prometheus --config.file=/opt/prometheus/prometheus.yml --web.enable-lifecycle --storage.tsdb.path=/opt/prometheus/data --storage.tsdb.retention=60d
Restart=on-failure
[Install]
WantedBy=multi-user.target

640.png

启动参数说明:


--config.file -- 指明prometheus的配置文件路径

--web.enable-lifecycle -- 指明prometheus配置更改后可以进行热加载

--storage.tsdb.path -- 指明监控数据存储路径

--storage.tsdb.retention --指明数据保留时间


启动服务,并设置为开机自启动

systemctl daemon-reload
systemctl enable prometheus.service
systemctl start prometheus.service 
systemctl status prometheus.service

640.png

可以看到已经报错了,服务未正常启动


排错


/opt/prometheus下data目录属主不对导致


解决办法:chown -R prometheus:prometheus *


640.png


3、安装node_exporter


比如就在该服务器上安装node_exporter

cd /data
tar -zxf node_exporter-0.18.1.linux-amd64.tar.gz -C /usr/local/
cd /usr/local/
mv node_exporter-0.18.1.linux-amd64 node_exporter
cd node_exporter/
ll -trh

640.png

创建系统服务

touch /usr/lib/systemd/system/node_exporter.service 
chown prometheus:prometheus /usr/lib/systemd/system/node_exporter.service 
chown -R prometheus:prometheus /usr/local/node_exporter* 
vi /usr/lib/systemd/system/node_exporter.service

加入如下行

[Unit]
Description=node_exporter
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target

640.png

相关文章
|
9天前
|
Prometheus Cloud Native 网络安全
Prometheus+Grafana+Alertmanager部署教程(超详细)
Prometheus+Grafana+Alertmanager部署教程(超详细)
53 1
|
9天前
|
网络安全
systemctl启动prometheus+grafana环境
systemctl启动prometheus+grafana环境
17 0
|
9天前
|
Prometheus Cloud Native
Mac下安装 Prometheus+Grafana
Mac下安装 Prometheus+Grafana
15 0
|
22天前
|
Prometheus Cloud Native
kubenetes部署prometheus+grafana
kubenetes部署prometheus+grafana
27 0
|
2月前
|
Prometheus 监控 Cloud Native
一文带你吃透MySQL性能监控解决方案:Prometheus+Grafana
MySQL性能监控解决方案:Prometheus+Grafana问题描述 在对MySQL进行主从复制、分库分表等架构之后,MySQL的节点数量变得越来越多,无法实时监控到每一台MySQL节点,此时应当如何处理? 问题分析与解决方案 针对上面的问题,需要用Prometheus + Grafana对服务器进行统一监控、规划与报警,时刻关注服务器的响应情况。当出现宕机或异常时,Grafana可迅速通过短信、钉钉、邮件等方式通知相关人员,进而快速对生产环节进行补救。 Prometheus概述与适用场景 Prometheus 是 一 个 开 源 的 服 务 监 控 系 统 和 时 间 序 列 数 据
101 0
|
2月前
|
Prometheus Kubernetes 监控
【 Kubernetes的Kiali、prometheus、grafana和ELK系统】
【 Kubernetes的Kiali、prometheus、grafana和ELK系统】
|
2月前
|
Prometheus Kubernetes 监控
Prometheus+Grafana+Alertmanager搭建全方位的监控告警系统-超详细文档(下)
Prometheus+Grafana+Alertmanager搭建全方位的监控告警系统-超详细文档
|
2月前
|
Prometheus 监控 Kubernetes
Prometheus+Grafana+Alertmanager搭建全方位的监控告警系统-超详细文档(上)
Prometheus+Grafana+Alertmanager搭建全方位的监控告警系统-超详细文档
|
3月前
|
JSON Prometheus 监控
ClickHouse监控系统Prometheus+Grafana
ClickHouse监控系统Prometheus+Grafana
119 0
|
3月前
|
弹性计算 监控 测试技术
基于Prometheus+Grafana的PolarDB-X监控体系
《PolarDB-X 动手实践》系列第十期,体验如何监控PolarDB-X集群。
365 1
相关产品
云迁移中心
推荐文章
更多