环境: centos7.5
dockerapache-01
dockerapache-02
dockerapache-03
由于服务器环境是离线的。需要采用离线安装。
在线安装可以参考下列博客:https://blog.csdn.net/oppo62258801/article/details/103601870
- 下载 rpm
https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/
clickhouse-client-20.3.8.53-2.noarch.rpm
clickhouse-common-static-20.3.8.53-2.x86_64.rpm
clickhouse-common-static-dbg-20.3.8.53-2.x86_64.rpm
clickhouse-server-20.3.8.53-2.noarch.rpm
clickhouse-test-20.3.8.53-2.noarch.rpm
下载证书
https://repo.yandex.ru/clickhouse/CLICKHOUSE-KEY.GPG
以下操作针对单台服务器
把下载的内容都上传至服务器
检查SSE 指令集
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"

- 导入gpg
rpm --import /root/CLICKHOUSE-KEY.GPG
否则可能报错:
警告:clickhouse-common-static-20.3.8.53-2.x86_64.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID e0c56bd4: NOKEY
- 开始安装
rpm -ivh clickhouse-common-static-20.3.8.53-2.x86_64.rpm
rpm -ivh clickhouse-server-20.3.8.53-2.noarch.rpm
rpm -ivh clickhouse-common-static-dbg-20.3.8.53-2.x86_64.rpm
rpm -ivh clickhouse-client-20.3.8.53-2.noarch.rpm
- 配置config.xml 放开远程访问
vim /etc/clickhouse-server/config.xml

实际生产环境中,默认的数据目录、临时目录、日志目录等,通常放在数据盘而不是系统盘,所以会做相应调整;其他看需要进行配置。
- 启动server
sudo /etc/init.d/clickhouse-server start
- 启动客户端
clickhouse-client

集群搭建
- 拷贝rpm至另外两台服务器
scp clickhouse* root@dockerapache-01:/root
scp clickhouse* root@dockerapache-02:/root
scp CLICKHOUSE-KEY.GPG root@dockerapache-01:/root
scp CLICKHOUSE-KEY.GPG root@dockerapache-02:/root
- 安装rpm
rpm --import CLICKHOUSE-KEY.GPG
rpm -ivh clickhouse-common-static-20.3.8.53-2.x86_64.rpm
rpm -ivh clickhouse-server-20.3.8.53-2.noarch.rpm
rpm -ivh clickhouse-common-static-dbg-20.3.8.53-2.x86_64.rpm
rpm -ivh clickhouse-client-20.3.8.53-2.noarch.rpm
- 配置 config.xml
vim /etc/clickhouse-server/config.xml
<!-- 放开访问限制-->
<listen_host>::1</listen_host>
<listen_host>127.0.0.1</listen_host>
<!--外部配置文件-->
<include_from>/etc/clickhouse-server/metrika.xml</include_from>
- 配置metrika.xml
vim /etc/clickhouse-server/metrika.xml
<yandex>
<!--ck集群节点-->
<clickhouse_remote_servers>
<ck_cluster>
<!--perftest_3shards_2replicas -->
<!-- 数据分片1 -->
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>dockerapache-03</host>
<port>10000</port>
</replica>
<replica>
<host>dockerapache-02</host>
<port>11000</port>
</replica>
</shard>
<!-- 数据分片2 -->
<shard>
<replica>
<internal_replication>true</internal_replication>
<host>dockerapache-02</host>
<port>10000</port>
</replica>
<replica>
<host>dockerapache-01</host>
<port>11000</port>
</replica>
</shard>
<!-- 数据分片3 -->
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>dockerapache-01</host>
<port>10000</port>
</replica>
<replica>
<host>dockerapache-03</host>
<port>11000</port>
</replica>
</shard>
</ck_cluster>
<!--/perftest_3shards_2replicas -->
</clickhouse_remote_servers>
<!--zookeeper相关配置-->
<zookeeper-servers>
<node index="1">
<host>dockerapache-01</host>
<port>2181</port>
</node>
<node index="2">
<host>dockerapache-02</host>
<port>2181</port>
</node>
<node index="3">
<host>dockerapache-03</host>
<port>2181</port>
</node>
</zookeeper-servers>
<networks>
<ip>::/0</ip>
</networks>
<!--压缩相关配置-->
<clickhouse_compression>
<case>
<min_part_size>10000000000</min_part_size>
<min_part_size_ratio>0.01</min_part_size_ratio>
<method>lz4</method> <!--压缩算法lz4压缩比zstd快, 更占磁盘-->
</case>
</clickhouse_compression>
</yandex>
- 配置 macros.xml
vim /etc/clickhouse-server/config.d/macros.xml
<yandex>
<!--dockerapache-03 -->
<macros>
<layer>01</layer> <!--双级分片设置-->
<shard>01</shard> <!--分片编号-->
<replica>ck_cluster-01-1</replica> <!--副本标识-->
</macros>
</yandex>
<yandex>
<!--dockerapache-02 -->
<macros>
<layer>01</layer> <!--双级分片设置-->
<shard>02</shard> <!--分片编号-->
<replica>ck_cluster-02-1</replica> <!--副本标识-->
</macros>
</yandex>
<yandex>
<!--dockerapache-01 -->
<macros>
<layer>01</layer> <!--双级分片设置-->
<shard>03</shard> <!--分片编号-->
<replica>ck_cluster-03-1</replica> <!--副本标识-->
</macros>
</yandex>
6.启动
service clickhouse-server start
ps -ef | grep click
版权声明:本文为gulugulu_gulu原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。