弥补MySQL和Redis短板:看HBase怎么确保高可用
团结之前对Deployment以及ConfigMap的引入,以及对Dockerfile的修改,整个HBase构建流程也有了改造: HBaseonKubernetes构建流程
通过团结K8S的ConfigMap成果的设置模板,以及KubasAPI挪用,,我们就可以在短时刻陈设出一套可用的HBase最小集群(2Master + 3Region Server + 2Thriftserver),在全部宿主机Host都已经缓存Docker镜像文件的场景下,陈设并启动一整套HBase集群的时刻不高出15秒。 同时在穷乏专属前端节制台的环境下,可以完全依托Kubernetesdashboard完成HBase集群组件的扩容缩容,以及组件设置的查询修改更新以及从头陈设。 八、资源节制 在完成重构之后,HBase处事面向知乎内部营业举办开放,短期内知乎HBase集群上升高出30+集群,陪伴着HBase集群数目的增多,有两个题目逐渐展现:
为了办理如上的两个题目,同时又不能冲破资源断绝的需求,我们将HBaseRSGroup成果插手到了HBase平台的打点体系中。 优化后的架构如下: RSGroup的行使 因为平台方对营业HBase集群的打点自己就具有断绝性,以是在举办更进一步资源打点的时辰,平台方回收的是降级的方法来打点HBase集群。 通过监听每个单独集群的指标,假如营业集群的负载在上线一段时刻后低于阈值,平台方就会共同营业方,将该HBase集群迁徙到一套MixedHBase集群上。 同时假如在MixedHBase集群中运行的某个HBase营业负载增进,并一连一段时刻高出阈值后,平台方就会思量将相干营业晋升至单独的集群。 九、多IDC优化 跟着知乎营业的成长和扩大,知乎的基本架构逐渐进级至多机房架构,知乎HBase平台打点方法也在这个进程中举办了进一步进级,开始构建多机房打点的打点方法;根基架构如下图所示: 多IDC会见方法
十、数据同步 在种种营业场景中,都存在跨HBase集群的数据同步的需求,好比数据在离线HBase集群和在线集群同步、多IDC集群数据同步等,对付HBase的数据同步来说,分为全量复制和增量复制两种方法。 HBase数据同步 在知乎HBase平台中,我们回收两种方法举办HBase集群间的数据同步: HBase Snapshot 全量数据复制我们回收了HBaseSnapshot的方法举办;首要应用在离线数据同步在线数据的场景; WALTransfer 首要用于HBase集群之间的的增量数据同步;增量复制我们没有回收HBaseReplication,相干同步方法我们通过自研的WALTransfer组件来对HBase数据举办增量同步; WALTransfer通过读取源数据HBase集群提供WAL文件列表,于HDFS集群中定位对应的WAL文件,将HBase的增量数据按序写入到目标集群,相干的细节我们会在往后的文章中具体理会。 十一、监控 从之前重构后的架构图上我们可以看到,在Kubas处事中我们添加了许多模块,这些模块根基属于HBase平台的监控打点模块。 1、Kubas-Monitor组件 根基的监控模块,回收轮询的方法发明新增HBase集群,通过订阅Zookeeper集群发明HBase集群Master以及Regionserver组。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |