ClickHouse 可以在任何具有 x86_64 ,AArch64 或 PowerPC64LE CPU 架构的 Linux ,FreeBSD 或 Mac OS X 上运行。貌似不能在 Windows 系统下安装,不过 ClickHouse 同样支持 Docker 部署,Windows 系统可以在 Docker 下安装 ClickHouse 。
根据官方文档推荐:Debian 或 Ubuntu 系统可以使用官方预编译的 deb 软件包来安装,CentOS 、RedHat 等Linux发行版可以使用官方预编译的 rpm 包 来安装,如果您的操作系统不支持安装 deb 或 rpm 包,也可以使用 tgz 软件包或直接源码编译安装。下面我们以 CentOS 系统为例,以 rpm 方式来安装下 ClickHouse。
more /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
检测当前CPU是否支持SSE 4.2
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported" SSE 4.2 supported
设置系统参数:
在/etc/security/limits.conf这个文件的末尾加入以下内容:
vim /etc/security/limits.conf
soft nofile 100001 *
hard nofile 100002 *
soft memlock unlimited *
hard memlock unlimited *
soft nproc 131072 *
hard nproc 131072
CentOS取消SELINUX
修改/etc/selinux/config中的SELINUX=disabled后重启
vim /etc/selinux/config
SELINUX=disabled
重启服务器生效
下面有4个rpm包,去官网下载rpm:跳转地址
上传四个包到服务器
依次执行:
注意安装server时需要输入默认用户密码:test123
rpm -ivh clickhouse-common-static-21.8.9.13-2.x86_64.rpm
rpm -ivh clickhouse-client-21.8.9.13-2.noarch.rpm
rpm -ivh clickhouse-server-21.8.9.13-2.noarch.rpm
rpm -ivh clickhouse-test-21.8.9.13-2.noarch.rpm
生成密码(上面设置的密码不生效情况下):
PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
256进行加密
修改默认密码
vim /etc/clickhouse-server/users.d/default-password.xml
修改基础配置:
vim /etc/clickhouse-server/config.xml
ps:如果提示readonly,需要授权:chmod +w /etc/clickhouse-server/config.xml
自己指定数据目录和日志目录:
/TRS/clickhouse/data/
/TRS/clickhouse/tmp
/var/log/clickhouse-server/clickhouse-server.log
/var/log/clickhouse-server/clickhouse-server.err.log
放开远程访问:
<listen_host>::listen_host>
启动:
nohup clickhouse-server --config-file=/etc/clickhouse-server/config.xml &
使用客户端链接:
clickhouse-client --password
vim /etc/clickhouse-server/config.xml
找到配置zookeeper配置,单节点zookeeper只需配置一个(zookeepr3.7存在问题未搭建成功->使用kafka2.3中zookeeper成功)
<zookeeper>
<node>
<host>10.12.71.4host>
<port>2181port>
node>
zookeeper>
其他ClickHouse服务器也均以此配置
ClickHouse config.ml 集群配置详解
<remote_servers>
<cluster_name>
<shard>
<replica>
<host>10.12.71.3host>
<port>9000port>
replica>
shard>
<shard>
<replica>
<host>10.12.71.4host>
<port>9000port>
replica>
shard>
cluster_name>
remote_servers>
cluster_name 为集群名字可以自定义,此处有坑,自定义的集群名不要用符号: - 要用下划线
shard 标签下配置各个集群的节点
每个节点都要进行与此相同的集群配置
配置完成后进入ClickHouse 客户端查看集群信息(每台节点都要查看)
clickhouse-client --password
select * from system.clusters
创建库表进行测试
create database cluster_test on cluster cluster_hx;
然后在其他节点上执行 show databases;
看到此数据库即可成功