目录
一、现状介绍
1、背景
2、组件
二、配置
1、clickhouse配置
2、prometheus配置
3、prome2click配置
4、grafana配置
三、安装
四、测试
五、问题
1、make get-deps 报错如下
2、make build 报错如下
3、./bin/prom2click 报错如下
用es作为prometheus的远程存储时,发现es特别的消耗磁盘内存,同时对于数据存入es,查看时也不太容易,es的查询语句比较特殊,一般人还真不会写。后期存储的prometheus数据主要是想做统计汇总用的,感觉es做统计汇总也不太方便(可能自己不会吧),总其所有的原因,最后改用clickhouse作为prometheus的远程存储。
以上官网都有配置和简单教程,自己安装官网安装即可。以下步骤,是在默认你已安装好以上组件的基础上进行的。
需要将prometheus的metric数据存入到clickhouse里面,首先需要做的是创建一张表,将metric数据存入到表内,所以要现在clickhouse里面创建数据库和表格。prometheus的数据格式是key-value格式的,如下所示:
CREATE DATABASE IF NOT EXISTS metrics;
CREATE TABLE IF NOT EXISTS metrics.samples
(
date Date DEFAULT toDate(0),
name String,
tags Array(String),
val Float64,
ts DateTime,
updated DateTime DEFAULT now()
)
ENGINE = GraphiteMergeTree(
date, (name, tags, ts), 8192, 'graphite_rollup'
);
关于clickhouse的创建表的语句,使用的是GraphiteMergeTree执行引擎,该执行引擎需要配置一个graphite_rollup,实话说本人看了很久也不懂什么意思,如果不配置的话,创表语句会执行失败的。需要先配置然后重启clickhouse,再执行创表语句。需要改的地方是:/etc/clickhouse-server/config.xml.... 配置参考
tags
ts
val
updated
avg
0
10
86400
30
172800
300
这个就是指定将数据写出的端口,注意ip需要写prome2click安装机器的ip。
# Remote write configuration (for Graphite, OpenTSDB, InfluxDB or Clickhouse).
remote_write:
- url: "http://localhost:9201/write"
remote_read:
- url: "http://localhost:9201/read"
官网给的安装就三句话:......................................前提是需要安装go语言环境,glide环境
$ make get-deps
$ make build
$ ./bin/prom2click
首先将源码下载下来:wget https://github.com/iyacontrol/prom2click.git
执行第一句:make get-deps 报错如下:问题1
执行第二句:make build 报错如下:问题2
执行第三句:./bin/prom2click 报错如下:问题3
#解决方法:执行
$ glide mirror set https://golang.org/x/time https://github.com/golang/time --vcs git
$ glide mirror set https://golang.org/x/crypto https://github.com/golang/crypto --vcs git
$ glide mirror set https://golang.org/x/net https://github.com/golang/net --vcs git
$ glide mirror set https://golang.org/x/tools https://github.com/golang/tools --vcs git
$ glide mirror set https://golang.org/x/text https://github.com/golang/text --vcs git
$ glide mirror set https://golang.org/x/image https://github.com/golang/image --vcs git
$ glide mirror set https://golang.org/x/sys https://github.com/golang/sys --vcs git
解决方法:将prom2click/vendor文件夹下的所有文件,拷贝到/data/home/bgypub/apps/go/src/目录下
可能会报连接被拒绝,而且显示的ip也并不是我们的ip和端口号
需要修改prom2click/main.go文件,修改里面clickhouse的ip和端口号,然后重新执行make build,再执行./bin/prom2click 出现如下,表示启动成功。。。。
欢迎留言评论!