Prometheus+Grafana搭建

环境

CentOS-7		#系统
192.178.124.71	#IP

prometheus-2.16.0.linux-amd64.tar.gz
grafana-6.6.2-1.x86_64.rpm	
node_exporter-0.18.1.linux-amd64.tar.gz	

准备工作

创建Prometheus运行用户与组

[root@ localhost ~]# groupadd prometheus
[root@ localhost ~]# useradd -M -s /sbin/nologin prometheus -g prometheus

关闭selinux和防火墙

[root@ localhost ~]# systemctl stop firewalld
[root@ localhost ~]# setenforce 0

安装Prometheus

解压并改名

[root@ localhost ~]# tar xf prometheus-2.16.0.linux-amd64.tar.gz -C /usr/local/
[root@ localhost ~]# mv /usr/local/prometheus-2.16.0.linux-amd64 /usr/local/prometheus

创建文件的存储目录

[root@ localhost ~]# mkdir /usr/local/prometheus/{conf,rules,data}
[root@ localhost ~]# chown -R prometheus:prometheus /usr/local/prometheus/
[root@ localhost ~]# cp /usr/local/prometheus/prometheus /usr/local/bin/
[root@ localhost ~]# cp /usr/local/prometheus/promtool /usr/local/bin/
[root@ localhost ~]# cp /usr/local/prometheus/tsdb /usr/local/bin/
[root@ localhost ~]# mv /usr/local/prometheus/prometheus.yml /usr/local/prometheus/conf/

修改Prometheus配置文件

[root@ localhost ~]# vim /usr/local/prometheus/conf/prometheus.yml
#全局配置区域
global:
 
  #该项用于指定抓取数据的周期,默认为15秒
  scrape_interval:     15s
 
  #该项用于定义Prometheus评估规则的频率,默认为15秒,规则主要有记录规则与警报规则
  evaluation_interval: 15s
 
#警报配置相关
alerting:
  alertmanagers:
  - static_configs:
    - targets:
 
#用来指定包含记录规则或警报规则的文件列表
rule_files:
 
#抓取配置列表
scrape_configs:
 
  #定义监控任务的名称,也可以理解为标签
  - job_name: 'prometheus'
 
    #静态定义抓取的目标,默认为本机
    static_configs:
    - targets: ['192.168.124.71:9090']

将Prometheus添加为系统服务

[root@ localhost ~]# vim /usr/lib/systemd/system/prometheus.service
[Unit]
Description=prometheus-server
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
 
[Service]
Type=simple
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/conf/prometheus.yml --web.enable-lifecycle --storage.tsdb.path=/usr/local/prometheus/data --storage.tsdb.retention.time=7d --web.max-connections=512 --web.read-timeout=3m --query.max-concurrency=25 --query.timeout=2m --log.level=debug
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
 
[Install]
WantedBy=multi-user.target

启动Prometheus并设置为开机启自启

[root@ localhost ~]# systemctl daemon-reload
[root@ localhost ~]# systemctl enable prometheus
[root@ localhost ~]# systemctl start prometheus
[root@ localhost ~]# netstat -anput | grep prometheus
tcp        0      0 127.0.0.1:38418         127.0.0.1:9090          ESTABLISHED 20287/prometheus    
tcp        0      0 192.168.124.71:50170    192.168.124.71:9090     ESTABLISHED 20287/prometheus    
tcp6       0      0 :::9090                 :::*                    LISTEN      20287/prometheus    
tcp6       0      0 192.168.124.71:9090     192.168.124.71:50170    ESTABLISHED 20287/prometheus    
tcp6       0      0 127.0.0.1:9090          127.0.0.1:38418         ESTABLISHED 20287/prometheus 

安装node_exporter

解压并改名

[root@ localhost ~]# tar xf node_exporter-0.18.1.linux-amd64.tar.gz -C /usr/local/
[root@ localhost ~]# mv /usr/local/node_exporter-0.18.1.linux-amd64 /usr/local/node_exporter
[root@ localhost ~]# chown -R prometheus:prometheus /usr/local/node_exporter
[root@ localhost ~]# cp /usr/local/node_exporter/node_exporter /usr/local/bin/

将node_exporter添加为系统服务

[root@ localhost ~]# vim /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=node_exporter
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
 
[Service]
Type=simple
ExecStart=/usr/local/node_exporter/node_exporter --log.level=debug
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
 
[Install]
WantedBy=multi-user.target

启动node_exporter并设置开机自启动

[root@ localhost ~]# systemctl daemon-reload
[root@ localhost ~]# systemctl enable node_exporter
[root@ localhost ~]# systemctl start node_exporter
[root@ localhost ~]#  netstat -anput | grep node_exporter
tcp6       0      0 :::9100                 :::*                    LISTEN      21274/node_exporter 

将node_exporter添加到Prometheus的配置文件当中

[root@ localhost ~]# vim /usr/local/prometheus/conf/prometheus.yml 
global:
  scrape_interval:     15s
  evaluation_interval: 15s
 
alerting:
  alertmanagers:
  - static_configs:
    - targets:
 
rule_files:
 
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['192.168.124.71:9090']
 
  - job_name: 'node1-system-status'
    static_configs:
    - targets: ['192.168.124.71:9100']

检查配置文件并启动服务

[root@ localhost ~]# promtool check config /usr/local/prometheus/conf/prometheus.yml
Checking /usr/local/prometheus/conf/prometheus.yml
  SUCCESS: 0 rule files found
[root@ localhost ~]# systemctl restart prometheus
[root@ localhost ~]# netstat -anput | grep prometheus
tcp        0      0 192.168.124.71:56018    192.168.124.71:9100     ESTABLISHED 21584/prometheus    
tcp        0      0 192.168.124.71:50232    192.168.124.71:9090     ESTABLISHED 21584/prometheus    
tcp        0      0 127.0.0.1:38480         127.0.0.1:9090          ESTABLISHED 21584/prometheus    
tcp6       0      0 :::9090                 :::*                    LISTEN      21584/prometheus    
tcp6       0      0 127.0.0.1:9090          127.0.0.1:38480         ESTABLISHED 21584/prometheus    
tcp6       0      0 192.168.124.71:9090     192.168.124.71:50232    ESTABLISHED 21584/prometheus  

访问Prometheus
在这里插入图片描述

Grafnan搭建

[root@ localhost ~]# yum -y install grafana-6.6.2-1.x86_64.rpm 

修改Grafana的配置文件

[root@ localhost ~]# cp /etc/grafana/grafana.ini /etc/grafana/grafana.ini.bak
[root@ localhost ~]# vim /etc/grafana/grafana.ini
[paths]
data = /var/lib/grafana
temp_data_lifetime = 24h
logs = /var/log/grafana
plugins = /var/lib/grafana/plugins
provisioning = conf/provisioning
 
[server]
protocol = http
http_addr = 192.168.124.71
http_port = 3000
root_url = %(protocol)s://%(domain)s:%(http_port)s/
serve_from_sub_path = false
router_logging = false
static_root_path = public
enable_gzip = true
 
[users]
allow_sign_up = true
allow_org_create = true
auto_assign_org = true
default_theme = dark

启动Grafana并设置开机自启动

[root@ localhost ~]# systemctl enable grafana-server
[root@ localhost ~]# systemctl start grafana-server

访问Grafana
在这里插入图片描述
在这里插入图片描述
Grafana基本配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
添加仪表盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
成果展示
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值