基于clickhouse keeper搭建clickhouse集群

服务器信息

主机名 IP
my-db01 192.168.1.214
my-db02 192.168.1.215
my-db03 192.168.1.216
  • hosts设置
# 切换成root
sudo -i
# my-db01 执行
echo '192.168.1.215 my-db02' >> /etc/hosts
echo '192.168.1.216 my-db03' >> /etc/hosts

# my-db02 执行
echo '192.168.1.214 my-db01' >> /etc/hosts
echo '192.168.1.216 my-db03' >> /etc/hosts

# my-db03 执行
echo '192.168.1.214 my-db01' >> /etc/hosts
echo '192.168.1.215 my-db02' >> /etc/hosts

安装

使用admin用户安装:

  • 添加官方镜像
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://packages.clickhouse.com/rpm/clickhouse.repo
  • 安装clickhouse-server和clickhouse-client
sudo yum install -y clickhouse-server clickhouse-client

版本信息:

操作系统:CentOS Linux release 7.9.2009 (Core)

systemd:219

clickhouse-client:23.2.4.12-1.x86_64

clickhouse-server:23.2.4.12-1.x86_64

clickhouse-common-static:23.2.4.12-1.x86_64

  • 安装nc命令,用于检查连通性
yum install -y nc

调整配置

目录调整

# 创建数据目录
sudo mkdir -p /data/clickhouse/lib
# 创建日志目录
sudo mkdir -p /data/clickhouse/log
# 授权
sudo chown -R clickhouse:clickhouse /data/clickhouse
sudo chmod 777 /data

# 备份原始配置文件
sudo cp /etc/clickhouse-server/users.xml ~
sudo cp /etc/clickhouse-server/config.xml ~

# 更改目录配置
## 权限更改
sudo chmod 666 /etc/clickhouse-server/config.xml
sudo chmod 666 /etc/clickhouse-server/users.xml
## 日志目录替换
sudo sed -i 's?/var/log/clickhouse-server?/data/clickhouse/log?g' /etc/clickhouse-server/config.xml
## 数据目录替换
sudo sed -i 's?/var/lib/clickhouse?/data/clickhouse/lib?g' /etc/clickhouse-server/config.xml

启停

  • 修改sudo vi /usr/lib/systemd/system/clickhouse-server.service参考:《问题记录->启动超时》
  • 设置自启动:sudo systemctl enable clickhouse-server
  • 启动命令:sudo systemctl start clickhouse-server
  • 关闭命令:sudo systemctl stop clickhouse-server
  • 启动状态:sudo systemctl status clickhouse-server

参数调整

sudo vi /etc/clickhouse-server/config.xml中的配置:

  • background_pool_size:默认16,可以调整到CPU个数的两倍。本次调整到32

  • max_concurrent_queries:默认100,可以调整到200或者300。本次调整到200

  • 设置外网(ipv4)可访问:
    <listen_host>0.0.0.0</listen_host>
    
    设置interserver_listen_host,因为服务器不支持ipv6
    (如果不设置,配置了clickhouse-keeper后,会无法启动,报错:
    RaftInstance: got exception: open: Address family not supported by protocol
    )
    <interserver_listen_host>0.0.0.0</interserver_listen_host>
    

users.xml中的配置:

  • 密码设置:
# 使用下述命令生成随机密码
PASSWORD=$(base64 < /dev/urandom | head -c12); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
# 明文密码:z+yJwbcWv6MA
# 密文密码:b53ad819c11d5790655464f2d6ec0e78916551b62141fec0d1342a25138082d2
<password_sha256_hex>b53ad819c11d5790655464f2d6ec0e78916551b62141fec0d1
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值