如何有效和智能的控制并恢复IO,减少因IO问题导致数据批量计算的影响,是分布式存储考虑和解决的问题?

金融场景具有高密集IO的特性,尤其在数据批量计算方面,分布式存储在频繁数据分布和迁移过程中通常会带来IO争抢的问题,在大规模集群遇到扩容或硬盘替换时尤为明显,给分布式存储在金融领域的深入使用带来了一定的风险。如何有效和智能的控制并恢复IO,减少因IO问题导致数据批量计...显示全部

金融场景具有高密集IO的特性,尤其在数据批量计算方面,分布式存储在频繁数据分布和迁移过程中通常会带来IO争抢的问题,在大规模集群遇到扩容或硬盘替换时尤为明显,给分布式存储在金融领域的深入使用带来了一定的风险。如何有效和智能的控制并恢复IO,减少因IO问题导致数据批量计算的影响,是分布式存储架构师必须要考虑和解决的问题?

收起
参与10

查看其它 2 个回答Lucien168的回答

Lucien168Lucien168存储工程师地平线机器人

backfill和recovery的最优值

ceph在增加osd的时候会触发backfill,让数据得到平均,触发数据的迁移
ceph在移除osd的时候需要在节点上进行数据的恢复,也有数据的迁移和生成

只要是集群里面有数据的变动就会有网卡流量,cpu,内存等资源的占用,并且最重要的是还有磁盘的占用,这个客户端也是需要对磁盘进行访问的,当请求出现碰撞的时候,肯定会比正常的情况下要慢很多,而且还有可能因为资源方面的原因而引起机器down机等异常状况的出现

主要引起的问题可能:

  • 在peering的时候 block 了IO请求
  • 在backfill的引起了slow requests
  • 上面的两个情况会引起客户端的降速和出现soft lockup

这个在一般情况下会出现不同的需求:

  1. 慢点可以一定不能出问题,不能中断业务
  2. 越快迁移完越好,早点结束维护服务
  3. 需要又快又不能影响业务

这个需要根据自己可以掌控的程度来进行控制,首先环境的不同,影响不同,迁移数据量,网卡的带宽都是重要的影响因素,从整体上可以根据自己的环境按照上面的三个要求中的一个进行控制

osd recoveryoppriority = 3#默认值10 #恢复操作优先级,取值1-63,值越高占用资源越高osd recovery max active = 3#默认值15 #同一时间内活跃的恢复请求数osd max backfills = 1#默认值10 #一个OSD允许的最大backfills数osd recovery max active = 3 (default : 15)osd recoveryoppriority = 3 (default : 10)osd max backfills = 1 (default : 10)

互联网服务 · 2021-05-26
浏览1574

回答者

Lucien168
存储工程师地平线机器人

Lucien168 最近回答过的问题

回答状态

  • 发布时间:2021-05-26
  • 关注会员:5 人
  • 回答浏览:1574
  • X社区推广