目录
1. 环境数据
准备好三个集群,先配置好一个,再SCP或手动复制配置文件过去即可。
2. Tgz包准备
2.1. 查看系统版本信息
uname
cat /etc/redhat-release
uname -srm
2.2. 下载相关安装包
官网:https://clickhouse.tech/#community
因为测试环境不能进行系统配置文件修改,采用二进制包安装:
资源包网址:https://repo.clickhouse.tech/tgz/stable/
2.3. 创建相关目录
RealTimeAssembly为组件安装目录,realTimeTgz为安装包目录。
2.4. 中转Jar包
查看节点名称
2.5. 创建clickHouse目录
mkdir clickHouse
3. 解压安装
3.1. 解压
tar -zxvf -C /app/realtimeAssembly/
tar -zxvf clickhouse-client-20.10.2.20.tgz -C /app/realtime/realtimeAssembly/
tar -zxvf clickhouse-common-static-20.10.2.20.tgz -C /app/realtime/realtimeAssembly/
tar -zxvf clickhouse-common-static-dbg-20.10.2.20.tgz -C /app/realtime/realtimeAssembly/
tar -zxvf clickhouse-server-20.10.2.20.tgz -C /app/realtime/realtimeAssembly/
3.2. 安装
将安装包tar开并依次执行./doinst.sh文件
Common
Common-static
Server
client
4. 配置文件修改
4.1. clickhouse-server
4.1.1. config.xml
<!-- Path to data directory, with trailing slash. -->
<path>/home/clickhouse/data/clickhouse</path>
/app/realtime/realtimeAssemblyData/data
/app/realtime/realtimeAssemblyData/tempData
/app/realtime/realtimeAssemblyData/clickhouse/user_files/
5. 启动单节点
5.1. 启动clickhouse-server
cd /app/realtime/realtimeAssembly/clickhouse-server-20.10.2.20/etc/init.d/
clickhouse-server --config-file=/app/realtime/realtimeAssembly/clickhouse-server-20.10.2.20/etc/clickhouse-server/config.xml
5.1.1. 报错
5.1.2. 解决
cd /var/lib/
赋权
chown -R root:root clickhouse
// chown -R appuser:appuser clickhouse
5.2. 验证clickHouse是否起来了
ps -aux | grep clickhouse
5.2.1. 启动客户端
6. 集群模式
6.1. 打开注解
配置config.xml文件,打开第114行注解,listen_host。
6.2. 新增配置文件:
vi /etc/metrika.xml
<yandex>
<!-- 备份节点信息 -->
<clickhouse_remote_servers>
<perftest_3shards_1replicas>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>host1</host>
<port>9000</port>
</replica>
</shard>
<shard>
<replica>
<internal_replication>true</internal_replication>
<host>host2</host>
<port>9000</port>
</replica>
</shard>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>host3</host>
<port>9000</port>
</replica>
</shard>
</perftest_3shards_1replicas>
</clickhouse_remote_servers>
<!-- zookeeper配置信息 -->
<zookeeper-servers>
<node index="1">
<host>zk1</host>
<port>2181</port>
</node>
<node index="2">
<host>zk2</host>
<port>2181</port>
</node>
<node index="3">
<host>zk3</host>
<port>2181</port>
</node>
</zookeeper-servers>
<!-- 备份主机名,根据实际情况修改 -->
<macros>
<replica>host1</replica>
</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>
</case>
</clickhouse_compression>
</yandex>
7. 分发集群
7.1. 组件分发
cd /app/realtime/realtimeAssembly
scp /app/realtimeTgz root@host2:/app
ssh root@host3 root@host2:/app
7.2. 配置文件分发
8. 集群验证
select * from system.clusters;
9. 问题
root用户无法进行文件传输
mv /app/temp/config.xml /app/realtime/realtimeAssembly/clickhouse-server-20.10.2.20/etc/clickhouse-server/config.xml
mv /app/temp/metrika.xml /etc/metrika.xml