centos7.6离线安装clickhouse20.10.2.20

发布于 7 个月前 作者 JunjianS 1762 次浏览 最后一次编辑是 2 个月前 来自 实战经验

这里准备了4台机器,配置为16C32G500G ck01 ck02 ck03 ck04

第一步:下载安装包 下载地址:https://repo.clickhouse.tech/tgz/stable/ 下载以下三个安装包 clickhouse-client-20.10.2.20.tgz clickhouse-server-20.10.2.20.tgz clickhouse-common-static-20.10.2.20.tgz clickhouse-common-static-dbg-20.10.2.20.tgz

以下命令可使用默认root(本人开发环境默认root) 第二步:**操作系统是否支持 执行:grep -q sse4_2 /proc/cpuinfo && echo “SSE 4.2 supported” || echo "SSE 4.2 not supported" 显示:SSE 4.2 supported,为支持

第三步:安装zookeeper CK需要ZK存储集群信息,比如分片(shard),副本(replica)等,所以需要准备一套ZK环境,ZK集群安装略过,请自行安装,这里ZK集群信息为 zk01:2181, zk02:2181, zk03:2181

第四步:创建用户clickhouse 在4个节点分别执行以下操作: useradd clickhouse 后面的步骤全部切换到用户clickhouse再操作

第五步:解压并安装 在4个节点分别执行以下操作

tar -xzvf clickhouse-common-static-20.10.2.20.tgz sudo clickhouse-common-static-20.10.2.20/install/doinst.sh tar -xzvf clickhouse-common-static-dbg-20.10.2.20.tgz sudo clickhouse-common-static-dbg-20.10.2.20/install/doinst.sh tar -xzvf clickhouse-server-20.10.2.20.tgz sudo clickhouse-server-20.10.2.20/install/doinst.sh tar -xzvf clickhouse-client-20.10.2.20.tgz sudo clickhouse-client-20.10.2.20/install/doinst.sh

Centos7须用一下命令启动、关闭、查看服务 查看节点状态

systemctl status clickhouse-server 截屏2021-01-18 下午2.06.39.png 启动节点服务 systemctl start clickhouse-server 停止节点服务 systemctl stop clickhouse-server

第六步:修改配置 安装成功后,在/etc/clickhouse-server/ 目录下生成配置文件config.xml及user.xml、自定义配置目录config.d及users.d,推荐在config.d及users.d下新建配置文件,然后在config.xml及user.xml中引入config.d及users.d下的配置文件。 截屏2021-01-18 下午2.12.35.png config.xml中配置项很多,需要修改的配置项及取值如下: listen_host 截屏2021-01-18 下午2.14.24.png 将remote_servers内容清空 截屏2021-01-18 下午2.17.20.png config.xml中的其它内容可以先不改动了,然后在config.d目录下新建一个metrika.xml文件,作为自定义配置文件,这里4个节点,2个shard,每个shard1个replica,内容如下:

<yandex> <!–ck集群节点–> <!–这里标签的名字要和config.xml中的一致–> <clickhouse_remote_servers> <test_ck_cluster> <!–分片1–> <shard> <weight>1</weight> <internal_replication>true</internal_replication> <replica> <host>ck01</host> <port>9000</port> <user>default</user> <password></password> <compression>true</compression> </replica> <replica> <host>ck02</host> <port>9000</port> <user>default</user> <password></password> <compression>true</compression> </replica> </shard> <!–分片2–> <shard> <weight>1</weight> <internal_replication>true</internal_replication> <replica> <host>ck03</host> <port>9000</port> <user>default</user> <password></password> <compression>true</compression> </replica> <replica> <host>ck04</host> <port>9000</port> <user>default</user> <password></password> <compression>true</compression> </replica> </shard> </test_ck_cluster> </clickhouse_remote_servers> <!–zookeeper相关配置–> <!–这里标签的名字zookeeper-servers要和config.xml中的一致–> <zookeeper-servers> <node index=“1”> <host>zk01</host> <port>2181</port> </node> <node index=“2”> <host>zk02</host> <port>2181</port> </node> <node index=“3”> <host>zk03</host> <port>2181</port> </node> </zookeeper-servers>

以上配置每个节点相同,macros配置每个节点不同,根据clickhouse_remote_servers中的配置而定,macros定义的宏,在后面创建数据表是会用到

<macros> <replica>ck01</replica> <!–当前节点主机名–> <shard>1</shard> </macros>

<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>

第七步:验证集群 在集群任何一个节点上,使用命令clickhouse-client登陆 使用语句select * from system.clusters查看集群信息 截屏2021-01-18 下午2.25.09.png

高可用方案官方推荐单节点单实例,单分片多副本(至少2副本),这种情况下例如6台机器的集群,每台机器单实例,也就是有3个shard,每个shard2个replica,这样看貌似有一半(3台)正常情况下是闲置的,其实不然,当并发较高(达到一定程度),查询会分配到副本节点,也就是副本节点也会参与计算。

1 回复
回到顶部