首先安装GO
$ yum install go $ go version go1.6.3 linux/amd64
下载安装Prometheus(https://prometheus.io/download/) cd /data wget https://github.com/prometheus/prometheus/releases/download/v2.3.0/prometheus-2.3.0.linux-amd64.tar.gz tar -zxvf prometheus-2.3.0.linux-amd64.tar.gz cd prometheus-2.3.0.linux-amd64 vi prometheus.yml
global: scrape_interval: 60s evaluation_interval: 60s scrape_configs: - job_name: prometheus static_configs: - targets: ['192.168.1.211:9090'] labels: instance: prometheus - job_name: linux static_configs: - targets: ['10.10.0.186:9100'] labels: instance: db1 - job_name: mysql static_configs: - targets: ['10.10.0.186:9104'] labels: instance: db1
注意各个单词的开头位置
10.10.0.186是我们数据库主机的IP,端口则是对应的exporter的监听端口。
启动Prometheus
$ ./prometheus -config.file=prometheus.yml
INFO[0000] Starting prometheus (version=1.6.2, branch=master, revision=b38e977fd8cc2a0d13f47e7f0e17b82d1a908a9a) source=main.go:88 INFO[0000] Build context (go=go1.8.1, user=root@c99d9d650cf4, date=20170511-12:59:13) source=main.go:89 INFO[0000] Loading configuration file prometheus.yml source=main.go:251 INFO[0000] Loading series map and head chunks... source=storage.go:421 INFO[0000] 1032 series loaded. source=storage.go:432 INFO[0000] Starting target manager... source=targetmanager.go:61 INFO[0000] Listening on :9090 source=web.go:259
Prometheus内置了一个web界面,我们可通过http://192.168.1.211:9090进行访问:
在Status->Targets页面下,我们可以看到我们配置的两个Target,它们的State为DOWN。
下一步我们需要安装并运行exporter,下载exporters并解压到被监控端服务器:
rometheus和Grafana对MySQL服务器性能进行监控。
我们用到了以下两个exporter:
node_exporter – 用于机器系统数据收集 mysqld_exporter – 用于MySQL服务器数据收集
cd /data
wget https://github.com/prometheus/node_exporter/releases/download/v0.15.2/node_exporter-0.15.2.linux-amd64.tar.gz
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.10.0/mysqld_exporter-0.10.0.linux-amd64.tar.gz
被监控安装GO环境
$ yum install go -y $ go version go version go1.6.3 linux/amd64
##$ tar xvf node_exporter-0.15.2.linux-amd64.tar.gz -C /usr/local/
tar -zxvf node_exporter-0.15.2.linux-amd64.tar.gz $ nohup /data/mysqld_exporter-0.10.0.linux-amd64/node_exporter &
可以./node_exporte &
安装运行mysqld_exporter
mysqld_exporter需要连接到Mysql,所以需要Mysql的权限,我们先为它创建用户并赋予所需的权限.
mysql> GRANT REPLICATION CLIENT,PROCESS ON *.* TO 'root'@'localhost' identified by 'mysql_monitor'; mysql> GRANT SELECT ON *.* TO 'root'@'localhost';
$ tar -zxvf mysqld_exporter-0.10.0.linux-amd64.tar.gz
我们再次回到Status->Targets页面,可以看到两个Target的状态已经变成UP了:
创建.my.cnf文件并运行mysqld_exporter:
$ cat << EOF > .my.cnf [client] user=root password=Root@2018 EOF $ $ ./mysqld_exporter -config.my-cnf=".my.cnf"
###$ /usr/local/mysqld_exporter-0.10.0.linux-amd64/mysqld_exporter -config.my-cnf="/usr/local/mysqld_exporter-0.10.0.linux-amd64/.my.cnf" & ./mysqld_exporter -config.my-cnf=".my.cnf" &
也可以 nohup /data/mysqld_exporter-0.10.0.linux-amd64/mysqld_exporter -config.my-cnf=".my.cnf" &
六、安装运行Grafana Grafana安装配置介绍 yum sudo yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.3-1.x86_64.rpm rpm $ wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.3-1.x86_64.rpm $ sudo yum install initscripts fontconfig $ sudo rpm -Uvh grafana-5.1.3-1.x86_64.rpm
yum install fontconfig yum install freetype* yum install urw-fonts
导入Prometheus Dashboard:
$ git clone https://github.com/percona/grafana-dashboards.git $ cp -r grafana-dashboards/dashboards /var/lib/grafana
$ systemctl daemon-reload $ systemctl start grafana-server $ systemctl status grafana-server
sudo systemctl enable grafana-server.service
vi /etc/grafana/provisioning/dashboards/sample.yaml 第二行开始删掉注释 # # config file version apiVersion: 1
providers: - name: 'default' orgId: 1 folder: '' type: file options: path: /var/lib/grafana/dashboards
(adsbygoogle = window.adsbygoogle || []).push({});