《clickhouse专栏》第三节内容,先安装一个单机版的clickhouse,是后续学习多副本或者分布式集群安装的基础内容。但基本的clickhouse是不依赖于zookeeper的,只有涉及到集群部署的clickhouse才会使用到zookeeper。

一、准备工作

准备工作的部分可能存在不同的linux操作系统发行版,使用的操作命令不一致,但基本上大同小异,大家根据自己的操作系统调整(我使用的是CentOS linux)。

  1. 在主机防火墙开放clickhouse需要使用的端口(默认为9000),或者关闭防火墙。
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --reload
  1. CentOS 有文件打开数量的限制,通常需要按照大数据通用做法,将文件打开数配置变大/etc/security/limits.conf文件的末尾加入以下内容(如果已经存在就修改)
soft nofile 65536
hard nofile 65536
soft nproc 131072
hard nproc 131072
  1. 安装依赖
yum install -y libtool;
yum install -y *unixODBC*;
  1. CentOS 取消 SELINUX

    修改/etc/selinux/config 中的 SELINUX=disabled。修改这个配置需要重启,临时生效命令setenforce 0 查询状态命令getenforce

二、安装包下载、安装

官网推荐的是使用shell脚本的方式,或者yum 、apt-get的方式来安装。但是这种安装方式需要连接互联网,在很多情况下我们的安装环境没有互联网,或者使用的linux发行版并不一致,导致操作命令不一致。所以通过rpm安装包的方式进行安装就更通用一些。

安装包可以通过这个连接进行下载:https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/,安装包的版本号要一致。如:

  • clickhouse-client-21.7.9.7-2.noarch.rpm
  • clickhouse-common-static-21.7.9.7-2.x86_64.rpm
  • clickhouse-server-21.7.9.7-2.noarch.rpm

规划clickhouse集群的主机,将上面的安装包放入集群统一的规划目录下面。如:/root/clickhouse。然后在集群内每一台主机上该目录下执行命令,则可进行离线安装。

rpm -ivh *.rpm;

安装过程会提示输入默认用户密码,输入即可,并记住你的密码 。通过命令rpm -qa|grep clickhouse检查安装结果,结果如下表示安装成功。

clickhouse-common-static-21.7.9.7-2.x86_64
clickhouse-client-21.7.9.7-2.noarch
clickhouse-server-21.7.9.7-2.noarch

rpm安装之后,默认的相关目录为(在安装过程中,会默认新建用户clickhouse,如果你不打算使用默认目录,下文中会提供修改方式。需要注意的是:如果你新建自定义目录,要保证clickhouse用户的读写权限):

  • ck脚本目录:/usr/bin/
  • ck配置目录:/etc/clickhouse-server/
    • /etc/clickhouse-server/config.xml clickhouse的核心配置文件
  • ck的数据目录:/var/lib/clickhouse-server
  • ck的日志目录:/var/log/clickhouse-server

三、基础配置修改

先通过如下的命令增加配置文件的可修改权限,默认是只读权限。

chmod u+w /etc/clickhouse-server/config.xml
  • 修改 /etc/clickhouse-server/config.xml。把 listen_host配置的:: 的XML注释打开,这样的话才能让 ClickHouse 被除本 机以外的服务器访问

  • 日志配置也在/etc/clickhouse-server/config.xml这个文件中,可以修改日志级别和相关存储目录

  • 生产环境下,通常默认的数据存储目录需要修改为独立挂载的磁盘目录

  • 修改时区,找到timezone标签,将内容修改为Asia/Shanghai
<timezone>Asia/Shanghai</timezone>

四、单机启动及登录验证

  • 启动命令:clickhouse start
  • 停止命令: clickhouse stop
  • 查看clickhouse当前主机节点的状态:systemctl status clickhouse-server
  • 客户端连接命令:clickhouse-client -m ,有设置密码的话使用clickhouse-client -m --password Abcd1234
  • 直接执行命令clickhouse-client --password Abcd1234 --query "show databases;"
  • 在安装了clickhouse client的服务器上远程访问:clickhouse-client -h 192.168.132.14 --port 9000 -u default --password abcd1234
作者:|慕沐1265758|,原文链接: http://www.imooc.com/article/325952

文章推荐

k8s资源对象(二)

Linux 内存管理 pt.2

深入理解python虚拟机:调试器实现原理与源码分析

逍遥自在学C语言 | 赋值运算符

hadoop伪分布式集群的安装(不是单机版)

Linux线程同步必知,常用方法揭秘!

实现一个CRDT工具库——VClock 时钟向量类

如何通过Java代码在Word中创建可填充表单

Shifu高级功能:命令行中间件之HTTP 到 SSH 的中间件

关于哈希

Vben Admin 源码学习:项目初始化

Docker 与 K8S学习笔记(二十三)—— Kubernetes集群搭建