System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种块存储高可用技术系统的实现方法技术方案_技高网

一种块存储高可用技术系统的实现方法技术方案

技术编号:40921565 阅读:2 留言:0更新日期:2024-04-18 14:46
本发明专利技术属于分布式存储技术领域,公开了一种块存储高可用技术系统的实现方法,包括如下步骤:指定硬盘的高可用策略和云硬盘的可用分布,在存储层和客户应用层之间增加虚拟化层;在各个高可用的云硬盘组之间统一命名空间的功能,对外仅体现统一命名空间处理后的云硬盘标识;在IO和虚拟化层之外各个分区部署一个控制集群关联模块,实现在不同故障下,正确的剔除有bad data的云硬盘;采用统一映射关联各分区云硬盘。本发明专利技术,对业务的侵入更少,客户部署简单,运维难度小,可以更容易打动客户部署高可用服务,在脑裂期间,依赖静默等待期,主动停止业务,防止业务误入导致后续读写不一致。

【技术实现步骤摘要】

本专利技术属于分布式存储,具体涉及一种块存储高可用技术系统的实现方法


技术介绍

1、随着云计算技术的兴起,分布式存储系统以其高性能、大规模、可扩展性强等优势得到广泛的应用。天翼云cstor分布式块存储可以为用户提供高io、高吞吐、低延时的块存储设备。虽然天翼云布式块存储性能强,其扩展性也能持续为用户保证高性能体验,但块存储由于底层架构限制,目前无法支持同城多数据单元可用,机房出现断电/地质灾害等易造成客户业务中断。即原始实现方案存在如下问题:

2、采用本地可用,无法满足同城可用业务的部署要求,需要业务采取上层容灾部署的方式,占用客户业务的资源,带宽等,业务部署同城高可用,涉及多个组件的协同,不同组件可实现的rpo/rto不一致,导致业务的可用性受短板影响,业务层部署高可用,部署复杂,需要配置专人运维,费用高昂,且运维费用会随着使用年限的增长而增加。客户成本逐渐递增不堪重负,部分客户不希望使用高可用/容灾功能;

3、单一业务部署高可用方案,需要针对每个业务单独分析单独部署,单独指定运维人员,不易生成业务部署模板,无法大规模部署,不利于后续天翼云大规模部署后的应用业务拓展。


技术实现思路

1、本专利技术的目的在于提供一种块存储高可用技术系统的实现方法,用于解决
技术介绍
中提出的技术问题。

2、为了实现上述目的,本专利技术采用了如下技术方案:一种块存储高可用技术系统的实现方法,包括如下步骤:

3、s01:指定硬盘的高可用策略和云硬盘的可用分布,在存储层和客户应用层之间增加虚拟化层;

4、s02:在各个高可用的云硬盘组之间统一命名空间的功能,对外仅体现统一命名空间处理后的云硬盘标识;

5、s03:在io和虚拟化层之外各个分区部署一个控制集群关联模块,实现在不同故障下,正确的剔除有bad data的云硬盘;

6、s04:采用统一映射关联各分区云硬盘;

7、s05:磁盘根据配置的高可用策略将本磁盘的数据同步到其他可用磁盘内,实现数据在各磁盘的高可用分布;

8、s06:虚拟化层根据下发的命令,生成映射关联,将各个分区内的云硬盘通过映射关联统一提供对外识别标识,所有的业务可以通过同一个可用标识接收业务访问;

9、s07:通过虚拟化层提供的块组功能,按照块组管理各个虚拟接入点,在块组内部保证接入地址的就近统一原则。

10、优选的,剔除有bad data的云硬盘的方法为:

11、s031:通过主可用区az收集其他可用区的版本号;

12、s032:若az版本号不一致,同质化虚拟层发消息通知该az临时剔除,并将下发到该az的io设置为重试返回;

13、s033:若主可用区az和其他各个区网络无法握手,则接入虚拟层,识别有接入点无法正常通信获取其他az的可用信息。

14、优选的,所述步骤s033中识别机制为虚拟层和各接入点定时心跳机制丢失。

15、优选的,主可用区az和其他各个区网络无法握手包括:无其他可用区在位,本可用区继续提供业务,上报告警。

16、优选的,主可用区az和其他各个区网络无法握手包括:其他可用区在位,通知虚拟层删除本可用区映射信息。

17、优选的,采用统一映射关联各分区云硬盘的方法为:

