docker安装clickhouse_Docker中安装ClickHouse,单机、集群、分布式
Docker中安裝ClickHouse
下文使用CH代替ClickHouse的稱呼。
單機(jī)版本
docker run -d \
--name clickhouse-server \
-p 9000:9000 \
-p 8123:8123 \
-p 9009:9009 \
--ulimit nofile=262144:262144 \
yandex/clickhouse-server
分布式集群版本
分布式集群結(jié)構(gòu)圖
說明:
節(jié)點(diǎn)1和節(jié)點(diǎn)3為備份數(shù)據(jù)
節(jié)點(diǎn)2和節(jié)點(diǎn)4為備份數(shù)據(jù)
節(jié)點(diǎn)1和節(jié)點(diǎn)3為分片1
節(jié)點(diǎn)2和節(jié)點(diǎn)4為分片2
分片1和分片2為分布式
1、操作docker
每一臺(tái)電腦都有兩個(gè)節(jié)點(diǎn),我這邊只演示了一臺(tái)機(jī)器的,請自行增加機(jī)器。
# 首先起一個(gè)單機(jī)的CH
docker run -d \
--name clickhouse-server \
-p 9000:9000 \
-p 8123:8123 \
-p 9009:9009 \
--ulimit nofile=262144:262144 \
yandex/clickhouse-server
# 將上面單機(jī)的CH中的配置文件復(fù)制到宿主機(jī)的目錄中。沒有/home/allspark/目錄的,請?zhí)崆皠?chuàng)建。
docker cp clickhouse-server:/etc/clickhouse-server/ /home/allspark/
# 停止單機(jī)CH
docker stop clickhouse-server
# 刪除單機(jī)CH
docker rm clickhouse-server
# 起一個(gè)CH,這里是將配置、日志、以及數(shù)據(jù)映射到宿主機(jī)
docker run --restart always \
-d \
--name clickhouse-server \
--ulimit nofile=262144:262144 \
--volume=/home/allspark/clickhouse/:/var/lib/clickhouse/ \
--volume=/home/allspark/clickhouse-server/:/etc/clickhouse-server/ \
--volume=/home/allspark/log/clickhouse-server/:/var/log/clickhouse-server/ ?\
-p 9000:9000 \
-p 8123:8123 \
-p 9009:9009 \
yandex/clickhouse-server
# 轉(zhuǎn)到以下目錄
cd /home/allspark/
# 復(fù)制配置文件一份,因?yàn)橐慌_(tái)機(jī)器上面需要起兩個(gè)節(jié)點(diǎn)
cp -R clickhouse-server/ clickhouse-server2/
# 這里名字,日志、數(shù)據(jù)、配置都在不同的目錄,端口也加1
docker run --restart always \
-d \
--name clickhouse-server2 \
--ulimit nofile=262144:262144 \
--volume=/home/allspark/clickhouse2/:/var/lib/clickhouse/ \
--volume=/home/allspark/clickhouse-server2/:/etc/clickhouse-server/ \
--volume=/home/allspark/log/clickhouse-server2/:/var/log/clickhouse-server/ ?\
-p 9001:9000 \
-p 8124:8123 \
-p 9010:9009 \
yandex/clickhouse-server
# 起一個(gè)zookeeper,CH的集群分布式依賴與zookeeper
docker run --restart=always \
--name zookeeper -p 2181:2181 \
-v /home/allspark/zookeeper/conf/:/apache-zookeeper-3.5.6-bin/conf/ \
-v /home/allspark/zookeeper/data/:/data \
-v /home/allspark/zookeeper/datalog/:/datalog -v /home/allspark/zookeeper/logs/:/logs -d zookeeper
# 起一個(gè)ZKUI,便于查看zookeeper中的數(shù)據(jù)情況。
docker run --name zkui -p 9090:9090 --link zookeeper:zookeeper -e ZK_SERVER="zookeeper:2181" -d registry.cn-hangzhou.aliyuncs.com/wkaca7114/zkui
2、修改CH配置
每一個(gè)節(jié)點(diǎn)都需要配置,這里一臺(tái)電腦兩個(gè)節(jié)點(diǎn)。
1、修改users.xml,用于修改CH的賬號密碼
1、找到users節(jié)點(diǎn),找到下面的default節(jié)點(diǎn),找到下面的password節(jié)點(diǎn),這里就是密碼
2、添加修改賬號明就是將default節(jié)點(diǎn)完整復(fù)制一個(gè)或者在其基礎(chǔ)修改,為別的名字。例如將default節(jié)點(diǎn)名字改為admin,下面的password節(jié)點(diǎn)改為admin。就等于有了一個(gè)admin/admin的賬號。
在xusers.xml中默認(rèn)情況在default下的密碼為空。
2、修改config.xml
1、找到interserver_http_host節(jié)點(diǎn),修改為本機(jī)IP,不要使用127.0.0.1
2、listen_host修改為本機(jī)IP,不要使用127.0.0.1
3、在該文件的最后的前面一行添加
/etc/clickhouse-server/metrika.xml
4、在下添加,解決時(shí)區(qū)問題
Asia/Shanghai
3、創(chuàng)建文件metrika.xml
在/home/allspark/clickhouse-server和/home/allspark/clickhouse-server2下分別創(chuàng)建文件metrika.xml文件,將下面的配置修改后復(fù)制到其中。路徑就是第1步中的路徑。
下面配置中有備注,請對應(yīng)修改。
true
192.168.1.1
9000
default
default
192.168.1.2
9000
default
default
true
192.168.1.1
9001
default
default
192.168.1.2
9001
default
default
192.168.1.1
2181
01
01
192.168.1.1
::/0
10000000000
0.01
lz4
4、重啟Docker,重新加載配置
docker restart $(docker ps -a)
總結(jié)
以上是生活随笔為你收集整理的docker安装clickhouse_Docker中安装ClickHouse,单机、集群、分布式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 冗字开头的成语有哪些啊?
- 下一篇: kubectl常用命令_《蹲坑学kube