zabbix 6.0 监控clickhouse(单机)

zabbix 6.0 LTS已经包含了clickhouse的监控模板,所以我们可以直接使用自带的模板来监控clickhouse了。

0.前置条件

  • clickhouse 已经安装,我安装的是24.3.5.47
  • zabbix-agent 已经安装并配置。
  • 系统是ubuntu 2204 server

1. 新建监控用户

使用xml的方式为clickhouse新增一个用户,接下来我们会在zabbix中使用这个用户来监控clickhouse的性能。

/etc/clickhouse-server/users.d/目录下新建一个zabbix.xml文件。

复制代码
vim /etc/clickhouse-server/users.d/zabbix.xml

添加以下内容:

xml 复制代码
<clickhouse>
    <users>
        <zabbix>
            <password remove='1' />
            <password_sha256_hex>f6e248ea994f3e342f61141b8b8e3ede86d4de53257abc8d06ae07a1da73fb39</password_sha256_hex>
            <allow_databases>
            <database>system</database>
            </allow_databases>
        </zabbix>
    </users>
</clickhouse>
  • password_sha256_hex: 这里使用的加密方式为password_sha256_hex。使用下面的命令生成password_sha256_hex散列值。

    复制代码
    echo -n "your_password" | sha256sum

    上述命令会生成以下输出。

    复制代码
    4da3376323046a3bb6759f0a3f4ae7100a0567950c53ee42d2e19201baaa6dfc  -

    其中"your_password"是你的明文密码,字符串'4da3376323046a3bb6759f0a3f4ae7100a0567950c53ee42d2e19201baaa6dfc'是sha256加密后的字符串。

  • allow_databases:allow_databases标签是指定允许用户访问的数据库,由于clickhouse的监控值保存在system数据库中,这里我们要指定system数据库。

2.在 ClickHouse 上启用 HTTP API

ClickHouse 提供了一个内置的 HTTP API,可以通过它采集 ClickHouse 的性能指标。

2.1启用 ClickHouse HTTP API : ClickHouse 默认通过 8123 端口提供 HTTP API。确保该端口对 Zabbix Server 是开放的:

复制代码
sudo ufw allow 8123/tcp
sudo ufw reload

2.2验证 ClickHouse HTTP API: 你可以通过以下命令测试是否可以通过 HTTP 访问 ClickHouse:

复制代码
curl 'http://localhost:8123/?query=SELECT+1'

如果出现上图所示的响应"1"说明API已经开启。

接下来使用下面的命令检查clickhouse的测量值。

复制代码
curl 'http://localhost:8123/?query=SELECT+metric,+value+FROM+system.metrics'

使用zabbix监控时还需要检查能否通过ip地址获取clickhouse的测量值。

如果使用IP地址无法获取clickhouse的测量值时请检查clickhouse的config.xml配置:

复制代码
<http_port>8123</http_port>
<http_interface>0.0.0.0</http_interface>

3.为clickhouse主机添加监控模板

进入zabbix的管理页面,找到"配置-----主机",在右侧列表中点击打开你要配置的clickhouse主机,然后在配置项"主机"中找到模板,并添加Clickhouse by HTTP模板。

还是在配置页面中,点击"宏"选项卡,添加第一步中我们新增的clickhouse 的zabbix用户及密码。

完成上面的配置之后,在clickhouse服务器上重启zabbix-agent服务。

复制代码
systemctl restart zabbix-agent

4.查看监控数据

到监测选项面板中查看clickhouse的监控数据,如果没有数据就等几分钟数据就会出来了。

好了,我们先配置了单机版的监控,接下来再配置clickhouse集群的监控。有了监控数据,在使用clickhouse时,特别是进行性能优化时会让你有一种如虎添翼的感觉,所有的优化项都有数据支持了。

相关推荐
降世神童11 小时前
大数据系列 | 详解基于Zookeeper或ClickHouse Keeper的ClickHouse集群部署--完结
大数据·clickhouse·zookeeper
南客先生1 天前
海量聊天消息处理:ShardingJDBC分库分表、ClickHouse冷热数据分离、ES复合查询方案、Flink实时计算与SpringCloud集成
java·clickhouse·elasticsearch·flink·springcloud·shardingjdbc
曹弘毅2 天前
doris/clickhouse常用sql
数据库·sql·clickhouse·doris
晴天彩虹雨2 天前
实时数仓体系概览与架构演进
数据仓库·clickhouse·架构·flink·kafka
Hehuyi_In2 天前
阿里云Clickhouse 冷热数据分层存储 实战记录
clickhouse·oss·存储·归档·冷热分层
柳如烟@3 天前
从零开始配置 Zabbix 数据库监控:MySQL 实战指南
数据库·mysql·adb·zabbix
weisian1513 天前
中间件--ClickHouse-10--海量数据存储如何抉择ClickHouse和ES?
clickhouse·elasticsearch·中间件
D愿你归来仍是少年5 天前
Clickhouse 配置参考
大数据·clickhouse
S1lent9o5 天前
CentOS stream 中部署Zabbix RPM软件包公钥验证错误
linux·centos·zabbix