技术新讯 > 电子通信装置的制造及其应用技术 > 一种端到端双通道存储IO处理方法与流程  >  正文

一种端到端双通道存储IO处理方法与流程

  • 国知局
  • 2024-08-02 12:38:15

本发明属于计算机存储,尤其涉及一种端到端双通道存储io处理方法。

背景技术:

1、随着数字化转型,云服务越来越收到大家的青睐。各家it系统开始纷纷上云。但在上云过程中也遇到了不少问题,最典型的就是以前都是自己搭建的系统或购买的存储设备,性能主要与自己购买的硬件相关。而上云后,由于使用的是公共的硬件资源,经常出现租户间性能的抢占,从而一个租户业务受到了完全不知道的另外的一个租户的业务的影响。而为了减少这个影响,大多云厂商实现了多租户的业务隔离。而云存储多租户的资源隔离是一个难点,因为在云存储中,底层的存储系统是一个统一的存储集群,无法为每个租户分配不同的资源,同时对云而言,都是需要通过超卖,才能整体运营成本降低,从而实现盈利。这就使得无法为每个租户分配足够的存储资源,只能通过抢占的方式实现。

2、当前大部分的系统是通过预留足够的资源,确保用户的sla可达,以及在性能不足时紧急扩容的方式。该方式虽然能解决大部分问题,但依然解决不了当多个租户一部分在验证时延,一部分在验证iops性能时,时延验证的客户通过很难达标。同时也存在扩容不及时,导致vip客户和关键业务受损的风险。

技术实现思路

1、本发明所要解决的技术问题是针对背景技术的不足提供本发明提供了一种端到端双通道存储io处理方法,在分布式存储系统中,为了保证关键业务性能,通常采用优先级排序或qos流量控制限制集群流量的方法,来保证io处理的性能。

2、本发明为解决上述技术问题采用以下技术方案:

3、一种端到端双通道存储io处理方法,基于lava存储系统实现,具体包含如下步骤;

4、步骤1,在客户端进行业务识别,对io进行打标签,注明是低延io还是普通io;

5、步骤2,在创建rdma通道时,创建两个资源完全隔离的io通道,当该io为低延时io时,采用低延时io通道进行数据发送;如果是普通io则选择普通io通道进行发送;

6、步骤3,在后端存储节点io处理时,从低延时通道中polling出所有低延时的io进行处理,再从普通io通道中取出部分io进行处理;处理完成后,继续从从低延时通道中polling出所有低延时的io进行处理,从而端到端保证低时延io的端到端时延可控。

7、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,所述lava存储系统包含应用层、索引层和持久化层三层。

8、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,所述应用层、索引层和持久化层,具体如下:

9、应用层,部署在计算节点向上提供云硬盘服务;

10、索引层,部署在存储节点,服务块存储lba索引的管理,以及数据写时根据索引和视图进行路由;

11、持久化层,底层磁盘的管理以及ec和副本的而管理,确保数据存储的可靠性;

12、通过对块服务层业务的识别以及在应用层与索引层建立rdma双通道和在索引层与持久化层之间建立rdma双通道,实现端到端的存储io双通道,实现低延时与高iops业务互不影响。

13、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,在步骤2中,在创建rdma通道时,传输层rdma隔离通道,具体如下:

14、步骤2.1,在应用层计算节点与索引层存储节点之间建立两条完全独立rdma ep通道,包括需要使用的消息头资源、数据传输内存空间,确保传输通道的独立性;建立完成两条通道后,需要ep0优先发送,从而提升ep0数据发送速度;rdma ep通道为用于节点间数据传输的通道;

15、步骤2.2,当需要发送数据时,网络协议层根据header头中的优先级标记,使用ep0通道发送低延时即高优先级io数据,使用ep1通道发送高iops即低优先级io数据。

16、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,在rdma数据io传输的header头中,增加优先级标签,传输层根据该优先级标签,选择走低延时通道还是高iops通道;虽然业务通过polling不同的通过可以获取不同优先级的io,但在处理时,也是直接通过header头中的标签,判断后续是低延时通道还是高iops通道。

