System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及分布式存储,尤其涉及一种基于分布式存储集群处理读写请求的方法及系统。
技术介绍
1、ceph作为一种高可靠性、可扩展性的分布式存储系统,在大规模数据存储和处理方面具有广泛应用。然而,随着存储规模和并发访问量的增加,网络传输的拓扑设计、入口带宽、集群主机网卡性能等限制了整个集群的吞吐量。
2、现有的均衡网关分发到对象存储网关(rgw)多采用轮询负载均衡算法进行路由,未考虑ceph集群中的对象存储网关和osd之间的拓扑关系,在高吞吐的ceph集群中,请求文件经过交换机多次转发,导致主机网卡及交换机的业务网络带宽资源争抢更为严重,限制了整个ceph集群的吞吐量。
技术实现思路
1、本专利技术意在提供一种基于分布式存储集群处理读写请求的方法及系统,以解决现有技术中存在的不足,本专利技术要解决的技术问题通过以下技术方案来实现。
2、本专利技术提供的基于分布式存储集群处理读写请求的方法,包括:
3、基于负载均衡网关对应的反向代理的配置信息向分布式集群发起身份认证,并在认证通过后,基于获得的令牌连接分布式集群中的rados,在连接完成后,查询分布式集群的关键配置信息;
4、负载均衡网关对客户端发送的读写请求进行解析,获取bucket存储的文件,并基于bucket存储的文件和所述关键配置信息选择最优的对象存储网关rgw,负载均衡网关将读写请求转发至最优的对象存储网关rgw,最优的对象存储网关rgw对所述读写请求进行处理;
5
6、在上述的方案中,所述反向代理的配置信息包括代理服务器的监听端口配置信息以及分布式集群中对象存储网关rgw的列表信息。
7、在上述的方案中,所述分布式集群的关键配置信息包括:分布式集群id、对象存储网关rgw部署的拓扑信息列表、存储池pool的配置信息、对象放置策略、对象存储类别以及ceph集群中bucket的元数据信息。
8、在上述的方案中,基于bucket存储的文件和所述关键配置信息选择最优的对象存储网关rgw包括:
9、对bucket存储的文件进行切分,得到多个切分文件,并获取各个切分文件的头部对象以及根据切分文件的大小获取各个切分文件的头部对象id;
10、基于头部对象id获取pg_id;
11、基于pg_id获取与pg_id对应的osd_id,并基于osd_id获取各个osd对应的host_id;
12、根据各个osd对应的host_id所在的对象存储网关rgw的连接状态选择最优的对象存储网关rgw。
13、在上述的方案中,根据切分文件的大小获取各个切分文件的头部对象id包括:
14、在切分文件的大小<=4m时,该切分文件的头部对象id为该切分文件的文件名;
15、在切分文件的大小>4m时,该切分文件的头部对象id为文件名.0。
16、在上述的方案中,基于头部对象id获取pg_id包括:
17、将头部对象id作为输入,通过哈希函数生成一个固定长度的哈希值;
18、对头部对象id对应的哈希值和存储池pool中放置组pg大小进行取模运算,得到pg_id。
19、在上述的方案中,基于pg_id获取与pg_id对应的osd_id,并基于osd_id获取各个osd对应的host_id包括:
20、在客户端的本地缓存中遍历pg_map数据结构,使用pg_id作为键查询进行查找,在得到与本地缓存中pg_map数据结构匹配的pg_id时,获取与pg_id对应的osd_id;
21、在客户端的本地缓存中查询osd_id对应的osd_map的相关信息,基于osd_map的相关信息获取各个osd对应的host_id。
22、在上述的方案中,根据各个osd对应的host_id所在的对象存储网关rgw的连接状态选择最优的对象存储网关rgw包括:
23、计算各个osd对应的host_id所在的对象存储网关rgw的连接权重值,并采用连接权重值对各个对象存储网关rgw在分布式集群中对象存储网关rgw的列表信息进行加权处理,对各个osd对应的host_id所在的对象存储网关rgw的加权处理结果进行按照从大到小进行排序,将排序在第一位的加权处理结果对应的对象存储网关rgw作为最优的对象存储网关rgw。
24、在上述的方案中,所述osd包括主osd和从osd,
25、主osd对应的host_id所在的对象存储网关rgw的连接权重值的计算公式为:
26、100-对象存储网关rgw对应的host_id连接数×0.1;
27、从osd对应的osd主机id所在的对象存储网关rgw的连接权重值的计算公式为:
28、(100-对象存储网关rgw对应的host_id连接数×0.1)×0.5。
29、本专利技术提供的基于分布式存储集群处理读写请求的系统,采用如上所述的基于分布式存储集群处理读写请求的方法处理读写请求,所述系统包括:
30、配置信息查询模块,用于基于负载均衡网关对应的反向代理的配置信息向分布式集群发起身份认证,并在认证通过后,基于获得的令牌连接分布式集群中的rados,在连接完成后,查询分布式集群的关键配置信息;
31、读写请求解析模块,负载均衡网关对客户端发送的读写请求进行解析,获取bucket存储的文件,并基于bucket存储的文件和所述关键配置信息选择最优的对象存储网关rgw,负载均衡网关将读写请求转发至最优的对象存储网关rgw,最优的对象存储网关rgw对所述读写请求进行处理;
32、信息更新模块,定时查询分布式集群中的rados,更新本地缓存的分布式集群的关键配置信息为最新版本。
33、本专利技术实施例包括以下优点:
34、本专利技术实施例提供的基于分布式存储集群处理读写请求的方法及系统,负载均衡网关对客户端发送的读写请求进行解析,基于解析结果获取相应的bucket存储的文件,对bucket存储的文件进行切分,得到多个切分文件,基于各个切分文件的头部对象id得到pg_id,并通过查询本地缓存的pg_map和osd_map,得到osd_id及其所在主机id,根据各个osd主机id所在的对象存储网关rgw的连接状态选择最优的对象存储网关rgw,负载均衡网关将读写请求转发至最优的对象存储网关rgw,最优的对象存储网关rgw对所述读写请求进行处理,减少了对象存储网关rgw和osd之间跨主机的网络传输,从而减少延迟并提高效率。
本文档来自技高网...【技术保护点】
1.一种基于分布式存储集群处理读写请求的方法,其特征在于,所述方法包括:
2.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,所述反向代理的配置信息包括代理服务器的监听端口配置信息以及分布式集群中对象存储网关RGW的列表信息。
3.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,所述分布式集群的关键配置信息包括:分布式集群ID、对象存储网关RGW部署的拓扑信息列表、存储池pool的配置信息、对象放置策略、对象存储类别以及Ceph集群中Bucket的元数据信息。
4.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,基于Bucket存储的文件和所述关键配置信息选择最优的对象存储网关RGW包括:
5.根据权利要求4所述的基于分布式存储集群处理读写请求的方法,其特征在于,根据切分文件的大小获取各个切分文件的头部对象ID包括:
6.根据权利要求4所述的基于分布式存储集群处理读写请求的方法,其特征在于,基于头部对象ID获取PG_ID包括:
7.根据权利要求
8.根据权利要求4所述的基于分布式存储集群处理读写请求的方法,其特征在于,根据各个OSD对应的HOST_ID所在的对象存储网关RGW的连接状态选择最优的对象存储网关RGW包括:
9.根据权利要求8所述的基于分布式存储集群处理读写请求的方法,其特征在于,所述OSD包括主OSD和从OSD,
10.一种基于分布式存储集群处理读写请求的系统,采用如权利要求1-9人任一项所述的基于分布式存储集群处理读写请求的方法处理读写请求,其特征在于,所述系统包括:
...【技术特征摘要】
1.一种基于分布式存储集群处理读写请求的方法,其特征在于,所述方法包括:
2.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,所述反向代理的配置信息包括代理服务器的监听端口配置信息以及分布式集群中对象存储网关rgw的列表信息。
3.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,所述分布式集群的关键配置信息包括:分布式集群id、对象存储网关rgw部署的拓扑信息列表、存储池pool的配置信息、对象放置策略、对象存储类别以及ceph集群中bucket的元数据信息。
4.根据权利要求1所述的基于分布式存储集群处理读写请求的方法,其特征在于,基于bucket存储的文件和所述关键配置信息选择最优的对象存储网关rgw包括:
5.根据权利要求4所述的基于分布式存储集群处理读写请求的方法,其特征在于,根据切分文件的大小获取各个切分文件的...
【专利技术属性】
技术研发人员:陈二运,
申请(专利权)人:联通在线信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。