Skip to content

deniszh/graphite-clickhouse-cluster-tldr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graphite-Clickhouse w/Clickhouse cluster Testing / TLDR

What is it?

Preconfigured graphite-web (and carbonapi) with ClickHouse cluster backend deployed by docker-compose. Also contains Grafana and Haggar.

Why?

Similar repo exists for single clickhouse server - this one also contains Zookeeper and configurable Clickhouse cluster. You can learn how Clickhouse cluster works and how graphite-clickhouse scales.

WARNING

This repo is only an experiment and designed for learning and experiments. Please do not use it in production!

Clickhouse cluster

Clickhouse cluster consists of 6 nodes, 3 shards x 2 replicas.

So, shards = [ch01/ch06], [ch02/03], [ch04/05]. Or, from replicas side of view - [ch01/ch02/ch04], [ch06/ch03/ch05]

Do not forget to sync proxy config chproxy/config.yml with real cluster config in ch/config/macros and ch/config/clickhouse_metrika.xml

Also do not forget to rerun docker-compose build after changing chproxy/config.yml.

TODO

Chaos (using Pumba) - with metric delay and availability monitoring.

Quick Start

git clone https://github.com/deniszh/graphite-clickhouse-cluster-test
cd graphite-clickhouse-cluster-test
./cleanup.sh
docker-compose build
docker-compose up

Open http://127.0.0.1:3000/ in browser

Mapped Ports

Host Container Service
80 80 graphite-web
3000 3000 grafana
8080 8080 carbonapi
9090 9090 graphite-clickhouse
2003 2003 carbon-clickhouse carbon plaintext tcp/udp
2004 2004 carbon-clickhouse carbon pickle tcp
2006 2006 carbon-clickhouse prometheus remote write
2181 2181 zookeper
2182 2182 zookeper
9099 9099 chproxy
9999 9999 zoonavigator

About

TLDR setup for Graphite-Clickhouse w/Clickhouse cluster

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published