存储I O控制原理与配置优化.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第三章I/O控制(SIOC)

当数据群集被建立,I/O度量值开启,通过DRS,I/O控制也同时开

启。我们觉得用一章来说明I/O控制非常合适,最重要的是,DRS利用

I/O控制的某些功能来决定数据的能力,在我们了解这些之前,让我们先

讨论些基础知识。

介绍

存储I/O控制(SIOC)在资源争用期间,一个方法来公平的分配I/O资

源,它启用后,管理员在高度整合的环境中来运行重要的工作流时,虚拟环

境没有自己造成服务的风险,另外,它帮助其它的情况下的干扰(同一个

数据上的一台虚拟机能对另一台虚拟机造成的影响),SIOC利用虚拟机

份额来达到资源,在SIOC发布之前,虚拟磁盘的份额被介绍的比较

长,但是,SIOC介绍Datastore-Wide计划,主要的不同是在每个主机级别没有

SIOC计划,尽管为SIOC计算相当复杂,开启和配置SIOC是不行的(图109),

SIOC只需要几步就可以启用,当DRS使用I/O度量值选项,它将自动启用,

在我们举例子之前,我们想确认每个人理解了一些关于此块的基本概念,以及没有

SIOC会造成的影响。

图109:开启I/O控制

排队

当和许多我们的客户讨论SIOC,我们注意到有一些基本的概念,关于怎样实

际确认资源在所以的虚拟机和主机间被公平的分配,这个例子就包括它,但是原理

可能没有那么明显,所以我们叫它一个特别的称呼:排队节流

在我们解释怎么排队节流工作之前,我们想简单的解释下不同的队列,当客户端系

统初始化I/O,这是为了工作流和队列能相遇:

•客户设备驱动队列深度(LSI=32,PVSCSI=64)

•VHBA(hardcode限制LSI=128,PVSVSI=255)

•Vmkernel设备驱动(FC=32,ISCSI=128,NFS=256,本地磁盘=256)

•多路径SAN/阵列队列(包括端口缓冲区,端口队列,磁盘队列等)

这些值得注意的Disk.SchedNumReqOutstanding(DSNRO)没有提到,正常来说它在

Vmkernel设备驱动后直接提到,但是,当SIOC开启,DSNRO就不再经常使用,

自从SIOC保证了一定程度的公平。

考虑到你设置你为你的HBA设置了64的队列深度,虚拟机在数据上产生I/O,

如果它只是数据上的单个虚拟机,增加到64的I/O将立即结束设备驱动,但

是,在大多数的环境中,LUNs被很多虚拟机共享,在大多数的场景中,这些虚拟

机应该被对待,当同一数据上两个或者的虚拟机产生I/O,DSNRO

将踢出它,但是,当Vmkernel检测到只有一个节流队列,计数器的阈值就达到了,

计数器的名字叫做Disk.SchedQControlVMSwitched,默认设置为6,这意味着当手工

I/O节流队列低于Disk.SchedNumReqOutstanding的值(默认是32)之前,

Vmkernel需要检测6个虚拟机的交换机,(虚拟机交换机意味着需要检测6次,

当前I/O不能来自之前虚拟机的同样I/O)

节流发生的是因为驱动已经产生I/O,Vmkernel不能控制顺序,只能想象你

有VM-A产生了一些I/O,另一个VM-B刚刚也产生了I/O,VM-A将结束全天运

行的大多数全深度队列,每次VM-B产生I/O,它将通过Vmkernel调度器快速捡

起(这是个不同的知识点),并尽快发送另外一个完成的给驱动,但是它不必要在

VM-A64的I/O的队列,因为它已经在队列中,这些通过VM-B将明显的添

加到I/O延迟经历中,这是不可取的,通过限制未完成的请求,我们允许

Vmkernel快速安排VM-B的I/O到VM-A的I/O流中,尽管为VM

您可能关注的文档

文档评论(0)

guchengyong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档