clickhouse 单节点部署 ¶
系统要求 ¶
官方预构建的二进制文件通常针对x86_64进行编译,并利用SSE 4.2
指令集,因此,除非另有说明,支持它的CPU使用将成为额外的系统需求。下面是检查当前CPU是否支持SSE 4.2的命令:
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"
配置Linux相关环境设置系统参数 ¶
调整操作系统最大进程数和文件句柄 ¶
修改 /etc/security/limits.conf 一样
root soft nofile 65535
root hard nofile 65535
* soft nofile 65535
* hard nofile 65535
* soft nproc 131072
* hard nproc 131072
ulimit -n
ulimit -a
离线安装 下载 clickhouse server 和 client ¶
https://github.com/ClickHouse/ClickHouse/releases 下载,安装包列表:
clickhouse-common-static
—ClickHouse
编译的二进制文件。clickhouse-server
— 创建clickhouse-server
软连接,并安装默认配置服务clickhouse-client
— 创建clickhouse-client
客户端工具软连接,并安装客户端配置文件。
wget https://github.com/ClickHouse/ClickHouse/releases/download/v23.8.14.6-lts/clickhouse-common-static-23.8.14.6-amd64.tgz
wget https://github.com/ClickHouse/ClickHouse/releases/download/v23.8.14.6-lts/clickhouse-server-23.8.14.6.x86_64.rpm
wget https://github.com/ClickHouse/ClickHouse/releases/download/v23.8.14.6-lts/clickhouse-client-23.8.14.6.x86_64.rpm
安装并启动 ¶
安装 ¶
rpm -i clickhouse-common-static-23.8.14.6.x86_64.rpm
rpm -i clickhouse-server-23.8.14.6.x86_64.rpm
rpm -i clickhouse-client-23.8.14.6.x86_64.rpm
启动 ¶
systemctl enable clickhouse-server --now
相关文件介绍 ¶
/etc/clickhouse-server:服务端的配置文件目录,包括全局配置 config.xml 和用户配置 users.xml
/var/lib/clickhouse:默认的数据存储目录,如果是生产环境可以将其修改到空间较大的磁盘挂载路径。可以通过修改
/etc/clickhouse-server/config.xml 配置文件中 、<tmp_path> 和<user_files_path> 标签值来设置。
/var/log/clickhouse-server:默认的日志保存目录。同样可以通过修改/etc/clickhouse-server/config.xml 配置文件中 和 标签值来设置。
/etc/cron.d/clickhouse-server:clickhouse server 的一个定时配置,用于恢复因异常中断的ClickHouse 服务进程。
~/.clickhouse-client-history (隐藏文件) 所有通过交互式命令行执行的sql历史记录。可使用ll -a命令查看
设置账号密码 ¶
1. 加密 ¶
PASSWORD=$(base64 < /dev/urandom | head -c16); echo "$PASSWORD";
echo -n "$PASSWORD" | sha256sum | tr -d '-'
zqVHrCwjEn3vcfMz
5a2e334d49ffce2261f3506929f1bc94de52d0ab5eb969e7af5121d8a0e18575
2. 修改用户文件 ¶
# cat /etc/clickhouse-server/users.d/default-user.xml
<clickhouse>
<!-- Docs: <https://clickhouse.com/docs/en/operations/settings/settings_users/> -->
<users>
<!-- Remove default user -->
<default remove="remove">
</default>
<default>
<profile>default</profile>
<networks>
<ip>::/0</ip>
</networks>
<password_sha256_hex>5a2e334d49ffce2261f3506929f1bc94de52d0ab5eb969e7af5121d8a0e18575</password_sha256_hex>
<quota>default</quota>
<access_management>1</access_management>
</default>
</users>
</clickhouse>
3. 允许远程连接 ¶
修改 /etc/clickhouse-server/config.xml
<listen_host>::1</listen_host>
<listen_host>0.0.0.0</listen_host>
4. 测试 ¶
clickhouse-client -h 10.150.4.201 --port 9000 -u default --password zqVHrCwjEn3vcfMz --query "show databases;"