Clickhouse rpm离线 集群安装

环境: centos7.5
dockerapache-01
dockerapache-02
dockerapache-03

由于服务器环境是离线的。需要采用离线安装。
在线安装可以参考下列博客:https://blog.csdn.net/oppo62258801/article/details/103601870

  1. 下载 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

以下操作针对单台服务器
  1. 把下载的内容都上传至服务器

  2. 检查SSE 指令集

grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"

在这里插入图片描述

  1. 导入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

  1. 开始安装
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
  1. 配置config.xml 放开远程访问
vim /etc/clickhouse-server/config.xml

在这里插入图片描述

实际生产环境中,默认的数据目录、临时目录、日志目录等,通常放在数据盘而不是系统盘,所以会做相应调整;其他看需要进行配置。

  1. 启动server
sudo /etc/init.d/clickhouse-server start
  1. 启动客户端
clickhouse-client

在这里插入图片描述

集群搭建
  1. 拷贝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
  1. 安装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

  1. 配置 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>

  1. 配置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>
  1. 配置 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版权协议,转载请附上原文出处链接和本声明。