17、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,所述应用层,具体如下:

18、1),块服务层,实现io通道选择,给io打标签:

19、2),对低延时通道进行监控,如果低延时通道io量达到一定程度,加强低延时通道门槛,保证低延时通道io数量。

20、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,在步骤1)中,块服务层,实现io通道选择,给io打标签,具体包含如下步骤:

21、1.1,低并发的云盘,且云盘类型为xssd1以上;

22、1.2,top用户的云盘io,如果io量不大,则走低并发通道;

23、1.3,低延时云盘或有严格sla保障的客户的云盘io,走低延时通道。

24、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,所述索引层,具体如下:

25、1),每次处理,优先从低延时通道获取数据进行处理,处理完成后再从高io通道获取数据进行处理;

26、2),高io通道获取数据要进行限制;

27、3),进一步低延时通道获取的io,选择更高新能的资源池进行处理。

28、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,所述持久化层,具体如下:

29、1),每次处理,优先从低延时通道获取数据进行处理,处理完成后再从高io通道获取数据进行处理;

30、2),当从高io通道获取数据要进行限制;

31、3),进一步从低延时通道获取的io,写入更高性能的存储介质中;

32、4),进一步在未来ssd支持优先级调度时,低延时通道获取的io打上优先处理标签。

33、作为本发明一种端到端双通道存储io处理方法的进一步优选方案,使用隔离通道发送数据实施流程:

34、步骤1),块层接收到上层io;

35、步骤2),构建数据io传输的header头;

36、步骤3),判断该io使用那个进行数据传输;

37、步骤4),设置header头中的优先级标签priority为高优先级;

38、步骤5),调用传输层进行数据传输,根据优先级标签,选择ep0作为数据传输通道,进行数据传输;

39、步骤6),索引层通过优先polling高优先级通道中的io,收到块层发来的io数据,同时查看header中的优先级标签,进行优先处理;

40、步骤7),处理完成后,根据priority标签,选择ep0通道进行数据传输;

41、步骤8),持久化层通过优先polling高优先级通道中的io,收到索引层发来的io数据,同时查看header中的优先级标签,进行优先处理;

42、步骤9),处理完成后,根据priority标签,选择ep0通道回复索引层处理完成;

43、步骤10),索引层通过优先polling高优先级通道中的io,收到持久化层回复的io信息,进行优化处理,并根据priority标签,选择ep0通道回复块层应用;

44、步骤11)、块层通过优先polling高优先级通道中的io,收到索引层回复的io信息,完成处理回复上层应用处理完成。。

45、本发明采用以上技术方案与现有技术相比,具有以下技术效果:

46、1、本发明与现有的qos控制和网络io优先级方案相比,本发明通过业务标签+独立io通过的方式,通信资源完全隔离,同时业务处理时,通过优先polling低延时(或高优先级)通道任务进行处理,从而保证不管业务多繁忙情况,低延时io都能得到及时的处理,避免低延时io被其他低优先级业务阻塞的情况;

47、2、新的双通道方案,首先在建立rdma通道时,两个通道申请的资源就完全隔离,通道连接不复用,避免由于io通道阻塞导致不同优先级业务相互影响(以前的方案,由于通道没有做隔离,即使业务做了优先级,也有可能在通道中被低优先级io阻塞);其次,通过低延时通道和普通通道设置不同的polling策略,实现低延时通道io及时处理,且不会饿死普通io通道的情况;

48、3、由于递延通道,io通信量不大,虽然会抢占普通io通道资源,但大部分不到5%(按百万iops与单并发时延同时验证情况下,影响不到1.5%),因此可以支持客户同时验证时延及iops,达成百万iops和100us同时验证目标;

49、4、本发明可以有效解决不同租户同时在验证iops和时延时,单并发时延无法达标的问题,sla不达标;

50、5、本发明可以有效保证关键业务和vip客户的io时延及io处理的及时性,从而保证即使集群处于大压力情况下,也可以保障关键业务和vip客户体验。

本文地址:https://www.jishuxx.com/zhuanli/20240802/237111.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。