论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
大数据
›
数据仓库与分析
›
clickhouse节点重做(节点替换)
clickhouse节点重做(节点替换)
愛在花開的季節
金牌会员
|
2023-12-11 16:12:38
|
显示全部楼层
|
阅读模式
楼主
主题
556
|
帖子
556
|
积分
1668
测试验证环境:
docker容器化部署的4节点2分片和2副本(centos7+clickhouse22.1.3)
172.17.0.6 clickhouse01
172.17.0.7 clickhouse02
172.17.0.8 clickhouse03
172.17.0.9 clickhouse04(故障节点)
172.17.0.10 clickhouse04 (替换节点)
节点重做
一般情况,节点操作系统重装或者硬盘故障节点重做处理情况
一般都是两副本以上的集群,所以可以直接同步另一个副本节点的配置,拷贝过来,节点正常安装服务进程
需要的拷贝的东西有一下几点:
1、配置文件(config.xml、users.xml),需要调整config.xml的配置文件,修改macros中的replica改成当前节点
2、鉴权目录access
3、数据的映射目录data(里面的软连接目录可以忽略不用管)
4、元数据目录metadata
5、实际的建表目录,这个需要查到metadata下面的数据库对应的软连接目录给打包到新节点
将上面的三个目录打成压缩包,拷贝到重做节点,注意要是打包,不然软连接会不存在,变成一个目录了,这个没有给连接到数据目录等等的问题
比较复杂的是第五步的操作,一般情况下这个是作为一个数仓的存储,创建的数据库也不会很多,我们这边的生产环境一般是7个数据库,所以也就是拷贝store目录下的7个目录既即可,将他拷贝到重做节点的store目录下就可以了,启动之后,节点会检测当前几点与副本之前的区别,是空的节点会直接同步副本中的数据,但是这一步会很耗资源,需要挑一个合适的时间点来做
做好这些,启动重做节点的clickhouse服务,查看启动服务是否有报错,没有报错的话就可以登录节点查一下数据情况了,并且可以查看用户和授权情况有没有正常,然后测试数据写入和读取情况
节点故障替换
几点替换操作可跟上面的操作一样,但是集群需要使用的域名映射的方式部署的,也就是不能通过ip来做的,如果是节点ip做的话,zookeeper元数据上的replicas下没法对应 上,可能会有其他的问题,应该也可以通过命令来修复zookeeper的元数据
system restore replica default.st_order_mt_local on cluster two_shard_two_replica
这个是我的这个表元数据不在zookeeper上的,执行完成后查看zookeeper上就能查到这个元数据了
个人的见解说明,如有不足请指正
一般clickhouse节点的目录都如下
access这个是跟权限相关,数据库的和用户的授权关系,用户的创建语句都在这个下面,如果只是数据盘故障重做的,这个可以去相同分片节点去拷贝过来,这样节点重启的时候,就可以得到原来集群的授权关系和用户信息
data这个目录是实际数据存储目录,各个表的软连接,全部都是连接到store目录下,实际的数据存储目录是store下,可以用备用节点去查看备用节点的软连接关系,这里可以只创建软连接地址,实际的数据不需要管,启动之后会从副本中去同步数据
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
愛在花開的季節
金牌会员
这个人很懒什么都没写!
楼主热帖
dotnet C# 使用 Vortice 支持 Direct2D ...
SpringBoot
MySQL操作
Redis 原理 - Hash
golang基础知识
keepalived安装配置
一种通过延迟事务提升数据库性能的方法 ...
Java流程控制(分支结构、循环结构) ...
Flink 作业提交流程
cost量化分析
标签云
挺好的
服务器
快速回复
返回顶部
返回列表