部署参考文档:https://cloud.yandex.com/en/docs/managed-clickhouse/
中文文档:https://clickhouse.com/docs/zh/getting-started/playground/
gui工具举例:https://clickhouse.com/docs/zh/interfaces/third-party/gui/
odbc驱动:https://packagecloud.io/Altinity/clickhouse
版本:
ClickHouse 20.8.7.15
查看版本:
select version();
hosts基础配置
vi /etc/hosts
192.168.189.9 master
192.168.189.10 slave1
192.168.189.11 slave2
jdk1.8
java version "1.8.0_181"
取消打开文件数限制
ulimit -a
cd /etc/security/limit.conf加入以下内容
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 121072
***可以限定用户组:用户名@用户组 代替
soft 软状态:
hard 硬状态:
nofile 文件数
nproc 进程数
备注:/etc/security/limits.d/20-nporc.conf 可覆盖上面配置
取消selinux
vi /etc/selinux/config中的
SELINUX=disabled
重启: 可以临时生效 setenforce 0
1.redhat7.5安装 master
#1.redhat时区设置
#查看时区
timedatectl status
#设置时区
timedatectl set-timezone "Asia/Shanghai"
#2.clickhouse安装
--rpm -ivh clickhouse-server-common-20.8.7.15-1.el7.x86_64.rpm --此个未知
rpm -ivh clickhouse-common-static-dbg-20.8.7.15-1.el7.x86_64.rpm
rpm -ivh clickhouse-common-static-20.8.7.15-1.el7.x86_64.rpm
rpm -ivh clickhouse-server-20.8.7.15-1.el7.x86_64.rpm
rpm -ivh clickhouse-client-20.8.7.15-1.el7.x86_64.rpm
#3.echo "创建clickhouse数据存储目录"
mkdir -p /home/clickhouse/data/clickhouse
chown -R clickhouse:clickhouse /home/clickhouse/data/clickhouse
#4.启动
service clickhouse-server start
或者
systemctl start clickhouse-server
或者
clickhouse start
#5.添加端口
firewall-cmd --zone=public --add-port=8123/tcp --permanent
#重载
firewall-cmd --reload
#查看所有防火墙端口
firewall-cmd --zone=public --list-ports
#查看防火墙运行
firewall-cmd --state
#开机自启
systemctl enable clickhouse-server
2.slave1,slave2安装单机版本
3.zookeper集群安装
cd /soft/apache-zookeeper-3.6.2/bin
./zkServer.sh start
firewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --reload
分发文件: xsync /soft/apache-zookeeper-3.6.2
备注:详情请见zookeeper集群部署
4…clickhouse集群配置
配置信息:metrika.xml
<yandex><!-- 该标签与config.xml的<remote_servers incl="clickhouse_remote_servers" >保持一致 -->
<clickhouse_remote_servers>
<!-- 集群名称,可以修改 -->
<clickhouse_cluster>
<!-- 配置三个分片,每个分片对应一台机器-->
<shard>
<!-- 是否内部复制 -->
<internal_replication>true</internal_replication>
<replica>
<host>master</host>
<port>9000</port>
</replica>
</shard>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>slave1</host>
<port>9000</port>
</replica>
</shard>
<shard>
<replica>
<internal_replication>true</internal_replication>
<host>slave2</host>
<port>9000</port>
</replica>
</shard>
</clickhouse_cluster>
</clickhouse_remote_servers><!-- 该标签与config.xml的<zookeeper incl="zookeeper-servers" optional="true" />保持一致-->
<zookeeper-servers>
<node>
<host>master</host>
<port>2181</port>
</node>
<node>
<host>slave1</host>
<port>2181</port>
</node>
<node>
<host>slave1</host>
<port>2181</port>
</node>
</zookeeper-servers><!-- 分片和副本标识,shard标签配置分片编号,<replica>配置分片副本主机名需要修改对应主机上的配置-->
<macros>
<shard>01</shard>
<replica>master</replica>
</macros>
<macros>
<shard>02</shard>
<replica>slave1</replica>
</macros>
<macros>
<shard>03</shard>
<replica>slave2</replica>
</macros>
</yandex>
配置文件:config.xml
/etc/clickhouse-server/config.d文件夹下添加一个名为metrika.xml的配置文件
<!--引入metrika.xml-->
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>
<!--引用Zookeeper配置的定义-->#
<zookeeper incl="zookeeper-servers" optional="true" />
5.成功状态
SELECT *
FROM system.clusters