1. 程式人生 > >快速構建ceph視覺化監控系統

快速構建ceph視覺化監控系統


前言

ceph的視覺化方案很多,本篇介紹的是比較簡單的一種方式,並且對包都進行了二次封裝,所以能夠在極短的時間內構建出一個視覺化的監控系統

本系統元件如下:

  • ceph-jewel版本
  • ceph_exporter的jewel版本
  • prometheus的2.3.2版本
  • grafana的grafana-5.2.1版本
  • Ceph grafana的外掛- Clusterby Cristian Calin

適配的系統為centos7

資源如下:

http://static.zybuluo.com/zphj1987/jiwx305b8q1hwc5uulo0z7ft/ceph_exporter-2.0.0-1.x86_64.rpm


http://static.zybuluo.com/zphj1987/1nu2k4cpcery94q2re3u6s1t/ceph-cluster_rev1.json
http://static.zybuluo.com/zphj1987/7ro7up6r03kx52rkwy1qjuwm/prometheus-2.3.2-1.x86_64.rpm
http://7xweck.com1.z0.glb.clouddn.com/grafana-5.2.1-1.x86_64.rpm

以上資源均可以直接用wget進行下載,然後直接安裝

 

監控的架構介紹

通過ceph_exporter抓取的ceph相關的資料並且在本地監聽埠9128埠

prometheus抓取ceph_exporter的9128的埠的資料儲存在本地的/var/lib/prometheus/目錄下面

grafana抓取prometheus的資料進行渲染成web頁面

頁面的模板就是使用的grafana的ceph模板外掛

那麼我們就根據上面的架構去一步步的把系統配置起來

配置監控系統

安裝ceph_exporter

[[email protected] install]# wget http://static.zybuluo.com/zphj1987/jiwx305b8q1hwc5uulo0z7ft/ceph_exporter-2.0.0-1.x86_64.rpm
[
[email protected]
install]# rpm -qpl ceph_exporter-2.0.0-1.x86_64.rpm /usr/bin/ceph_exporter /usr/lib/systemd/system/ceph_exporter.service [[email protected] install]# rpm -ivh ceph_exporter-2.0.0-1.x86_64.rpm Preparing... ################################# [100%] Updating / installing... 1:ceph_exporter-2:2.0.0-1 ################################# [100%] [[email protected] install]# systemctl start ceph_exporter [[email protected] install]# systemctl enable ceph_exporter [[email protected] install]# netstat -tunlp|grep 9128 tcp6 0 0 :::9128 :::* LISTEN 35853/ceph_exporter

可以看到埠起來了就是安裝成功了,這個ceph_exporter建議是安裝在管理節點上,也就是能夠執行出ceph -s的節點上面的

安裝prometheus

[[email protected] install]#  wget http://static.zybuluo.com/zphj1987/7ro7up6r03kx52rkwy1qjuwm/prometheus-2.3.2-1.x86_64.rpm
[[email protected] install]# rpm -qpl prometheus-2.3.2-1.x86_64.rpm 
/etc/ceph/prometheus.yml
/usr/bin/prometheus
/usr/lib/systemd/system/prometheus.service
[[email protected] install]# rpm -ivh prometheus-2.3.2-1.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:prometheus-2:2.3.2-1             ################################# [100%]
[[email protected] install]# systemctl start prometheus
[[email protected] install]# netstat -tunlp|grep 9090
tcp6       0      0 :::9090                 :::*                    LISTEN      36163/prometheus

這個地方預設是認為prometheus和ceph_exporter在一臺機器上面,所以配置檔案的/etc/ceph/prometheus.yml裡面的targets寫的是127.0.0.1,根據需要修改成ceph_exporter的ip地址即可

prometheus的預設監聽埠為9090,到這個時候直接去web 上面就可以看到prometheus的抓取的資料了

到這裡是資料到prometheus的已經完成了,下面就去做跟grafana相關的配置了

安裝grafana

[[email protected] install]# wget http://7xweck.com1.z0.glb.clouddn.com/grafana-5.2.1-1.x86_64.rpm
[[email protected] install]# yum localinstall grafana-5.2.1-1.x86_64.rpm
[[email protected] install]# systemctl start grafana-server.service
[[email protected] install]# netstat -tunlp|grep gra
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp6       0      0 :::3000                 :::*                    LISTEN      36730/grafana-serve

grafana預設監聽的3000的埠


預設登陸的使用者名稱密碼為admin admin,登陸成功後會強制修改密碼

配置grafana


首先增加資料來源

這裡如果能上網就直接輸入id 917 ,如果不能上網就把上面的ceph-cluster_rev1.json檔案弄到本地去,匯入進去即可

到這裡就完成了配置了

總結

以上為了方便都把相關的軟體做成了rpm包,從安裝方便角度來看,grafana,ceph_exporter,還有prometheus都採用的是單二進位制檔案的方式,稍微組合一下大大的降低了部署難度,比如那個ceph_exporter需要用go進行編譯,封好包以後就不需要這個過程,並且介面因為有版本的限制,所以這樣直接對應版本安裝也避免了出錯

本篇的環境所述均為jewel適配版本