部署 ClickHouse
检测本地环境
#检查当前 CPU 是否支持 SSE4.2 的命令
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"
若当前主机不支持 SSE4.2 或具有 AArch64 或 PowerPC64LE 体系结构的处理器上运行 ClickHouse,则如该方法调整配置用 docker 去构建 ClickHouse
使用 DEB 软件包(Ubuntu 和 Debian)
从镜像库中安装 ClickHouse
sudo apt-get install apt-transport-https ca-certificates dirmngr
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E0C56BD4
echo "deb https://repo.clickhouse.tech/deb/stable/ main/" | sudo tee \
/etc/apt/sources.list.d/clickhouse.list
sudo apt-get update
sudo apt-get install -y clickhouse-server clickhouse-client
sudo service clickhouse-server start
clickhouse-client
若想使用最新版本,可以将 stable
改为 testing
上面是直接从镜像库中下载我们所需的软件包,如果你有一些别的需求的话,可以自行下载
手动下载软件包
clickhouse-common-static
—— 安装 ClickHouse 编译的二进制文件clickhouse-server
—— 为该服务器创建符号链接并安装默认服务器配置clickhouse-client
—— 和其他客户端相关工具创建符号链接,并安装客户端配置文件clickhouse-common-static-dbg
—— 安装带有调试信息的 ClickHouse 编译二进制文件
使用 RPM 软件包(CentOS 和 RedHat)
添加官方存储库
sudo yum install yum-utils
sudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG
sudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_64
若想使用最新版本,可以将 stable
改为 testing
安装软件包
sudo yum install clickhouse-server clickhouse-client
手动下载软件包详情和上述相同
Docker 上部署
macos
—— curl -O ‘https://builds.clickhouse.tech/master/macos/clickhouse’ && chmod a+x ./clickhouse
FreeBSD
—— curl -O ‘https://builds.clickhouse.tech/master/freebsd/clickhouse’ && chmod a+x ./clickhouse
AArch64
—— curl -O ‘https://builds.clickhouse.tech/master/aarch64/clickhouse’ && chmod a+x ./clickhouse
拉取 clickhouse 的 docker 镜像
docker pull yandex/clickhouse-server
docker pull yandex/clickhouse-clinet
启动 server 端
# 默认启动
docker run -d --name clickhouse --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 -p 9009:9009 yandex/clickhouse-server
# 查看容器
docker ps -a
# 进入容器
docker exec -it docker-clickhouse /bin/bash
# 进入 clickhouse 命令行
clickhouse-client
配置远程访问
# 将clickhouse的配置文件拷贝出来
docker cp clickhouse-server:/etc/clickhouse-server/ /etc/clickhouse-server/
修改配置文件 /etc/clickhouse-server/config.xml ,注释掉 <listen_host>::</listen_host>
# 自定义配置文件启动容器
docker run -d --name docker-clickhouse --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 -p 9009:9009 -v /etc/clickhouse-server/config.xml:/etc/clickhouse-server/config.xml yandex/clickhouse-server
自此,端口已经映射出来
,即外部可以远程访问。
遇到的坑
服务器 CPU 内存不足,安装 ClickHouse 至少需要 4 核 CPU(否则无法启动 ClickHouse,连接一直会被拒绝)