本期与大家分享的是,小北用心整理的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 集群
!注意 !: 副本只能同步数据,不能同步表结构,所以我们需要在每台机器上自己手动建表