Centos7.8系统ClickHouse21.1.6.13安装与部署

本文详细介绍了ClickHouse的特性,如高速、线性扩展和丰富的性能,并提供了在CentOS7上的离线安装步骤。首先,确认CPU支持SSE4.2,然后下载预编译的tgz文件,关闭防火墙,设置FQDN,修改配置文件,最后启动服务。安装过程中涉及的目录结构、配置文件修改及启动服务的细节也进行了详尽阐述。
摘要由CSDN通过智能技术生成

1.什么是clickhouse

ClickHouse是第一个真正意义上的开源OLAP数据库管理系统
它是面向列的,允许使用SQL查询实时生成分析报告。

序号特性序号特性
1速度快4高效硬件利用
2线性扩展5容错
3性能丰富6高可用

ClickHouse的性能超过了市场上类似的面向列的数据库管理系统。它每台服务器每秒处理数亿到10亿行数据和几百亿字节的数据。

在这里插入图片描述

官网地址: https://clickhouse.tech/

2、离线安装部署

2.1 ClickHouse的安装过程

预构建包的系统要求:Linux, x86_64 with SSE 4.2.
ClickHouse支持运行在主流64位CPU架构(X86、AArch和PowerPC)的Linux操作系统之上,可以通过源码编译、预编译压缩包、Docker镜像和RPM等多种方法进行安装。由于篇幅有限,本节着重讲解离线Tga的安装方法。更多的安装方法请参阅官方手册,此处不再赘述。

2.2 环境准备

在这个示例中,演示服务器的操作系统为CentOS Linux release 7.8.2003 (Core)
,而ClickHouse选用21.1.6.13版本。在正式安装之前,我们还需要做一些准备工作。
https://repo.clickhouse.tech/tgz/
https://repo.clickhouse.tech/rpm/stable/x86_64

2.2.1 系统要求

ClickHouse can run on any Linux, FreeBSD, or Mac OS X with x86_64, AArch64, or PowerPC64LE CPU architecture.
通过以下指令检查当前CPU是否支持SSE4.2:

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

在这里插入图片描述
如果不支持SSE指令集,则不能直接使用先前下载的预编译安装包,需要通过源码编译特定的版本进行安装。

2.2.2 下载Tgz安装文档

建议对所有Linux发行版使用官方预编译的tgz存档,在这些发行版中不可能安装deb或rpm包。

可以使用curl或wget从存储库下载所需的版本https://repo.clickhouse.tech/tgz/.
下载并解压后执行安装脚本。
如下所示:

export LATEST_VERSION=`curl https://api.github.com/repos/ClickHouse/ClickHouse/tags 2>/dev/null | grep -Eo '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | head -n 1`
curl -O https://repo.clickhouse.tech/tgz/stable//clickhouse-common-static-$LATEST_VERSION.tgz
curl -O https://repo.clickhouse.tech/tgz/stable/clickhouse-common-static-dbg-$LATEST_VERSION.tgz
curl -O https://repo.clickhouse.tech/tgz/stable/clickhouse-server-$LATEST_VERSION.tgz
curl -O https://repo.clickhouse.tech/tgz/stable/clickhouse-client-$LATEST_VERSION.tgz

在这里插入图片描述

2.2.3 关闭防火墙

首先,考虑到后续的集群部署,通常建议关闭本机的防火墙,在CentOS 7下关闭防火墙的方法如下:

# 关闭防火墙
systemctl stop firewalled.service
# 禁止开机启动项
systemctl disable firewalled.service

2.2.4 设置FQDN(fully qualified domain name)

现在需要为服务器设置FQDN:

hostnamectl --static set-hostname ck1.bankbigdata.cn

验证修改是否生效:

hostname

在这里插入图片描述

最后需要配置hosts文件,配置后的效果如下:

cat /etc/hosts
...
192.168.2.11 ck1.bankbigdata.cn

2.3 安装ClickHouse

2.3.1 安装执行

假设已经将待安装的tgz文件上传到了服务器的/chbase/setup路径下,此时进入该目录
在这里插入图片描述
解压安装

