From cf5569e03c54b12cc22b6c98bfc23b1e67f8e63e Mon Sep 17 00:00:00 2001 From: hughshen Date: Thu, 4 Jun 2020 22:14:50 +0800 Subject: [PATCH] Initial commit --- config_1.xml | 311 ++++++++++++++++++++++++++++++++++++++++++++ config_2.xml | 311 ++++++++++++++++++++++++++++++++++++++++++++ config_3.xml | 310 ++++++++++++++++++++++++++++++++++++++++++++ config_4.xml | 312 +++++++++++++++++++++++++++++++++++++++++++++ docker-compose.yml | 111 ++++++++++++++++ example.sql | 18 +++ haproxy.cfg | 21 +++ 7 files changed, 1394 insertions(+) create mode 100644 config_1.xml create mode 100644 config_2.xml create mode 100644 config_3.xml create mode 100644 config_4.xml create mode 100644 docker-compose.yml create mode 100644 example.sql create mode 100644 haproxy.cfg diff --git a/config_1.xml b/config_1.xml new file mode 100644 index 0000000..56dd22d --- /dev/null +++ b/config_1.xml @@ -0,0 +1,311 @@ + + + + trace + /var/log/clickhouse-server/clickhouse-server.log + /var/log/clickhouse-server/clickhouse-server.err.log + 1000M + 10 + + + 8123 + + + + + + + server.crt + server.key + + dhparam.pem + true + true + sslv2,sslv3 + true + + + true + true + sslv2,sslv3 + true + + + + RejectCertificateHandler + + + + + + + + 9000 + + + 9010 + + + + + + :: + + 127.0.0.1 + + 4096 + 3 + + + 100 + + + + + + 8589934592 + + + 5368709120 + + + + /var/lib/clickhouse/ + + + /var/lib/clickhouse/tmp/ + + + users.xml + + + default + + + default + + + + + + + + + true + + clickhouse1 + 9000 + + + clickhouse2 + 9000 + + + + true + + clickhouse3 + 9000 + + + clickhouse4 + 9000 + + + + + + + + + + zoo1 + 2181 + + + zoo2 + 2181 + + + + + + 01 + 01 + + + + 3600 + + + + + + + + + system + query_log
+ + + 7500 +
+ + + + + + + + + + + + + *_dictionary.xml + + + + + + + + /clickhouse/task_queue + + + + + + + + + + + + click_cost + any + + 0 + 3600 + + + 86400 + 60 + + + + max + + 0 + 60 + + + 3600 + 300 + + + 86400 + 3600 + + + +
diff --git a/config_2.xml b/config_2.xml new file mode 100644 index 0000000..9976c1b --- /dev/null +++ b/config_2.xml @@ -0,0 +1,311 @@ + + + + trace + /var/log/clickhouse-server/clickhouse-server.log + /var/log/clickhouse-server/clickhouse-server.err.log + 1000M + 10 + + + 8123 + + + + + + + server.crt + server.key + + dhparam.pem + true + true + sslv2,sslv3 + true + + + true + true + sslv2,sslv3 + true + + + + RejectCertificateHandler + + + + + + + + 9000 + + + 9010 + + + + + + :: + + 127.0.0.1 + + 4096 + 3 + + + 100 + + + + + + 8589934592 + + + 5368709120 + + + /var/lib/clickhouse/ + + + /var/lib/clickhouse/tmp/ + + + users.xml + + + default + + + default + + + + + + + + + true + + clickhouse1 + 9000 + + + clickhouse2 + 9000 + + + + true + + clickhouse3 + 9000 + + + clickhouse4 + 9000 + + + + + + + + + + zoo1 + 2181 + + + zoo2 + 2181 + + + + + + 01 + 02 + + + + 3600 + + + + + + + + + + system + query_log
+ + + 7500 +
+ + + + + + + + + + + + + *_dictionary.xml + + + + + + + + /clickhouse/task_queue + + + + + + + + + + + + click_cost + any + + 0 + 3600 + + + 86400 + 60 + + + + max + + 0 + 60 + + + 3600 + 300 + + + 86400 + 3600 + + + +
diff --git a/config_3.xml b/config_3.xml new file mode 100644 index 0000000..3cc4151 --- /dev/null +++ b/config_3.xml @@ -0,0 +1,310 @@ + + + + trace + /var/log/clickhouse-server/clickhouse-server.log + /var/log/clickhouse-server/clickhouse-server.err.log + 1000M + 10 + + + 8123 + + + + + + + server.crt + server.key + + dhparam.pem + true + true + sslv2,sslv3 + true + + + true + true + sslv2,sslv3 + true + + + + RejectCertificateHandler + + + + + + + + 9000 + + + 9011 + + + + + + :: + + 127.0.0.1 + + 4096 + 3 + + + 100 + + + + + + 8589934592 + + + 5368709120 + + + /var/lib/clickhouse/ + + + /var/lib/clickhouse/tmp/ + + + users.xml + + + default + + + default + + + + + + + + + true + + clickhouse1 + 9000 + + + clickhouse2 + 9000 + + + + true + + clickhouse3 + 9000 + + + clickhouse4 + 9000 + + + + + + + + + + zoo1 + 2181 + + + zoo2 + 2181 + + + + + + 02 + 01 + + + + 3600 + + + + + + + + + system + query_log
+ + + 7500 +
+ + + + + + + + + + + + + *_dictionary.xml + + + + + + + + /clickhouse/task_queue + + + + + + + + + + + + click_cost + any + + 0 + 3600 + + + 86400 + 60 + + + + max + + 0 + 60 + + + 3600 + 300 + + + 86400 + 3600 + + + +
diff --git a/config_4.xml b/config_4.xml new file mode 100644 index 0000000..ab0f929 --- /dev/null +++ b/config_4.xml @@ -0,0 +1,312 @@ + + + + trace + /var/log/clickhouse-server/clickhouse-server.log + /var/log/clickhouse-server/clickhouse-server.err.log + 1000M + 10 + + + 8123 + + + + + + + server.crt + server.key + + dhparam.pem + true + true + sslv2,sslv3 + true + + + true + true + sslv2,sslv3 + true + + + + RejectCertificateHandler + + + + + + + + 9000 + + + 9011 + + + + + + :: + + 127.0.0.1 + + 4096 + 3 + + + 100 + + + + + + 8589934592 + + + 5368709120 + + + /var/lib/clickhouse/ + + + /var/lib/clickhouse/tmp/ + + + users.xml + + + default + + + default + + + + + + + + + true + + clickhouse1 + 9000 + + + clickhouse2 + 9000 + + + + true + + clickhouse3 + 9000 + + + clickhouse4 + 9000 + + + + + + + + + + zoo1 + 2181 + + + zoo2 + 2181 + + + + + + 02 + 02 + + + + 3600 + + + + + + + + + + system + query_log
+ + + 7500 +
+ + + + + + + + + + + + + + *_dictionary.xml + + + + + + + + /clickhouse/task_queue + + + + + + + + + + + + click_cost + any + + 0 + 3600 + + + 86400 + 60 + + + + max + + 0 + 60 + + + 3600 + 300 + + + 86400 + 3600 + + + +
diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..99440fb --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,111 @@ +version: '3' + +networks: + ck_cluster: + driver: bridge + ipam: + config: + - subnet: 172.50.0.0/24 + +services: + haproxy: + image: haproxy:latest + ports: + - "9001:9000" + volumes: + - ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg + networks: + - ck_cluster + depends_on: + - clickhouse1 + - clickhouse2 + - clickhouse3 + - clickhouse4 + + zoo1: + image: zookeeper:latest + expose: + - "2181" + - "2888" + - "3888" + environment: + ZOO_MY_ID: "1" + ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 + networks: + - ck_cluster + + zoo2: + image: zookeeper:latest + expose: + - "2181" + - "2888" + - "3888" + environment: + ZOO_MY_ID: "2" + ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 + networks: + - ck_cluster + + clickhouse1: + image: yandex/clickhouse-server:19.15.3.6 + expose: + - "9000" + depends_on: + - zoo1 + - zoo2 + volumes: + - ./config_1.xml:/etc/clickhouse-server/config.xml + networks: + - ck_cluster + ulimits: + nofile: + soft: 262144 + hard: 262144 + + clickhouse2: + image: yandex/clickhouse-server:19.15.3.6 + expose: + - "9000" + depends_on: + - zoo1 + - zoo2 + volumes: + - ./config_2.xml:/etc/clickhouse-server/config.xml + networks: + - ck_cluster + ulimits: + nofile: + soft: 262144 + hard: 262144 + + clickhouse3: + image: yandex/clickhouse-server:19.15.3.6 + expose: + - "9000" + depends_on: + - zoo1 + - zoo2 + volumes: + - ./config_3.xml:/etc/clickhouse-server/config.xml + networks: + - ck_cluster + ulimits: + nofile: + soft: 262144 + hard: 262144 + + clickhouse4: + image: yandex/clickhouse-server:19.15.3.6 + expose: + - "9000" + depends_on: + - zoo1 + - zoo2 + volumes: + - ./config_4.xml:/etc/clickhouse-server/config.xml + networks: + - ck_cluster + ulimits: + nofile: + soft: 262144 + hard: 262144 diff --git a/example.sql b/example.sql new file mode 100644 index 0000000..d43dcc8 --- /dev/null +++ b/example.sql @@ -0,0 +1,18 @@ +CREATE TABLE test +( + test_date DateTime, + random_int UInt32 +) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/test', '{replica}') +PARTITION BY toYYYYMM(test_date) +ORDER BY (test_date); + +CREATE TABLE test_all ( + test_date DateTime, + random_int UInt32 +) ENGINE = Distributed('ck_cluster', 'default', 'test', random_int); + +INSERT INTO test_all VALUES ('2020-01-01 01:01:01', 1); +INSERT INTO test_all VALUES ('2020-02-02 02:02:02', 2); + +-- select * from system.clusters +-- select hostName(), * from test_all diff --git a/haproxy.cfg b/haproxy.cfg new file mode 100644 index 0000000..ad3dd14 --- /dev/null +++ b/haproxy.cfg @@ -0,0 +1,21 @@ +global + log 127.0.0.1 local0 + +resolvers docker_resolver + nameserver dns 127.0.0.11:53 + +defaults + mode tcp + timeout connect 5000ms + timeout client 50000ms + timeout server 50000ms + +frontend tcp-in + bind *:9000 + default_backend servers + + backend servers + server ck1 "clickhouse1:9000" maxconn 5 check inter 500 resolvers docker_resolver resolve-prefer ipv4 + server ck2 "clickhouse2:9000" maxconn 5 check inter 500 resolvers docker_resolver resolve-prefer ipv4 + server ck3 "clickhouse3:9000" maxconn 5 check inter 500 resolvers docker_resolver resolve-prefer ipv4 + server ck4 "clickhouse4:9000" maxconn 5 check inter 500 resolvers docker_resolver resolve-prefer ipv4