GitHub网址:https://github.com/prometheus/prometheus
软件下载地址:https://prometheus.io/download/
第三方中文介绍:https://github.com/1046102779/prometheus
prometheus介绍
Prometheus是一个开源的系统监控和报警的工具包,最初由SoundCloud发布。
特点:
- 多维数据模型(有metric名称和键值对确定的时间序列)
- 灵活的查询语言
- 不依赖分布式存储
- 通过pull方式采集时间序列,通过http协议传输
- 支持通过中介网关的push时间序列的方式
- 监控数据通过服务或者静态配置来发现
- 支持图表和dashboard等多种方式
组件:
- Prometheus 主程序,主要是负责存储、抓取、聚合、查询方面。
- Alertmanager 程序,主要是负责实现报警功能。
- Pushgateway 程序,主要是实现接收由Client push过来的指标数据,在指定的时间间隔,由主程序来抓取。
- *_exporter 这类是不同系统已经实现了的集成。
架构:
prometheus部署
1、下载安装包prometheus-1.6.2.linux-amd64.tar.gz
https://github.com/prometheus/prometheus/releases/tag/v1.6.2
2、解压
|
1
2
|
tar -xvf prometheus-1.6.2.linux-amd64.tar.gz
cd prometheus-1.6.2.linux-amd64
|
3、配置prometheus.yml
- scrape_interval: 15s # 默认15秒到目标处抓取数据
4、启动
|
1
2
3
|
nohup ./prometheus -config.file=prometheus.yml &
或nohup /opt/prometheus-1.6.2.linux-amd64/prometheus &
|
5、WEB页面访问http://localhost:9090/ ,可以看到Prometheus的graph页面。
备注:参考文章 http://www.cnblogs.com/vovlie/p/Prometheus_install.html
grafana部署
http://docs.grafana.org/installation/rpm/
1、安装
|
1
2
3
|
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.2.0-1.x86_64.rpm
sudo yum install initscripts fontconfig -y
sudo rpm -Uvh grafana-4.2.0-1.x86_64.rpm
|
2、启动服务service grafana-server start
3、访问页面http://localhost:3000 ,默认账号、密码admin/admin
4、Prometheus 和 Grafana 的对接
https://prometheus.io/docs/visualization/grafana/
参考文章:http://www.cnblogs.com/sfnz/p/6566951.html
MySQL的dashboards(Grafana)
https://github.com/percona/grafana-dashboards
|
1
2
|
git clone https://github.com/percona/grafana-dashboards.git
cp -r grafana-dashboards/dashboards /var/lib/grafana/dashboards
|
编辑Grafana配置文件
|
1
2
3
4
|
vi /etc/grafana/grafana.ini
[dashboards.json]enabled = true
path = /var/lib/grafana/dashboards
|
重启service grafana-server restart
mysql监控部署
在需要监控的mysql上安装 node_exporter和 mysqld_exporter
下载 https://prometheus.io/download/
|
1
2
3
|
tar -xvf node_exporter-0.14.0.linux-amd64.tar.gz
cd node_exporter-0.14.0.linux-amd64
nohup ./node_exporter &
|
|
1
2
3
4
5
6
7
8
9
|
tar -xvf mysqld_exporter-0.10.0.linux-amd64.tar.gz
cd mysqld_exporter-0.10.0.linux-amd64
vi .my.cnf[client]user=root
password=root
./mysqld_exporter -config.my-cnf=".my.cnf" &
|
服务端配置,文件prometheus.yml
|
1
2
3
4
5
6
7
8
9
10
|
scrape_configs: - job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'mysql'
static_configs:
- targets: ['10.10.83.162:9104']
labels:
instance: db-10.10.83.162
|
redis监控部署
下载 https://github.com/oliver006/redis_exporter/releases
|
1
2
|
tar -xvf redis_exporter-v0.11.linux-amd64.tar.gz
nohup /opt/redis_exporter -redis.addr "redis://10.10.83.162:16379" &
|
grafana配置
下载 redis_exporter-0.11.tar.gz
|
1
2
3
|
tar -xvf redis_exporter-0.11.tar.gz
cd redis_exporter-0.11 cp *json /var/lib/grafana/dashboards/
|
服务端配置,文件prometheus.yml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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: 'mysql'
static_configs:
- targets: ['10.10.83.162:9104']
labels:
instance: db-10.10.83.162
- job_name: redis_exporter
static_configs:
- targets: ['10.10.83.162:9121']
labels:
instance: redis-10.10.83.162
|
GitHub网址:https://github.com/prometheus/prometheus
软件下载地址:https://prometheus.io/download/
第三方中文介绍:https://github.com/1046102779/prometheus
prometheus介绍
Prometheus是一个开源的系统监控和报警的工具包,最初由SoundCloud发布。
特点:
- 多维数据模型(有metric名称和键值对确定的时间序列)
- 灵活的查询语言
- 不依赖分布式存储
- 通过pull方式采集时间序列,通过http协议传输
- 支持通过中介网关的push时间序列的方式
- 监控数据通过服务或者静态配置来发现
- 支持图表和dashboard等多种方式
组件:
- Prometheus 主程序,主要是负责存储、抓取、聚合、查询方面。
- Alertmanager 程序,主要是负责实现报警功能。
- Pushgateway 程序,主要是实现接收由Client push过来的指标数据,在指定的时间间隔,由主程序来抓取。
- *_exporter 这类是不同系统已经实现了的集成。
架构:
prometheus部署
1、下载安装包prometheus-1.6.2.linux-amd64.tar.gz
https://github.com/prometheus/prometheus/releases/tag/v1.6.2
2、解压
|
1
2
|
tar -xvf prometheus-1.6.2.linux-amd64.tar.gz
cd prometheus-1.6.2.linux-amd64
|
3、配置prometheus.yml
- scrape_interval: 15s # 默认15秒到目标处抓取数据
4、启动
|
1
2
3
|
nohup ./prometheus -config.file=prometheus.yml &
或nohup /opt/prometheus-1.6.2.linux-amd64/prometheus &
|
5、WEB页面访问http://localhost:9090/ ,可以看到Prometheus的graph页面。
备注:参考文章 http://www.cnblogs.com/vovlie/p/Prometheus_install.html
grafana部署
http://docs.grafana.org/installation/rpm/
1、安装
|
1
2
3
|
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.2.0-1.x86_64.rpm
sudo yum install initscripts fontconfig -y
sudo rpm -Uvh grafana-4.2.0-1.x86_64.rpm
|
2、启动服务service grafana-server start
3、访问页面http://localhost:3000 ,默认账号、密码admin/admin
4、Prometheus 和 Grafana 的对接
https://prometheus.io/docs/visualization/grafana/
参考文章:http://www.cnblogs.com/sfnz/p/6566951.html
MySQL的dashboards(Grafana)
https://github.com/percona/grafana-dashboards
|
1
2
|
git clone https://github.com/percona/grafana-dashboards.git
cp -r grafana-dashboards/dashboards /var/lib/grafana/dashboards
|
编辑Grafana配置文件
|
1
2
3
4
|
vi /etc/grafana/grafana.ini
[dashboards.json]enabled = true
path = /var/lib/grafana/dashboards
|
重启service grafana-server restart
mysql监控部署
在需要监控的mysql上安装 node_exporter和 mysqld_exporter
下载 https://prometheus.io/download/
|
1
2
3
|
tar -xvf node_exporter-0.14.0.linux-amd64.tar.gz
cd node_exporter-0.14.0.linux-amd64
nohup ./node_exporter &
|
|
1
2
3
4
5
6
7
8
9
|
tar -xvf mysqld_exporter-0.10.0.linux-amd64.tar.gz
cd mysqld_exporter-0.10.0.linux-amd64
vi .my.cnf[client]user=root
password=root
./mysqld_exporter -config.my-cnf=".my.cnf" &
|
服务端配置,文件prometheus.yml
|
1
2
3
4
5
6
7
8
9
10
|
scrape_configs: - job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'mysql'
static_configs:
- targets: ['10.10.83.162:9104']
labels:
instance: db-10.10.83.162
|
redis监控部署
下载 https://github.com/oliver006/redis_exporter/releases
|
1
2
|
tar -xvf redis_exporter-v0.11.linux-amd64.tar.gz
nohup /opt/redis_exporter -redis.addr "redis://10.10.83.162:16379" &
|
grafana配置
下载 redis_exporter-0.11.tar.gz
|
1
2
3
|
tar -xvf redis_exporter-0.11.tar.gz
cd redis_exporter-0.11 cp *json /var/lib/grafana/dashboards/
|
服务端配置,文件prometheus.yml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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: 'mysql'
static_configs:
- targets: ['10.10.83.162:9104']
labels:
instance: db-10.10.83.162
- job_name: redis_exporter
static_configs:
- targets: ['10.10.83.162:9121']
labels:
instance: redis-10.10.83.162
|