tar -xzvf clickhouse-common-static-$LATEST_VERSION.tgz
sudo clickhouse-common-static-$LATEST_VERSION/install/doinst.sh

tar -xzvf clickhouse-common-static-dbg-$LATEST_VERSION.tgz
sudo clickhouse-common-static-dbg-$LATEST_VERSION/install/doinst.sh

tar -xzvf clickhouse-server-$LATEST_VERSION.tgz
sudo clickhouse-server-$LATEST_VERSION/install/doinst.sh
sudo /etc/init.d/clickhouse-server start

tar -xzvf clickhouse-client-$LATEST_VERSION.tgz
sudo clickhouse-client-$LATEST_VERSION/install/doinst.sh

在这里插入图片描述
在这里插入图片描述

2.3.2 目录结构

程序在安装的过程中会自动构建整套目录结构,接下来分别说明它们的作用。
首先是核心目录部分:
(1)/etc/clickhouse-server:服务端的配置文件目录,包括全局配置config.xml和用户配置users.xml等
在这里插入图片描述
(2)/var/lib/clickhouse:默认的数据存储目录(通常会修改默认路径配置,将数据保存到大容量磁盘挂载的路径)。
在这里插入图片描述
(3)/var/log/clickhouse-server:默认保存日志的目录(通常会修改路径配置,将日志保存到大容量磁盘挂载的路径)。
在这里插入图片描述

2.3.3 修改配置文件

(1)/etc/security/limits.d/clickhouse.conf:文件句柄数量的配置,默认值如下所示。
在这里插入图片描述
该配置也可以通过config.xml的max_open_files修改。

(2)/etc/cron.d/clickhouse-server:cron定时任务配置,用于恢复因异常原因中断的ClickHouse服务进程,其默认的配置如下。

*/10 * * * * root (which service > /dev/null 2>&1 && (service clickhouse-server condstart ||:)) || /etc/init.d/clickhouse-server condstart > /dev/null 2>&1

可以看到,在默认的情况下,每隔10秒就会使用condstart尝试启动一次ClickHouse服务
在这里插入图片描述
如果ClickHouse服务正在运行,则跳过;如果没有运行,则通过start启动。

2.3.4 可执行文件

最后是一组在/usr/bin路径下的可执行文件
在这里插入图片描述
(1)clickhouse:主程序的可执行文件。
(2)clickhouse-client:一个指向ClickHouse可执行文件的软链接,供客户端连接使用。(3)clickhouse-server:一个指向ClickHouse可执行文件的软链接,供服务端启动使用。
(4)clickhouse-compressor:内置提供的压缩工具,可用于数据的正压反解。

2.3.5 修改配置启动服务

在启动服务之前,建议修改默认的数据保存目录,将它切换到大容量磁盘挂载的路径。打开config.xml配置文件,修改数据保存的地址:

创建数据存储文件目录:

mkdir -p /opt/chbase/data

修改配置路径:

    <!-- Path to data directory, with trailing slash. -->
    <path>/opt/chbase/data</path>

    <!-- Path to temporary data for processing hard queries. -->
    <tmp_path>/opt/chbase/data/tmp/</tmp_path>
    <!-- Directory with user provided files that are accessible by 'file' table function. -->
    <user_files_path>/opt/chbase/data/user_files/</user_files_path>

需要将该目录(/opt/chbase/data)的Owner设置为clickhouse用户:

chown clickhouse:clickhouse -R ./
# 日志目录设置为clickhouse用户
cd /var/log/clickhouse-server
chown clickhouse:clickhouse -R ./

在这里插入图片描述

clickhouse用户由安装程序自动创建,启动脚本会基于此用户启动服务。

在上述准备工作全部完成之后,就可以启动ClickHouse了

sudo -u clickhouse clickhouse-server restart --config-file=/etc/clickhouse-server/config.xml 

在启动成功之后,就可以使用客户端测试连接了:密码ch123

clickhouse-client --password

在这里插入图片描述
至此,单节点的安装过程就全部完成了。


ps:下一博文讲解Clickhouse客户端的访问接口(CLI&JDBC)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值