18、在云硬盘服务中查看所有的云硬盘;

19、进入操作系统,使用相应的命令或工具识别硬盘;

20、使用分区工具对硬盘进行分区;

21、对每个分区进行格式化,操作系统识别并挂载每个分区,创建目标目录,并将每个分区挂载到相应的目录,统一映射。

22、优选的,所述步骤s05中,同步过程与实际写入过程同步进行。

23、优选的,所述控制集群关联模块的控制逻辑为判读各分区硬盘的io序列num,决策将num和其他不一致的模块云硬盘的映射关联暂时失效,不改动io逻辑,关联失效后不会将该硬盘对外提供接入,同步过程不受影响。

24、优选的,所述版本号收集时只做记录,在非故障非缓冲期不做处理,在正常的业务处理路径上不做特殊处理,卸载高可用对业务系统的压力。

25、优选的,所述云硬盘标识为硬盘id、硬盘uuid或硬盘名称。

26、综上所述,由于采用了上述技术方案,本专利技术的有益效果是:

27、1、提出了一种云架构下块的同城高可用技术,当前无块层次的高可用方案,必须依赖应用在接入/网络/应用/中间件/数据库各层分别部署高可用方案,代价昂贵,运维复杂。

28、2、提出了虚拟层技术,在切换中不需要客户业务感知,虚拟层提供了disk-alian概念,避免了接入点变化导致上层业务重新部署,本方案对业务系统相对现有方案更友好,在虚拟化层提供了块组功能,避免统一业务不同接入点导致的性能波动,对业务系统的性能更友好。

29、3、提出了防止脑裂技术,防止脑裂导致的读写不一致,在脑裂期间,依赖静默等待期,主动停止业务,防止业务误入导致后续读写不一致,采取后台静默修复的机制,在出现单盘数据不一致后从就近的云硬盘获取数据修复,修复期间客户业务正常访问其他硬盘,不感知修复过程。修复完成后自动完成接入,恢复高可用层级,在脑裂的处理上,采取了主机监测和互相纠察相结合的机制,规避误判导致的频繁切换,在切换逻辑中增加了步进式延长切换的设计,避免乒乓效应。

30、4、部署简单,不需要改动网络层,应用层,接入层,在部署上,需要业务层新增组件,不需要额外部署仲裁/同步组件/故障倒换组件等各种中间件,对业务的侵入更少,客户部署简单,运维难度小,可以更容易打动客户部署高可用服务,尤其是在云下已经部署了高可用功能的客户,更容易接受一种侵入更少的部署方式。

本文档来自技高网...

【技术保护点】

1.一种块存储高可用技术系统的实现方法,其特征在于,包括如下步骤:

2.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,剔除有bad data的云硬盘的方法为:

3.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,所述步骤S033中识别机制为虚拟层和各接入点定时心跳机制丢失。

4.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,主可用区AZ和其他各个区网络无法握手包括:

5.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,主可用区AZ和其他各个区网络无法握手包括:

6.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,采用统一映射关联各分区云硬盘的方法为:

7.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,所述步骤S05中,同步过程与实际写入过程同步进行。

8.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,所述控制集群关联模块的控制逻辑为判读各分区硬盘的io序列Num,决策将Num和其他不一致的模块云硬盘的映射关联暂时失效,不改动IO逻辑,关联失效后不会将该硬盘对外提供接入,同步过程不受影响。

9.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,版本号收集时只做记录,在非故障非缓冲期不做处理,在正常的业务处理路径上不做特殊处理,卸载高可用对业务系统的压力。

10.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,所述云硬盘标识为硬盘ID、硬盘UUID或硬盘名称。

...

【技术特征摘要】

1.一种块存储高可用技术系统的实现方法,其特征在于,包括如下步骤:

2.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,剔除有bad data的云硬盘的方法为:

3.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,所述步骤s033中识别机制为虚拟层和各接入点定时心跳机制丢失。

4.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,主可用区az和其他各个区网络无法握手包括:

5.如权利要求2所述的一种块存储高可用技术系统的实现方法,其特征在于,主可用区az和其他各个区网络无法握手包括:

6.如权利要求1所述的一种块存储高可用技术系统的实现方法,其特征在于,采用统一映射关联各分区云硬盘的方法为:

7...

【专利技术属性】
技术研发人员:冯欢白艳春
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1