Clickhouse 安装部署

一、下载软件包

官网链接:https://clickhouse.tech/#quick-start
rpm包链接:https://packagecloud.io/altinity/clickhouse

主要下载如下几个软件包

clickhouse-server-common
clickhouse-server
clickhouse-common-static
clickhouse-client

二、单机版安装

1、安装

sudo rpm -ivh *.rpm

2、启动

sudo systemctl start clickhouse-server.service

3、进入到命令行

clickhouse-client

4、显示数据库

show databases; 

5、clickhouse客户端默认情况下,输入一行按回车就是执行,如果不想输入一行就执行,需要在进入命令行时指定-m参数

clickhouse命令行语法跟mysql差不多

三、集群安装

1、安装软件包跟上述一样
2、修改config.xml文件
配置文件目录:/etc/clickhouse-server/config.xml

<!-- <listen_host>::</listen_host> -->
修改成如下:
<listen_host>::</listen_host>

3、创建metrika.xml文件
在/etc/clickhouse-server/config.d目录下创建metrika.xml

[root@hadoop4 config.d]# cat metrika.xml 
<yandex>
<clickhouse_remote_servers>
<!--集群名称,clickhouse支持多集群的模式-->

    <clickhouse_cluster>
    <!--定义分片节点,这里我指定3个分片,每个分片只有1个副本,也就是它本身-->
        <shard>
             <internal_replication>true</internal_replication>
            <replica>
                <host>hadoop1</host>
                <port>9000</port>
            </replica>
        </shard>
        <shard>
            <replica>
                <internal_replication>true</internal_replication>
                <host>hadoop2</host>
                <port>9000</port>
            </replica>
        </shard>
        <shard>
            <internal_replication>true</internal_replication>
            <replica>
                <host>hadoop3</host>
                <port>9000</port>
            </replica>
        </shard>
    </clickhouse_cluster>
</clickhouse_remote_servers>
<!--zookeeper集群的连接信息-->
<zookeeper-servers>
  <node index="1">
    <host>hadoop1</host>
    <port>2181</port>
  </node>

  <node index="2">
    <host>hadoop2</host>
    <port>2182</port>
  </node>
  <node index="3">
    <host>hadoop3</host>
    <port>2183</port>
  </node>
</zookeeper-servers>
<!--定义宏变量,后面需要用-->
<macros>
    <replica>hadoop1</replica>
</macros>
<!--不限制访问来源ip地址-->
<networks>
   <ip>::/0</ip>
</networks>

<!--数据压缩方式,默认为lz4-->
<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>

分发到其他节点,同时修改macros标签里面的值为对应的服务器

4、在config.xml引入metrika.xml
配置完metrika.xml后,我们需要将metrika.xml引入配置中。config.xml就是clickhouse的全局配置。路径默认是:/etc/clickhouse-server/config.xml
在该配置文件中添加以下配置:

<!--引入metrika.xml-->
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>
#引用Zookeeper配置的定义
<zookeeper incl="zookeeper-servers" optional="true" />
#打开注释,让其他节点访问当前节点ClickHouse
<listen_host>::</listen_host>

5、启动集群
启动之前需要先启动zookeeper
在三台节点启动clickhouse

sudo systemctl start clickhouse-server.service

6、查询当前的集群信息

select * from system.clusters;

7、查询zookeeper信息
在ClickHouse系统表中,提供了一张Zookeeper代理表,我们可以使用SQL轻松访问Zookeeper内的数据,不用再像以前一样使用客户端登录进去查看。

#查询Zookeeper根目录
select * from system.zookeeper where path = '/'

#查询ClickHouse目录
select * from system.zookeeper where path = '/clickhouse'

生产环境建议配置上Kerberos安全认证。

借鉴:https://blog.csdn.net/qq_42194171/article/details/109560651

posted @ 2021-03-12 10:52  北漂-boy  阅读(1146)  评论(0编辑  收藏  举报