ClickHouse集群的离线安装

目录

1 安装总体概况

2 离线安装相应的rpm文件(三台机器都需要)

3 修改配置文件

4 启动ClickServer

5 配置集群

1.安装总体概况

功能说明

主机IP

环境配置

安装

节点1

192.168.56.101

关闭防火墙,

时钟同步,

host映射

Jdk

Zookeeper

ClickHouse

节点2

192.168.56.102

关闭防火墙,

时钟同步,

host映射

Jdk

Zookeeper

ClickHouse

节点3

192.168.56.103

关闭防火墙,

时钟同步,

host映射

Jdk

Zookeeper

ClickHouse

2. 离线安装相应的rpm文件(三台机器都需要)

ClickHouse的安装主要依赖于zookeeper,jdk,所以安装之前记得配置好zookeeper,jdk

还有就是可以先安装好libtool和unixODBC两个rpm包,便于后续连接操作

ClickHouse集群的离线安装_第1张图片

有需要的小伙伴可以连接自取

链接:https://pan.baidu.com/s/100_AK3qS19y9pdQ4K--uxA (clickhouse和zookeeper)

提取码:23ej

链接:https://pan.baidu.com/s/1V4qawFI2rFGc13hFFx0seA (jdk)

提取码:5qod

rpm -ivh *.rpm

jdk和zookeeper的安装这里就不再赘述。

3 修改配置文件

按照好相应的clickhouse之后,需要对配置文件进行修改,执行以下命令

 vim /etc/clickhouse-server/config.xml

::的注释打开,这样的话才能让ClickHouse被除本机以外的服务器访问(同时在另外两台机器上做同样的修改)

如果想修改数据和日志文件的存储位置,可以修改以下配置

数据文件路径:/var/lib/clickhouse/

日志文件路径:/var/log/clickhouse-server/clickhouse-server.log

4 启动ClickServer

启动clickhouse

systemctl start clickhouse-server

三台机器关闭开机自启

sudo systemctl disable clickhouse-server 

使用client连接server

clickhouse-client -m

能够进去sql输入页面则证明单机clickhouse启动成功

5 配置集群

clickhouse集群的主要作用有两个

(1)创建副本

(2)实现分片集群(这里我们弄了三个分片,每个分片只有一个副本(即不设副本))

这里我们只讲述如何配置分片集群的相应文件(如果想副本文件的配置,其实就是后面配置进行重新设置)

步骤

(1)首先是在config.xml配置文件进行修改,使其关联到外面的metrika.xml文件(文件自己创建)

(2)配置metrika.xml文件的内容


    
          
                
                 true
                 
                     
                    192.168.56.101
                    9000
                 
              
                
                 true
                     
                    192.168.56.102
                     9000
                 
              
                
                 true
                      
                    192.168.56.103
                    9000
                 
              
        
    
    
       
          hadoop101
          2181
       
       
          hadoop102
          2181
      
      
          hadoop103
          2181
      
    

    
        01   
        rep_1_1  
    


如果是想要节点2设置一个分片的话,则macros下的配置文件需要修改为



    
        02   
        rep_2_1  
    

如果是想要节点3设置一个分片的话,则macros下的配置文件需要修改为



    
        03   
        rep_3_1  
    

如果想设置多副本的情况,例如三台机器设置两个分片,只有第一个分片有副本

配置文件可以参考下面:



    
          
                     
            true
                    
                    hadoop202
                    9000
                
                    
                    hadoop203
                    9000
                
            

              
                true
                    
                    hadoop204
                    9000
                
            
        
    

    
        
            hadoop202
             2181
        
        
             hadoop203
              2181
        
        
              hadoop204
              2181
        
    

    
        01   
        rep_1_1  
    

上面的配置项macros在不同机器也要记得修改

(3)建表操作

需要注意:

  • 会自动同步到节点2和节点3上

  • 集群名字要和配置文件中的一致

  • 分片和副本名称从配置文件的宏定义中获取

create table st_order_mt on cluster gmall_cluster (
    id UInt32,
    sku_id String,
    total_amount Decimal(16,2),
    create_time  Datetime
 ) engine =ReplicatedMergeTree('/clickhouse/tables/{shard}/st_order_mt_0105','{replica}')
   partition by toYYYYMMDD(create_time)
   primary key (id)
   order by (id,sku_id);

接着创建Distribute分布式表

create table st_order_mt_all on cluster gmall_cluster
(
    id UInt32,
    sku_id String,
    total_amount Decimal(16,2),
    create_time  Datetime
)engine = Distributed(gmall_cluster,default, st_order_mt,hiveHash(sku_id));

参数含义

Distributed(集群名称库名本地表名分片键)

分片键必须是整型数字,所以用HiveHash函数进行转化,也可以用rand()

!!!可以切换到不同节点中,查看“是否”创建表成功,若创建成功,则证明配置文件没问题.集群搭建成功

你可能感兴趣的:(clickhouse)