Docker 部署 ClickHouse 监控平台
CentOS安装Docker运行环境
Docker 部署 ClickHouse exporter
Prometheus 官方的 exporter 地址: https://prometheus.io/docs/instrumenting/exporters
详情访问 ClickHouse exporter GitHub 主页地址(按照官方文档并没有配置成功)
去 Docker 镜像库搜索 clickhouse-exporter 相关镜像如下:
下载量最多的镜像显示如下,两年前的镜像
目测该镜像为官方镜像
根据 GitHub 上的代码提交记录一直再更新维护,2 年前的镜像并不能保证系统的稳定性。
我选择的是最新的镜像:
拉取社区用户公开最新版本的镜像
启动容器
ClickHouse 服务未设置认证信息
ClickHouse 服务设置了认证信息
启动容器参数说明:
clickhouse.service.consul : ClickHouse 服务 ip
clickhouse.service.port : ClickHouse 服务端口号
clickhouse.service.user : ClickHouse 访问用户名
clickhouse.service.password : ClickHouse 访问密码
检查服务状态
访问 clickhouse-exporter 容器所在服务的 9116 端口,出现以下界面说明项目启动正常
Docker 部署 Prometheus
Prometheus 官网:https://prometheus.io
官方镜像地址:https://hub.docker.com/r/prom/prometheus
拉取官方的最新版本的镜像
获取当前镜像默认的 prometheus.yml 配置文件
启动容器
查看容器是否启动成功
从容器中复制文件到本地
配置 clickhouse-exporter
clickhouse_exporter 官方 prometheus.yml 配置 demo:
https://github.com/ClickHouse/clickhouse_exporter/blob/master/docker/prometheus/prometheus.yml
可以直接使用以上的 prometheus.yml 文件或者只需要将 10-12 行的内容粘贴到我们自己的 prometheus.yml 文件中,并修改 targets 的 ip 为 clickhouse_exporter 服务所在的 ip 地址。
重新配置启动容器参数
查询容器 id
停止容器并删除容器
创建 Prometheus 容器的挂载目录
将 prometheus.yml 移动到新创建的 prometheus 目录下,然后在 prometheus 目录的父级目录下执行容器启动命令:
查看容器是否启动成功
容器启动失败
执行以下命令查询全部容器(包括未启动的容器)id
根据容器 id 查询容器启动日志
关键信息如下:
使用 -u 命令指定容器的用户
启动成功,访问 Prometheus 服务所在 9090 端口查看服务启动和配置情况
通过 status ->targets 和 service-discovery 这两个功能页面可以看到 exporter 的配置情况。
Docker 部署 Grafana
官方教程:https://grafana.com/docs/grafana/latest/installation/docker/
拉取官方的最新版本的镜像
启动容器
查看容器是否启动成功
访问 Grafana 容器所在服务的 3000 端口,出现登录页面说明项目启动正常。
默认账号密码:admin / admin,第一次登录系统强制重置密码按照提示输入新密码即可正常使用。
Grafana 配置 Prometheus 数据源
url 填写 Prometheus 服务的 http 页面访问地址,格式 http://ip:port, 点击 Save & Test 按钮出现 Data source is working 提示信息说明配置成功。
Grafana 配置 clickhouse-exporter 可视化仪表盘
使用官方推荐模板 882
填入仪表盘模板编号 882,点击 load 按钮
可以编辑 name 属性,选择配置的 Prometheus 数据源,点击 Import 按钮。
之后自动跳转到新配置的仪表板页面,效果如下:
评论