作为监控系统的后起之秀,prometheus的安装可谓非常简单,不需要第三方的依赖(数据库、缓存、PHP之类的)。下面演示如何二进制安装prometheus、使用 Node Exporter 采集主机信息并使用Grafana来进行图形化的展示。
1. 安装Prometheus Server
Prometheus基于Golang编写,编译后的软件包,不依赖于任何的第三方依赖。用户只需要下载对应平台的二进制包,解压并且添加基本的配置即可正常启Prometheus Server。
1.1 下载并解压二进制安装包
通过prometheus的官网,我们下载最新版本的prometheus,目前看到的最新版本是 2.13.0,这是在2019-10-04日的版本。
#下载、解压、创建软链接
wget https://github.com/prometheus/prometheus/releases/download/v2.13.0/prometheus-2.13.0.linux-amd64.tar.gz
tar -xf prometheus-2.13.0.linux-amd64.tar.gz
mv prometheus-2.13.0.linux-amd64 /usr/local/
ln -s /usr/local/prometheus-2.13.0.linux-amd64/ /usr/local/prometheus
1.2 配置说明
解压后当前目录会包含默认的Prometheus配置文件promethes.yml,下面配置文件做下简略的解析:
# 全局配置
global:
scrape_interval: 15s # 设置抓取间隔,默认为1分钟
evaluation_interval: 15s #估算规则的默认周期,每15秒计算一次规则。默认1分钟
# scrape_timeout #默认抓取超时,默认为10s
# Alertmanager相关配置
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# 规则文件列表,使用'evaluation_interval' 参数去抓取
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# 抓取配置列表
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
1.3 创建prometheus的用户及数据存储目录
为了安全,我们使用普通用户来启动prometheus服务。作为一个时序型的数据库产品,prometheus的数据默认会存放在应用所在目录下,我们需要修改为 /data/prometheus下。
useradd prometheus -s /sbin/nologin -M prometheus
mkdir /data/prometheus -p
#修改目录属主
chown -R prometheus:prometheus /usr/local/prometheus
chown -R prometheus:prometheus /data/prometheus
1.4 创建Systemd服务启动prometheus
prometheus的启动很简单,只需要直接启动解压目录的二进制文件prometheus即可,但是为了更加方便对prometheus进行管理,这里使用systemd来启停prometheus。
vim /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/data/prometheus
Restart=on-failure
[Install]
WantedBy=multi-user.target
备注:在service文件里面,我们定义了启动的命令,定义了数据存储在/data/prometheus路径下,否则默认会在prometheus二进制的目录的data下。
systemctl start prometheus
systemctl status prometheus
systemctl enable prometheus.service
1.5 打开prometheus的web页面
到这里,prometheus就已经安装好了,是不是比zabbix要简单多了呢。prometheus启动后默认会启动9090端口,我们通过浏览器打开该端口页面看下吧,后续的学习会在这个页面上进行的。
2. Grafana的安装
虽然说prometheus能展示一些图表,但对比Grafana,那只是个过家家。接下来我们需要在同一个服务器上安装Grafana服务,用来展示prometheus收集到的数据。
1.1 下载并解压二进制包
这里演示的Grafana的版本为6.4.2,要下载其他的版本可以到Grafana的官网进行下载。
wget [https://dl.grafana.com/oss/release/grafana-6.4.2.linux-amd64.tar.gz](https://dl.grafana.com/oss/release/grafana-6.4.2.linux-amd64.tar.gz)
tar -zxvf grafana-6.4.2.linux-amd64.tar.gz
有疑问加站长微信联系(非本文作者)