ClickHouse 单机部署、HDFS配置

两部分内容:

  1. ClickHouse 单机部署
  2. ClickHouse 与 HDFS 数据传输配置

ClickHouse 单机部署

确认 SSE 4.2 supported

1
$ grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"

yum 配置

1
2
3
yum install yum-utils
rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG
yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_64

安装 ClickHouse

1
yum install clickhouse-server clickhouse-client

启动 ClickHouse

1
2
3
systemctl start clickhouse-server.service
systemctl status clickhouse-server.service
systemctl stop clickhouse-server.service

日志文件将输出

1
2
3
cd /var/log/clickhouse-server
ps -aux | grep clickhouse
netstat -nltp | grep clickhouse

修改配置文件config.xml

1
vim /etc/clickhouse-server/config.xml

先修改 tcp_port 为 9977,因为这个端口和 HDFS 的端口冲突了

1
<tcp_port>9977</tcp_port>

配置外网访问,修改后 DBeaver 才能访问
listen_host表示能监听的主机,::表示任意主机都可以访问

1
<listen_host>::</listen_host>

设置用户名和密码

1
vi /etc/clickhouse-server/users.xml

下增加以下配置

1
2
3
4
5
6
7
8
<root>
<password>root</password>
<networks incl="networks" replace="replace">
<ip>::/0</ip>
</networks>
<profile>default</profile>
<quota>default</quota>
</root>

修改完成后重启服务

1
2
systemctl restart clickhouse-server.service
systemctl status clickhouse-server.service

客户端登录

1
clickhouse-client --host=localhost --port=9977 --user=root --password=root -m
1
show create table tablename;

ClickHouse 与 HDFS 数据传输配置

Hadoop 集群 hdfs-site.xml 拷贝

Hadoop 集群 hdfs-site.xml 拷贝到 /etc/clickhouse-server

hdfs-site.xml 重命名为 hdfs-client.xml

修改 ClickHouse Server 启动文件,添加环境变量

1
2
vi /etc/systemd/system/clickhouse-server.service
Environment="LIBHDFS3_CONF=/etc/clickhouse-server/hdfs-client.xml"

加载并重启 clickhouse-server

1
2
3
systemctl daemon-reload
systemctl restart clickhouse-server.service
systemctl status clickhouse-server.service