ClickHouse 入门篇——ClickHouse集群环境安装部署(3台服务器)协同与zooKeeper

时间:2024-11-06 13:31:32

本期与大家分享的是,小北用心整理的ClickHousex学习必不可少的集群环境搭建哦 ,希望对大家能有帮助,大家喜欢就给点鼓励吧,欢迎各位大佬评论区指教讨论!

????????????制作不易,各位大佬们给点鼓励!
????????????点赞???? ➕ 收藏⭐ ➕ 关注✅
????????????欢迎各位大佬指教,一键三连走起!

环境安装是基于:CentOS 7 系统linux 集群(本文是3台)

一、ClickHouse安装前准备工作

1.确定防火墙是关闭状态

取消打开的文件数限制

ulimit  -a    shell命令是用来查看linux系统的一些限制情况

修改这两个配置

在这里插入图片描述

(1)在master 主节点 的/etc/security/文件的末尾加入以下内容:

sudo vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072


解释说明:  
*      表示  所有用户
soft   表示  当前生效的
hard   表示  最大(上限)
nofile 表示  文件个数
nproc  表示  进程个数

在这里插入图片描述

(2)在master 主节点 的/etc/security// 文件的末尾加入以下内容:

sudo vim /etc/security/limits.d/20-nproc.conf 
注意:没有20-nproc.conf 该文件就创建一个
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072

在这里插入图片描述

(3)在master节点执行以下命令 将配置好的两个文件同步到 另外两台节点

在这里插入图片描述

3、安装依赖 ( 所有节点都要安装 )

sudo yum install -y libtool

在这里插入图片描述

 sudo yum install -y *unixODBC*

在这里插入图片描述

取消SELINUX

1.  修改/etc/selinux/config 中的SELINUX=disabled
     sudo vim /etc/selinux/config

在这里插入图片描述

2. 同步到其它节点

在这里插入图片描述

5. 重启服务器集群(这里是三台) reboot

二、ClickHouse 单机安装

clickhouse的安装有多种方式 可以在线安装 /#quick-start
在这里插入图片描述本篇文章 演示的是离线安装

1. 下载 4个 安装包 本文安装的是ClickHouse最新稳定版21.3.7.14

ClickHouse的版本变化区别:在 20.5 版本是开始支持 final ; 20.6.3版本增加了explain ; 20.8版本后增加了一些新的引擎如:实时同步MySQL

可以从官网下载/docs/en/getting-started/install/,适合CentOS系统的rpm包下载链接/rpm/stable/
在这里插入图片描述
这里小北已经给大家下载准备好了哦 !
百度网盘链接: /s/1rpQbhzkNE2LzkAwWMmu8Nw?pwd=benx 提取码: benx 复制这段内容后打开百度网盘手机App,操作更方便哦

2. 上传4个rpm包到主节点 master中的目录中

在这里插入图片描述

3. 先进入我们创建的clickhouse目录下,使用shell命令sudo rpm -ivh *.rpm 安装4个rpm包,执行安装,会出现下面这个设置用户权限的密码,我们作为学习,可以不设置,直接回车就行。在这里插入图片描述

安装完毕:

在这里插入图片描述

查看clickhouse的一些文件信息

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

4. 进行一些配置修改

在这里插入图片描述

配置 文件 保存退出用:wq!
vim config.xml 

在这里插入图片描述

另外呢,我们也可修改文件数据的依赖、临时文件、日志等的存放路径

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

5. 若是搭建集群环境的话,还要在其它两个节点重复以上步骤安装clickhouse

6.启动clickhouse

查看clickhouse的状态:
 sudo systemctl status clickhouse-server.service 或者使用 sudo clickhouse status

启动: sudo clickhouse start
重启: sudo clickhouse restart

在这里插入图片描述

因为我们是用来学习的,所以呢可以关闭他的开机自启sudo systemctl disable 但是呢生产环境下,是不会关闭的。

7.连接clickhouse-client 客户端

本地访问:clickhouse-client -m

远程访问:
clickhouse-client -h hostname -p port

查询sql:不需要进入客户端,可以直接执行
clickhouse-client --query"写sql查询语句"  

注意 !注意 !注意!

在这里插入图片描述
修改clickhouse默认端口号:

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

在这里插入图片描述

修改为以下内容:

<tcp_port>9300</tcp_port>

保存退出 ,重新启动clickhouse

sudo systemctl restart clickhouse-server.service

重新访问clickhouse客户端:

clickhouse-client --port 9300

在这里插入图片描述

8. 配置ClickHouse的协助者 zooKeeper

方法一:我们可以直接进入ClickHouse的配置文件修改zooKeeper的配置信息
vim /etc/clickhouse-server/config.xml

在这里插入图片描述

方法二:使用 .xml 文件来加载zookeeper配置信息
(1)先进入config.d目录下
		cd /etc/clickhouse-server/config.d/
(2)修改或新增一个 metrika.xml文件
		vim metrika.xm
(3)添加以下内容:
		<?xml version="1.0"?>
		<yandex>
		  <zookeeper-servers>
		    <node index="1">
		        <host>master</host>
		        <port>2181</port>
		    </node>
		    <node index="2">
		         <host>node1</host>
		         <port>2181</port>
		   </node>
		   <node index="3">
		        <host>node2</host>
		        <port>2181</port>
		   </node>
		 </zookeeper-servers>
		</yandex>

(4)修改文件权限组:
		chown clickhouse:clickhouse metrika.xml 

在这里插入图片描述
(5)进入vim /etc/clickhouse-server/ 文件 添加配置信息

<zookeeper incl="zookeeper-servers" optional="true" />
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>

在这里插入图片描述
(6) 分发修改的配置信息到另外两个节点

scp -r /etc/clickhouse-server/config.d node1:`pwd`
scp -r /etc/clickhouse-server/config.d node2:`pwd`
scp -r /etc/clickhouse-server/config.xml node1:`pwd`
scp -r /etc/clickhouse-server/config.xml node2:`pwd`

在这里插入图片描述
(7) 启动zooKeeper 并且 重启 ClickHouse 集群

!注意 !: 副本只能同步数据,不能同步表结构,所以我们需要在每台机器上自己手动建表

在这里插入图片描述