利用prometheus结合grafana监控ceph集群

来源:互联网 发布:网络通信协议是如何被 编辑:程序博客网 时间:2024/05/16 07:44

              

                    

 概述:   

目前针对Ceph,采用 Prometheus结合Grafana进行监控。

 

Prometheus是一个开源的服务监控系统,它通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上。它提供了一个简单的网页界面、一个功能强大的查询语言以及HTTP接口等等。Prometheus通过安装在远程机器上的exporter来收集监控数据。                        

Grafana是一个开源的功能丰富的数据可视化平台,通常用于时序数据的可视化。它内置了以下数据源的支持:

 

    

安装配置

     Prometheus官方下载地址:https://prometheus.io/download/

     本次ceph_exporter, Prometheus server,grafana都安装再同一台机器,系统环境CentOS 7.2

       

   安装Prometheusserver

        解压: tar xvf prometheus-2.0.0-rc.2.linux-amd64.tar.gz

        运行: cd prometheus-2.0.0-rc.2.linux-amd64

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

 

     

       访问 http://<服务器IP地址>:9090,验证Prometheus是否已安装成功,web显示如下   

   由于prometheus是根据exporter来收集数据的,所以还需要安装ceph对应的exporter,这里是从git上下载的ceph_exporter,下载好之后,需要先配置golang编译环境,然后编译代码,步骤如下:

    #克隆仓库

git clonehttps://github.com/digitalocean/ceph_exporter.git

#安装go环境

yum install -y golang

#配置go的环境参数

cat /etc/profile.d/go.sh

export GOROOT=/usr/lib/golang

export GOBIN=$GOROOT/bin

export GOPATH=/home/golang

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

#source

. /etc/profile

cd ceph_expoter

#解决依赖问题

go get -d

#编译

go build

#执行

 ./ceph_exporter

     注意编译的时候需要将源码拷贝到go对应环境变量的目录下,如果是按上面步骤配的,则需要拷贝到/home/golang/src/github.com/digitalocean 下,然后编译。编译的时候还有可能会报错,如下图:

    

 

这是因为缺少依赖,执行yuminstall librados2-devel librbd1-devel,可以解决依赖问题。

 

     编译成功之后,./exporter运行,然后去prometheus目录下更改prometheus.yml文件,在下面添加job,如图所示:

    

 注意这个targetsceph_exporter安装的所在节点的地址,后面的9128要和启动ceph_exporter时所显示的端口号一致,而且yaml文件对格式要求很严格,格式一定要与原文件中的保持一致。

 保存退出,然后重新运行:./prometheus --config.file=prometheus.yml然后在浏览器上输入http://<localhost>:9128会出现界面如下:

 

    

表示数据已经收集生效了,然后去9090端口界面,点开菜单栏Status里面的targets,会出现如下界面,表示prometheus配置成功:

   

 

 

 

配置Grafana:

    1,下载并解压Grafana

      

 首先去官网下载对应版本的文件,本次采用的是grafana-4.3.1-1.x86_64.rpm,下载好之后,tar解压。

 

2,配置

 

 编辑配置文件/usr/local/services/grafana/conf/defaults.ini,修改dashboards.json段落下两个参数的值:

[dashboards.json]

enabled= true

path =/var/lib/grafana/dashboards

 

    修改完之后,直接启动服务:systemctl start grafana-server

 

 

    3,通过http://localhost:3000访问Grafana Web界面(缺省帐号/密码为admin/admin)

 

登录后,首先通过Data Sources页面添加数据源,配置如下:

   

 

上图中,name可以自己取,类型选择 Prometheus,url填写上面配置的prometheus的端口号,Access选择direct,然后点击add,如果显示正在工作,则表示配置成功,如果报错,可以检查一下地址是否填写错误,检查ceph_exporter是否在运行状态,这个配置必须要保证exporter一直在运行。

然后就可以通过选择不同的仪表盘(左上角)和时间段(右上角)来呈现图表了:

 

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 poopr9 opppr9 oppe r9 摇曳百合 op 神曲奏界op 妄想学生会op下载 爆漫王op 遥仰凰华 op 花开伊吕波op名字 op破r7s安卓系统可以升级吗 or or值 or意思 or是什么意思 or用法 or怎么读 or什么意思 or的用法 or的意思 or什么意思中文 or发音 or音标 卡方检验 or值 or和and的用法区别 more or less 用or造句 os 氢os 云os 氧os 8os 360os 内心os 内心os什么意思 os什么意思 os是什么意思 os网络用语 os系统 360os云服务 雷电os 深度os