2月 252018
 

之前研究k8s时候用部署过prometheus,使用它来监控k8s集群,不过也是照文档操作,并没有深入研究,最近大概看了一下

安装

prometheus安装比较简单,下载编译好的二进制文件,修改好配置文件,直启动即可。可以在https://github.com/prometheus/prometheus/releases
下载最新版本。由于网络原因不能下载的,可在我的站点下载
https://dl.cactifans.com/prometheus/prometheus-2.1.0.linux-amd64.tar.gz
解压

tar zxvf prometheus-2.1.0.linux-amd64.tar.gz

解压之后,会有一个默认的配置文件,可以直接使用这个配置文件启动

./prometheus --config.file=prometheus.yml

即可启动prometheus,默认端口为9090.通过浏览器可以看到如下页面,表示prometheus启动正常

基本操作

在Expressioni里输入输入http_requests_total,点击Execute,即可看到http_requests_total相关的指标及其监控指标,点击Graph即可将指标已图标形式显示。
metrics是prometheus的重要概念,metrics可理解为监控指标,prometheus运行之后,本省自带很多metrics指标,可以反应出prometheus本身的一些运行情况,可以通过http://IP:9090/metrics
查看所有指标列表及数值,上面的http_requests_total就是prometheus自带的计算Prometheus的http处理的总请求数
prometheus里还可以通过count,reate等函数对metrics指标进行计算。具体的函数比较多,可以在https://prometheus.io/docs/prometheus/latest/querying/functions/这里查看。
##主机监控
Prometheus官网有很多exporter,exporter可以理解为客户端,即采集指标,通过http方式暴露metrics给prometheus,Prometheus通过pull方式拉去这些指标。Prometheus默认提供了一个node_exporter,用于监控主机的指标。下载地址https://dl.cactifans.com/prometheus/node_exporter-0.15.2.linux-amd64.tar.gz
下载之后解压,直接运行

tar zxvf node_exporter-0.15.2.linux-amd64.tar.gz
cd node_exporter-0.15.2.linux-amd64.tar.gz
./node_exporter

即可启动node_exporter,默认端口为9100,访问http://ip:9100/metrics
即可查看所有metrics指标。具体指标及使用可以查看https://github.com/prometheus/node_exporter
的说明,启动node_exporter之后,需要修改prometheus配置文件,添加jobs,以便prometheus能够拉去指标,修改prometheus配置文件,添加以下内容,注意:由于prometheus配置文件为yaml格式,对于空格,换行有严格限制,编译时一定要注意空格或换行

- job_name: 'node'

# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.

static_configs:
- targets: ['10.110.200.12:9100']

添加之后重启prometheus.过一段时间之后可以在prometheus界面,输入node,如看到如图,表示node的信息已经采集。

展示

prometheus的绘图功能比较弱,如何才能使展示效果做到高大上呢?这里就要使用Grafana.借助与Grafana可以完全自定义属于自己的Dashboard。Grafana的安装及配置比较简单,我这直接使用Centos7的rpm进行安装,安装之后,直接启动。Grafana下载地址:https://dl.cactifans.com/grafana/grafana-4.6.3-1.x86_64.rpm
大致安装过程

yum install urw-fonts -y
rpm -ivh grafana-4.6.3-1.x86_64.rpm
systemctl daemon-reload
systemctl enable grafana-server.service
systemctl start grafana-server.service

即可完成Grafana的安装,Grafana默认端口为3000,默认用户为admin,密码为admin,登录点击右侧菜单,添加数据源。Grafana默认已支持prometheus的数据源,填写之前安装的prometheus地址,点击save&test,如果没有问题,表示配置成功。

配置成功之后,可以对prometheus的metrics指标进行绘图,配合prometheus自带的函数,可以定制出自己的dashboard,由于Grafana功能比较多,就不一一介绍,我们直接倒入别人已经做好的prometheus node exporter配置图,就可直接展示。Dashboard模版下载地址https://grafana.com/dashboards/159 可以通过模版ID方式安装,或者瞎子啊模版json格式。下载json格式模版之后,点击Dashboard,再点击import,导入之前的json格式模版。
导入成功之后,切换到新的Dashboard,即可看到效果。 是不是很炫酷?prometheus及grafana功能较多,今天就介绍到这里,后续会陆续推出相关文章。

 

 

打赏
 Posted by at 上午 10:11

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)