从Ozone Recon到分布式系统只读模式的服务构建

本文介绍了如何使用Ozone Recon构建一个只读模式的分布式系统服务,该服务通过同步SCM的Container信息,接收Datanode的心跳报告,并验证Container的有效性,以确保与主服务拥有相同元数据。这种实现方式适用于基于心跳报告进行状态同步的存储系统,具有通用性和低风险特点。
摘要由CSDN通过智能技术生成

前言


当面对一个复杂的分布式系统时,如果我们想了解其内部运行的情况,我们通常的做法是进行内部指标metric的收集和暴露。但是如果我们遇到一些内部指标的统计需要进行系统服务内部逻辑的大规模改动或者目标metric的指标收集操作会影响到服务的正常请求处理,那么这个时候我们有没有好的办法呢?最完美的方法无疑是搭建出一个元数据完全一致的READ-ONLY模式的系统,注意了这里指的是一个独立的服务。本文笔者将以Ozone的Recon服务为例,来聊聊这个只读模式的系统应该如何来做。

Ozone Recon模式的运作原理

在Ozone中,就做了这么一个只读模式的SCM服务,名字叫Recon服务。Recon用来做SCM内的Container情况的分析。

Recon作为只读模式的SCM,它理应持有完全一致的Container信息,这样才能做准确的模拟分析。但这里有个问题,Recon不能处理来自外部的Container写请求操作的。对于这种情况的处理,Recon采用了下面的办法:

  • 1)Recon从SCM服务节点上同步一份初始Container db文件。
  • 2)Datanode额外配置Recon的地址作为Container Report的另外一个心跳报告地址。
  • 3)Recon和SCM一样,同样接受下面Datanode的Container报告信息,进行内部Container状态的更新。
  • 4)当Recon接受到新的Container时,它需要额外向SCM服务查询,此Container是否是有效的Container,如果是,则添加到自身内存中。
  • 5)Datano
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值