|
系统node |
IPlinux |
监控主机git |
CentOS 7github |
192.168.56.200golang |
被监控主机web |
CentOS 7vim |
192.168.56.201浏览器 |
如下操做皆在监控主机(192.168.56.200)上执行。网络
# systemctl stop firewalld
# systemctl disable firewalld
因为Prometheus是由go语言开发的,因此在安装Prometheus以前须要先在监控主机上安装go环境。这里采用源码编译的方式安装。工具
因为国内网络环境的缘由,若是可以科学的上网,可今后地址下载最新版本的安装包:https://golang.org/dl/ 。
未能科学的上网的,可今后连接下载:连接:https://pan.baidu.com/s/1gefGeXmoFmjGxSGxgCuQfw 提取码:cz6l
安装包下载之后,上传至监控主机的 /usr/local 目录下。
# tar -xvf go1.13.1.linux-amd64.tar.gz
添加/usr/loacl/go/bin目录到PATH变量中。添加到/etc/profile 或$HOME/.profile均可以
# vim /etc/profile // 在最后一行添加
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin // wq保存退出后source一下
# source /etc/profile
执行go version,若是显示版本号,则Go环境安装成功。
安装包下载地址:https://prometheus.io/download/#prometheus
将下载后安装包,上传至 /usr/local 目录下
解压安装包:
# tar -xvf prometheus-2.4.0.linux-amd64.tar.gz # mv prometheus-2.4.0.linux-amd64/ prometheus
Prometheus的配置文件位于 /usr/local/Prometheus/prometheus.yml ,此处采用默认配置。
进入解压后的文件夹下,启动Prometheus。
# cd prometheus
# ./prometheus --config.file=/usr/local/prometheus/prometheus.yml &
浏览器打开http://192.168.56.200:9090(IP:9090端口)便可打开普罗米修斯自带的监控页面
Ctrl+C 结束掉Prometheus进程。建立Prometheus服务,让Prometheus以服务的方式,开机自启。
添加系统服务
# vim /etc/systemd/system/prometheus.service
将如下内容写入文件中
[Unit] Description=Prometheus Monitoring System Documentation=Prometheus Monitoring System [Service] ExecStart=/usr/local/prometheus/prometheus \ --config.file=/usr/local/prometheus/prometheus.yml \ --web.listen-address=:9090
Restart=on-failure
[Install] WantedBy=multi-user.target
启动服务,设置开机自启,并检查服务开启状态
# systemctl daemon-reload # systemctl enable prometheus # systemctl start prometheus # systemctl status prometheus
Prometheus自带的监控页面显示的内容没有那么直观,咱们安装grafana来使监控数据看起来更加直观
此处安装采用源码编译的方式安装。在监控主机(192.168.56.200)/usr/local 目录下 下载安装包,并安装
# wget https://dl.grafana.com/oss/release/grafana-6.4.3-1.x86_64.rpm
# yum localinstall grafana-6.4.3-1.x86_64.rpm
没有wget工具的,首先安装wget工具:
# yum -y install wget
设置grafana服务开机自启,并启动服务
# systemctl daemon-reload # systemctl enable grafana-server.service # systemctl start grafana-server.service
浏览器访问http://192.168.56.200:3000(IP:3000端口),便可打开grafana页面,默认用户名密码都是admin,初次登陆会要求修改默认的登陆密码
(1)点击主界面的“Add data source”
(2)选择Prometheus
(3)填写数据源设置项
URL处填写Prometheus服务所在的IP地址,此处咱们将Prometheus服务与Grafana安装在同一台机器上,直接填写localhost便可
点击下方 【Save & Test】按钮,保存设置
(4)Dashboards页面选择“Prometheus 2.0 Stats”
点击Dashboards选项卡,选择Prometheus 2.0 Stats
(5)查看监控
点击Grafana图标,切换到Grafana主页面,而后点击Home,选择咱们刚才添加的Prometheus 2.0 Stats,便可看到监控数据
至此Prometheus服务端及Grafana配置完成。
如下操做皆在被监控主机(192.168.56.201)上操做。
# systemctl stop firewalld
# systemctl disable firewalld
首先下载node-exporter安装包,下载地址:https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-arm64.tar.gz
将下载的安装包上传至被监控主机(192.168.56.201)的 /usr/local 目录下
解压安装包
# tar -zvxf node_exporter-0.18.1.linux-amd64.tar.gz # mv node_exporter-0.18.1.linux-amd64/ node_exporter
进入解压后的node_exporter文件夹下,启动node_exporter
# cd node_exporter # ./node_exporter
在浏览器访问 http://192.168.56.201:9100/metrics ,若出现数据则服务开启成功
Ctrl+C 结束掉node_exporter进程,建立node_exporter服务,让node_exporter以服务的方式,开机自启。
添加系统服务
# vim /etc/systemd/system/node_exporter.service
将如下内容写入文件中
[Unit] Description=node_exporter After=network.target [Service] ExecStart=/usr/local/node_exporter/node_exporter Restart=on-failure [Install] WantedBy=multi-user.target
启动服务,设置开机自启,并检查服务开启状态
# systemctl daemon-reload # systemctl enable node_exporter # systemctl start node_exporter # systemctl status node_exporter
至此node_exporter配置完成。
如下操做皆在监控主机(192.168.56.200)上进行。
进入Prometheus的安装文件夹,打开Prometheus配置文件
# cd /usr/local/prometheus # vim prometheus.yml
在scrape_configs标签下,添加如下内容,配置监控
- job_name: 'Linux' static_configs: - targets: ['192.168.56.201:9100'] labels: instance: Linux
如下是Prometheus.yml 文件所有内容
# 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: ['localhost:9090'] - job_name: 'Linux' static_configs: - targets: ['192.168.56.201:9100'] labels: instance: Linux
保存退出,重启Prometheus服务
# systemctl restart prometheus
浏览器访问 http://192.168.56.200:9090/targets 查看监控信息
能够看到,Linux机器已经加入进来。
添加dashboard
Grafana官方为咱们提供了不少dashboard页面,可直接下载使用。浏览器访问 https://grafana.com/grafana/dashboards 下载所须要的dashboard页面
选择数据源为Prometheus,而后咱们选择第一个dashboard
复制dashboard Id
而后打开咱们的Grafana监控页面,打开dashboard的管理页面
点击【import】按钮
而后将咱们刚才的复制的dashboard Id 复制进去
Grafana会自动识别dashboard Id 。
而后点击【change】按钮,生成一个随机的UID,而后点击下方输入框,选择咱们以前建立的数据源Prometheus,最后点击【Import】按钮,便可完成导入。
导入成功后,会自动打开该Dashboard,便可看到咱们刚才设置好的node监控
至此Prometheus+Grafana 安装配置,并监控Linux机器,配置完成。