還在使用 ELK 收集日志嗎?趕快來試試這個基于 ClickHouse 的方案吧~
ClickVisual 是一個輕量級的開源日志查詢、分析、報警的可視化平臺,致力于提供一站式應用可靠性的可視化的解決方案。既可以獨立部署使用,也可作為插件集成到第三方系統(tǒng)。目前是市面上唯一一款支持 ClickHouse 的類 Kibana 的業(yè)務日志查詢平臺。
ClickVisual 具有如下一些特性:
支持可視化的查詢面板,可查詢命中條數(shù)直方圖和原始日志。 支持設置日志索引功能,分析不同索引的占比情況。 支持可視化的 VS Code 風格配置中心,能夠便捷地將 logagent 配置同步到 Kubernetes 集群 ConfigMap 中。 支持 GitHub 和 GitLab 授權登錄。 支持 Proxy Auth 功能,能被被非常輕松地集成到第三方系統(tǒng)。 支持物理機、Docker、Kubernetes 部署。 支持基于 ClicHouse 日志的實時報警功能。
架構
日志系統(tǒng)主要分為四個部分:日志采集、日志傳輸、日志存儲、日志管理。
日志采集: LogCollector采用 Daemonset 方式部署,將宿主機日志目錄掛載到LogCollector的容器內,LogCollector通過掛載的目錄能夠采集到應用日志、系統(tǒng)日志、K8S 審計日志等日志傳輸:通過不同 Logstore映射到 Kafka 中不同的 Topic,將不同數(shù)據結構的日志做了分離日志存儲:使用 Clickhouse 中的兩種引擎數(shù)據表和物化視圖 日志管理:開源的 ClickVisual 系統(tǒng),能夠查詢日志,設置日志索引,設置 LogCollector 配置,設置 Clickhouse 表,設置報警等

安裝
我們可以使用二進制、Docker、Kubernetes 等方式進行安裝,為了簡單這里我們以 Docker 為例進行說明,Kubernetes 安裝方式可以參考官方文檔 https://clickvisual.gocn.vip/clickvisual/02install/k8s-installation.html。
首先需要提供一個可訪問的 MySQL,將配置 https://github.com/clickvisual/clickvisual/tree/master/data/all-in-one/clickvisual/config 中的 [mysql] 改成你本地 MySQL 的配置。
然后可以使用下面的命令來啟動 ClickVisual,需要把配置掛載到 docker 容器內:
docker?run?--name?ClickVisual?-e?EGO_CONFIG_PATH=/ClickVisual/config/docker.toml?-e?EGO_LOG_WRITER=stderr?-p?19001:19001?-d?sevennt/ClickVisual:master?-v?./config:/ClickVisual/config
當然你也可以使用 Docker Compose 來啟動,同樣需要把配置掛載到 docker 容器內:
version:?"3"
services:
ClickVisual:
??image:?sevennt/ClickVisual:master
??container_name:?ClickVisual
??environment:
????EGO_CONFIG_PATH:?/ClickVisual/config/docker.toml
????EGO_LOG_WRITER:?stderr
??ports:
????-?"19001:19001"
??restart:?always
??volumes:
??-?./config:/ClickVisual/config
??command:?[?'/bin/sh',?'-c',?'./bin/ClickVisual'?]
啟動后可以通過 http://localhost:19001 進行訪問。
由于 ClickVisual 只是一個進行數(shù)據展示,并不會進行日志收集,所以可以根據自己的實際情況選擇采集工具,比如 fluent-bit,將日志采集后輸出到 Kafka 中,然后通過 Kafka 將日志消費到 Clickhouse 中去,關于 fluent-bit 的配置可以參考文檔 https://clickvisual.gocn.vip/clickvisual/03funcintro/fluent-bit-configuration-reference.html 了解更多信息。
當 ClickVisual 部署完成后可以在頁面中去添加 Clickhouse 數(shù)據源。

默認沒有配置數(shù)據源實例,所以此處為空,點擊 +新增實例,增加一個新的 ClickHouse 實例作為數(shù)據源。配置好數(shù)據源后,就可以在日志查詢頁面中使用了。

此外還支持日志的實時報警功能。

更多使用細節(jié)請參考官方網站了解更多 https://clickvisual.gocn.vip/。
Git 倉庫:https://github.com/clickvisual/clickvisual
