clickhouse集群搭建

字数统计: 982阅读时长: 5 min
2020/06/13 Share

clickhouse集群搭建

https://clickhouse.tech/

单机安装

1、从源安装
https://clickhouse.tech/docs/zh/getting-started/install/
sudo yum install yum-utils
sudo rpm –import https://mirrors.tuna.tsinghua.edu.cn/clickhouse/CLICKHOUSE-KEY.GPG
sudo yum-config-manager –add-repo https://mirrors.tuna.tsinghua.edu.cn/clickhouse/rpm/stable/x86_64

sudo yum install clickhouse-server clickhouse-client -y

2、无网安装
需要下载这三个包
clickhouse-client-20.4.5.36-2.noarch.rpm
clickhouse-common-static-20.4.5.36-2.x86_64.rpm
clickhouse-server-20.4.5.36-2.noarch.rpm
进入/home/clickhouse/pack/6/
yum localinstall ***

3、检查一下能不能正常启动

1
2
sudo service clickhouse-server start
clickhouse-client

配置 /etc/clickhouse-server

  • 服务器配置:config.xml
  • 用户权限配置: user.xml
  • 集群配置: metrika.xml (默认没有,单机不用创建)

1、config.xml

  • 外网访问:

    1
    2
    <listen_host>0.0.0.0</listen_host>  <!--0.0.0.0代表任何ip都可以访问-->
    <tcp_port>9999</tcp_port> <!--这个需要改成非9000的端口-->
  • 集群配置:

    1
    <include_from>/etc/clickhouse-server/metrica.xml</include_from>

2、metrica.xml
3台机器,2副本配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<yandex>

<clickhouse_remote_servers>
<report_shards_replicas>
<shard>
<weight>1</weight>
<internal_replication>false</internal_replication>
<replica>
<host>ip1</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
<replica>
<host>ip2</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
</shard>
<shard>
<weight>1</weight>
<internal_replication>false</internal_replication>
<replica>
<host>ip2</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
<replica>
<host>ip3</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
</shard>
<shard>
<weight>1</weight>
<internal_replication>false</internal_replication>
<replica>
<host>ip3</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
<replica>
<host>ip1</host>
<port>9000</port>
<user>default</user>
<password>6lYaUiFi</password>
</replica>
</shard>
</report_shards_replicas>
</clickhouse_remote_servers>

<macros>
<replica>本机ip</replica>
</macros>

<networks>
<ip>::/0</ip>
</networks>

<zookeeper-servers>
<node index="1">
<host>ip1</host>
<port>2181</port>
</node>
<node index="2">
<host>ip2</host>
<port>2181</port>
</node>
<node index="3">
<host>ip3</host>
<port>2181</port>
</node>
</zookeeper-servers>

<!--压缩策略-->
<clickhouse_compression>
<case>
<min_part_size>10000000000</min_part_size>
<min_part_size_ratio>0.01</min_part_size_ratio>
<method>lz4</method>
</case>
</clickhouse_compression>
</yandex>

3、user.xml
<users>节点下新增一个用户

1
2
3
4
5
6
7
8
<test>
<password>123</password>
<networks incl="networks" replace="replace">
<ip>::/0</ip>
</networks>
<profile>default</profile>
<quota>default</quota>
</test>

这表示用户:test,密码:123,可以被任意ip访问

迁移到data目录下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
sudo bash -c bash
mkdir /data/clickhouse
cp /var/lib/clickhouse/data -r /data/clickhouse
cp /var/lib/clickhouse/flags -r /data/clickhouse
cp /var/lib/clickhouse/format_schemas -r /data/clickhouse
cp /var/lib/clickhouse/metadata -r /data/clickhouse
cp /var/lib/clickhouse/preprocessed_configs -r /data/clickhouse
cp /var/lib/clickhouse/tmp -r /data/clickhouse
cp /var/lib/clickhouse/user_files -r /data/clickhouse
sudo rm -rf /var/lib/clickhouse/data
sudo rm -rf /var/lib/clickhouse/flags/
sudo rm -rf /var/lib/clickhouse/format_schemas/
sudo rm -rf /var/lib/clickhouse/metadata/
sudo rm -rf /var/lib/clickhouse/preprocessed_configs/
sudo rm -rf /var/lib/clickhouse/tmp
sudo rm -rf /var/lib/clickhouse/user_files/

sudo ln -s /data/clickhouse/data /var/lib/clickhouse
sudo ln -s /data/clickhouse/flags /var/lib/clickhouse
sudo ln -s /data/clickhouse/format_schemas /var/lib/clickhouse
sudo ln -s /data/clickhouse/metadata /var/lib/clickhouse
sudo ln -s /data/clickhouse/preprocessed_configs /var/lib/clickhouse
sudo ln -s /data/clickhouse/tmp /var/lib/clickhouse
sudo ln -s /data/clickhouse/user_files /var/lib/clickhouse
sudo chown -R clickhouse.clickhouse /var/lib/clickhouse /data/clickhouse

sudo service clickhouse-server restart

如果安装有问题,可以删了重装

sudo yum list installed | grep clickhouse
sudo yum remove -y clickhouse-common-static
sudo yum remove -y clickhouse-server-common
sudo rm -rf /var/lib/clickhouse
sudo rm -rf /etc/clickhouse-*
sudo rm -rf /var/log/clickhouse-server

原文作者:大瑞

原文链接:https://ruizhang81.github.io/2020/06/13/clickhouse集群搭建/

发表日期:June 13th 2020, 3:30:27 pm

更新日期:June 24th 2020, 9:47:46 am

版权声明:

CATALOG
  1. 1. clickhouse集群搭建
    1. 1.0.1. 单机安装
    2. 1.0.2. 配置 /etc/clickhouse-server
    3. 1.0.3. 迁移到data目录下
    4. 1.0.4. 如果安装有问题,可以删了重装