一、prometheus通过exporter方式监控ck

1、前言:如何通过prometheus监控clickhouse,最简单方案exporter插件,话不多说,先上两张这边导入配置的几张监控图

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_官网


2、先来总结下大致的流程如下:

  1. 下载clickhouse_exporter插件
  2. 在GitHub上面下载代码并编译(有坑,下面会讲解)
  3. 启动exporter并配置prometheus
  4. 结合grafana配置监控图

二、下载clickhouse_exporter插件并编译

GitHub地址:

https://github.com/ClickHouse/clickhouse_exporter

1、首先机器要有go环境(自行解决),cd到下载目录

git clone  https://github.com/f1yegor/clickhouse_exporter.git

cd /app/clickhouse_exporter

-- 首先要设置go环境指定代理,不然编译会报错
GOPROXY=https://goproxy.cn

-- 再编译:
go build clickhouse_exporter.go

2、编译成功会看到 二进制文件

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_官网_02

网盘已上传编译好了的 clickhouse_exporter,需要可以自取
链接:https://pan.baidu.com/s/1BJYgwEnhTBmF-dD36cSS6Q?pwd=c2hp
提取码:c2hp

三、启动 clickhouse_exporter

如果设置了密码不指定,会报错连不上),启动成功会默认启动 9116 端口,浏览器可以访问一下

--设置了用户名密码:
/app/clickhouse_exporter/clickhouse_exporter -scrape_uri=http://default:123456@localhost:8123/

--无用户密码:
./clickhouse_exporter -scrape_uri=http://clickhouse_server_ip:8123/

如果密码包含特殊字符,可以尝试使用URL编码来对特殊字符进行编码。例如,在您提供的示例中,#字符可以使用%23来替换,详细见URL中编码URL特殊字符。因此,可以尝试使用以下命令:
– 原密码:/app/clickhouse_exporter/clickhouse_exporter -scrape_uri=http://default:123456#@localhost:8123/
– 设置URL编码:/app/clickhouse_exporter/clickhouse_exporter -scrape_uri=http://default:123456%23@localhost:8123/

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_github_03

--设置成systemctl启动方式

cat /usr/lib/systemd/system/clickhouse_exporter.service
# -*- mode: conf -*-

[Unit]
Description=clickhouse_exporter
After=network.target

[Service]
User=clickhouse
ExecStart=/app/clickhouse_exporter/clickhouse_exporter -scrape_uri=http://default:123456@localhost:8123/ $ZOOK_EXPORTER_OPTS
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target
-- reload systemctl配置
systemctl daemon-reload

四、配置prometheus

修改prometheus.yml文件,targets 指定 clickhouse_exporter的ip地址和端口号

- job_name: 'clickhouse_exporter'
    scrape_timeout: 10s
    metrics_path: /metrics
    static_configs:
      - targets:
        - '172.17.209.4:9116'
        - '172.17.209.5:9116'
        - '172.17.209.7:9116'

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_特殊字符_04

五、配置grafana

获取clickhouse的监控采集数据模板并导入,选择prometheus数据源,监控展示。(grafana官网导入的,我这边做了一定的修改,例如变量,还加了一些其他的监控图)

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_github_05

六、总结

clickhouse_exporter监控还是很全,有很多监控grafana模板里面没有,自己可以试着加一下重点的监控,大家可以参考腾讯云clickhouse的监控指标,一般clickhouse_exporter插件上都有,有的都可以配置到grafana进行监控

--腾讯云clickhouse监控
https://intl.cloud.tencent.com/zh/document/product/1026/36887

clickhouse 和 zookeeper clickhouse和zookeeper集群状态的监控告警_特殊字符_06


1、另外grafana模板地址官网有

grafana官网clickhouse_exporter模板:

https://grafana.com/grafana/dashboards/882

2、我这边的模板,大家如果想要也可以在下方留言,这边会分享给大家!有什么疑问欢迎下方留言哦!