当前位置:首页 » 存储配置 » 存储qos

存储qos

发布时间: 2022-10-23 04:26:24

1. QOS是什么意思有什么作用

QoS(Quality of Service)即服务质量。对于网络业务,服务质量包括传输的带宽、传送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施来提高服务质量。

网络资源总是有限的,只要存在抢夺网络资源的情况,就会出现服务质量的要求。服务质量是相对网络业务而言的,在保证某类业务的服务质量的同时,可能就是在损害其它业务的服务质量。例如,在网络总带宽固定的情况下,如果某类业务占用的带宽越多,那么其他业务能使用的带宽就越少,可能会影响其他业务的使用。因此,网络管理者需要根据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。

作用:

在识别数据包之后,要对它进行标注,这样其他网络设备才能方便地识别这种数据。由于分类可能非常复杂,因此最好只进行一次。识别应用之后就必须对其数据包进行标记处理,以便确保网络上的交换机或路由器可以对该应用进行优先级处理。通过采纳标注数据的两种行业标准,即IEEE 802.1p或差异化服务编码点(DSCP),就可以确保多厂商网络设备能够对该业务进行优先级处理。

在选择交换机或路由器等产品时,一定要确保它可以识别两种标记方案。虽然DSCP可以替换在局域网环境下主导的标注方案IEEE802.1p,但是与IEEE 802.1p相比,实施DSCP有一定的局限性。在一定时期内,与IEEE 802.1p 设备的兼容性将十分重要。作为一种过渡机制,应选择可以从一种方案向另一种方案转换的交换机。

2. 如何使用qos管理分配存储iops

尽管任何硬件资源都有可能成为影响虚拟机性能的瓶颈,但存储IOPS往往是限制因素之一。因为存储IOPS往往供不应求,所以虚拟化厂商提供了允许管理员限制虚拟机存储I/O消耗的功能。然而高效率地使用上述功能的关键是了解存储IOPS当前是如何在虚拟机之间分配的。
每个hypervisor厂商都有各自的测量并分配存储IOPS的方式。以微软Hyper-V为例,调节存储IOPS消耗的主要机制借助于QoS管理功能,该功能往往被称为存储QoS。
使用QoS管理
QoS管理设置基于单块虚拟硬盘。如图A所示,该功能可以被用于限制虚拟机消耗更少的存储IOPS。作为一个替代方案,QoS管理可以被用于为虚拟机预留存储IOPS,这样就可以保证虚拟机能够获得的最小IOPS值——如果有更多可用的IOPS,那么虚拟机能够使用的IOPS将相应增加。
图A. 虚拟硬盘QoS管理配置界面
QoS管理功能允许管理员基于单块虚拟硬盘预留存储IOPS或者对其进行限制。
尽管QoS管理功能很便利,但只有管理员知道可用的存储IOPS有多少以及当前使用情况时,该功能才能够派上用场。不幸的是,Hyper-V Manager并没有提供该信息,但可以使用PowerShell检索与Hyper-V相关的存储性能信息。
虚拟机指标追踪
PowerShell提供了一个名为Measure-VM的cmdlet,使你能够追踪各类虚拟机指标。在能够使用该cmdlet前,需要启用虚拟机的资源消耗计量。输入如下命令可以启用运行在当前Hyper-V服务器上所有虚拟机的资源消耗计量:Get-VM | Enable-VMResourceMetering
输入如下命令可以确认是否已经启用了虚拟机的资源消耗计量:
Get-VM | Select-Object Name, ResourceMeteringEnabled
启用虚拟机的资源消耗计量并且生成了一些计量数据后,你可以使用Measure-VM cmdlet显示虚拟机的资源使用情况。例如,如果你想针对所有虚拟机使用默认的资源计量数据,可以输入如下命令:
Get-VM | Measure-VM
图B显示了启用虚拟机计量、确认虚拟机计量以及用以及显示默认计量数据的过程。
图B:你可以使用Measure-VM cmdlet显示虚拟机计量数据
如上图所示,资源计量机制运转良好,显示值为零表明虚拟机未启动。然而问题是并没有显示与存储IOPS相关的信息。
显示IOPS数据
尽管Measure-VM cmdlet默认没有显示存储IOPS数据,但可以做到。实际上,cmdlet可以显示每台虚拟机的IOPS平均值、平均延迟情况、磁盘数据写入以及磁盘数据读取情况。
只需要在Measure-VM cmdlet后追加 Select-Object参数就可以显示上述数据,然后指定你想显示的指标即可。然而,务必牢记在生产环境中虚拟机往往位于使用共享存储的故障切换集群中。因此全面获取IOPS数据的唯一方式是查看所有服务器上的所有虚拟机。可以尝试利用如下命令创建一个简单的脚本
$Servers = "Hyper-V-4", "Prod1"
ForEach ($Server in $Servers){
$VMs = Get-VM
ForEach ($VM in $VMs){
$VM | Measure-VM | Select-Object VMName, ComputerName, , AggregatedAverageLatency, AggregatedDiskDataRead, AggregatedDiskDataWritten | Format-List
}
}
脚本的第一行列出了将要被监控的每台Hyper-V主机的名字。简单起见,这里只列出了两台服务器,但你通常要输入所有Hyper-V服务器的名字。该脚本使用循环检查所有的服务器,每次检查一台。然后嵌套循环检索并显示当前服务器上所有虚拟机的性能数据。你可以看到图C中脚本的部分输出结果。脚本列出了每台虚拟机的性能数据、虚拟机名以及虚拟机当前所在的主机服务器。
图C. 脚本显示虚拟机的存储性能数据
Hypervisor功能,比如QoS管理有助于分配存储IOPS。然而为了高效率地使用该功能,你需要知道IOPS目前的使用情况。

3. QOS队列类型简介(CQ、PQ、WFQ、CBWFQ

对于网络单元,当分组到达的速度大于该接口传送分组的速度时,在该接口处就会产生拥塞。如果没有足够的存储空间来保存这些分组,它们其中的一部分就会丢失。分组的丢失又可能会导致发送该分组的主机或路由器因超时而重传此分组,这将导致恶性循环。 造成拥塞的因素有很多。比如,当分组流从高速链路进入路由器,由低速链路传送出去时,就可能产生拥塞。分组流同时从多个接口进入路由器、由一个接口转发出去或处理器速度慢也可能会产生拥塞。 拥塞管理是指网络在发生拥塞时,如何进行管理和控制。处理的方法是使用队列技术。将所有要从一个接口发出的报文进入多个队列,按照各个队列的优先级进行处理。不同的队列算法用来解决不同的问题,并产生不同的效果。常用的队列有FIFO、PQ、CQ、WFQ、CBWFQ、LLQ等。

1、FlFO(先进现出队列) 先进先出队列(First In First Out Queuing,简称FIFO)不对报文进行分类,当报文进入接口的速度大于接口能发送的速度时,FIFO按报文到达接口的先后顺序让报文进入队列,同时,FIFO在队列的出口让报文按进队的顺序出队,先进的报文将先出队,后进的报文将后出队。 Internet的默认服务模式是Best-Effort,采用FIFO队列策略。

2、PQ (Priority Queueing,优先队列) PQ使用了4个子队列,优先级分别是high,medium,normal,low。PQ会先服务高优先级的子队列,若高优先级子队列里没有数据后,再服务中等优先级子队列,依次类推。如果PQ正在服务中等优先级子队列,但是高优先级里又来了数据包,则PQ会中断中等优先级子队列的服务,转而服务高优先级子队列。每一个子队列都有一个最大队列深度(queue-size),如果达到了最大队列深度,则进行尾丢弃。

PQ优点: 1)对高优先级的数据流提供了低延迟的转发 2)大多数平台上都支持该队列机制 3)支持所有的IOS版本 PQ缺点: 1)对单一子队列而言,会继承FIFO队列的所有缺点 2)对低优先级的数据流而言,可能会被“饿死”,因为只有高优先级队列里有数据,PQ就不会服务低优先级队列 3)需要在每一跳上都手工的配置分类

3、CQ(Customized Queue,用户定制队列) CQ最多可包含16个组(即group-number的取值范围为1~16),在每个组中指明了什么样的数据包进入什么样的队列、各队列的长度和每次轮询各队列所能连续发送的字节数等信息。CQ对报文进行分类,将所有报文分成最多至17类,分别属于CQ的17个队列中的一个,然后,按报文的类别将报文进入相应的队列。 CQ的17个队列中,0号队列是优先队列,路由器总是先把0号队列中的报文发送完,然后才处理1到16队列中的报文,所以0号队列一般作为系统队列把实时性要求高的交互式协议报文放到0号队列。1到16号队列可以按用户的定义分配它们能占用接口带宽的比例,在报文出队的时候,CQ按定义的带宽比例分别从1到16号队列中取一定量的报文在接口上发送出去。其中,按带宽比例分别发送的实现过程是这样的,16个普通队列采用轮询的方式进行调度,当调度到某一个队列时,从这个队列取出一定字节数的报文发送,用户通过指定这个字节数,就可以控制不同队列之间的带宽分配比例。 用户在指定每个队列每次调度时发送的字节数时,需要把握所配数值的大小,因为这关系到轮询中配置增加的粒度。例如,为了实现4个队列间的1:2:2:4的关系,我们可以配置这4个队列发送字节数为:1、2、2、4,也可以配置为:500、1000、1000、2000。但在考虑了线路的MTU后,若MTU为500,则后一种方式较好。因为在轮询时,所剩配额不够发送当前报文时,会只累加配额,然后等下次调度,显然当前条件下.第二种方案浪费在轮询空转上的时间要少。 PQ赋予较高优先级的报文绝对的优先权,这样虽然可以保证关键业务的优先,但在较高优先级的报文的速度总是大于接口的速度时,将会使较低优先级的报文始终得不到发送的机会。采用CQ,将可以避免这种情况的发生。CQ可以把报文分类,然后按类别将报文被分配到CQ的一个队列中去,对每个队列,可以规定队列中的报文应占接口带宽的比例,这样,就可以让不同业务的报文获得合理的带宽,从而既保证关键业务能获得较多的带宽,又不至于使非关键业务得不到带宽。当然CQ中的实时业务不能获得象PQ一样好的时延指标。

注:难道是PQ+WRR的组合?

4、WFQ(Weighted Fair Queueing,加权公平队列) WFQ是一个复杂的排队过程,可以保证相同优先级业务间公平,不同优先级业务间加权。队列的数目可预先配置,范围是(16-4096)。 WFQ,在保证公平(带宽、延迟)的基础上体现权值,权值大小依赖于JP报文头中携带的IP优先级(Precedence)。WFQ对报文按流进行分类(相同源IP地址,目的IP地址,源端口号,日的端口号,协议号,Precedence的报文属于同一个流),每一个流被分配到一个队列,该过程称为散列。WFQ入队过程采用HASH算法来自动完成,尽量将不同的流分入不同的队列。在出队的时候,WFQ按流的优先级(precedence)来分配每个流应占有出口的带宽。优先级的数值越小,所得的带宽越少。优先级的数值越大,所得的带宽越多。这样就保证了相同优先级业务之间的公平,体现了不同优先级业务之间的权值。 如:接口中当前有8个流,它们的优先级分别为O,2,2,3,4,5,6,7。则带宽的总配额将是:所有(流的优先级+1)的和。即:1+3+3+4+5+6+7+8=37 每个流所占带宽比例为:(自己的优先级数+1),(所有(流的优先级+1)的和)。即,每个流可得的带宽分别为:1/37,3/37,3/37,4/37,5/37,5/37,6/37,7/37,8/37。 由此可见,WFQ在保证公平的基础上对不同优先级的业务体现权值,而权值依赖于IP报文头中所携带的IP优先级。

WFQ优点 1)配置简单(不用手工分类) 2)保证所有的流都有一定的带宽 3)丢弃野蛮流量 4)大多数平台上都支持 5)支持所有IOS版本 WFQ缺点 1)每个子队列都继承了FIFO的缺点 2)多个不同的流可能会被分入同一个队列(流的数量超过了配置的队列数) 3)不支持手工分类 4)不能提供固定带宽保证 5)因为使用了复杂的分类和调度机制,对系统资源有一定的限制

5、CBWFQ(class-based weighted fair queuing,基于类的加权公平队列) CBWFQ通常使用ACL定义数据流类别,并将注入宽带和队列限制等参数应用于这些类别。CBWFQ是网络中的一个队列配置方案,其允许通信基于标准分类,例如访问控制列表,输入界面名,协议和服务质量(QoS)标志。CBWFQ扩展了加权公平队列WFQ功能的标准来提供自定义通信类型支持。

CBWFQ特点: 1)能够给不同的类保障一定的带宽 2)对传统的WFQ作了扩展支持用户自己定义流量的分类: 3)队列的个数和类别是一一对应,给每个class 保留带宽

CBWFQ与WFQ的区别: WFQ: 用户无法控制分类,由HASH算法自己决定 CBWFQ:让用户对流量自己来分类 WFQ 对正常流量处理没问题,但是对语音流量显得”太公平”(语音要求低延迟) CBWFQ:考虑到公平特性,并没有考虑到语音的应用

6、LLQ(Low Latency Queueing,低延迟队列) LLQ为基于类别的加权公平排队(CBWFQ)提供绝对优先排队功能,减少了语音会话的抖动。LLQ相当于CBWFQ加上一个严格优先级队列,该队列优先级高于其他所有队列,非常适合时延敏感性应用。LLQ的严格优先级队列是一个有最小保证带宽的优先级队列,出现拥塞时,该队列的数据量不能超过所允许的带宽,否则会被丢弃。 LLQ具有CBWFQ的所有优点,包括自定义流量类别,为每种类别的流量提供带宽保证,并且可以在所有类别的队列上应用WRED。(严格优先级队列除外) 对于LLQ和CBWFQ来说,任何没有被显示分类的流量都被认为class-default流量,可以将class-default流量类别队列由FIFO改为WFQ,需要时也可以用WRED。 LLQ最大优势是可以为时延和抖动敏感型应用的流量提供一个或多个有带宽保证的严格优先级队列,LLQ并不局限于特定平台或传输介质。

4. 元核云的分布式块存储具备流量QoS控制功能,请问QoS是什么

QoS(QualityofService,服务质量)是指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。在块存储中加入QoS能够避免客户的重要业务在网络过载或拥塞时不受延迟或丢弃,保证网络的高效运行。

5. 如何使用Windows Server 2012 R2的Storage QoS特性提升性能

WindowsServer2012有别于WindowsServer2008R2提供四种不同价值的云解决方案。让您能够做得,通过高效率的隔离保护虚拟化的服务,不停机,甚至不借助群集直接迁移运行中的虚拟机,对虚拟化的负载创建副本实现离场恢复,此外还有功能。最终您将获得一套理想的平台,就算最大规模的企业也可以通过这套平台构建自己的私有云。WindowsServer2012为您的业务提供了一套完善的虚拟化平台,包含多租户安全与隔离功能,可在共享的基础架构中,对属于不同业务单元或客户的负载强制实施网络隔离。网络虚拟化是Hyper-V的新功能,可供您对不同业务单元的网络通讯进行隔离,同时不需要实施并管理复杂的虚拟本地区域网络(VLAN)。通过在保留原有虚拟网络设置的情况下迁移虚拟机,网络虚拟化技术还使得您可以更容易地将原有虚拟网络集成到新的基础架构中。WindowsServer2012中的服务质量(QoS)功能也得以增强,可让您为虚拟机和虚拟服务提供有保障的最小带宽,这样既可更高效地满足服务级别协议的要求,网络性能也变得更加可预测。在设计云解决方案时,高效管理并保护网络连接资源是一项关键因素,WindowsServer2012使这一切都变得可能。WindowsServer2012还可以帮您更好地对环境进行扩展,实现更高性能级别,并在企业存储解决方案中使用原有的投资。通过对宿主机处理器与内存提供更好的支持,您的虚拟化基础架构已经可以支持需要最高级别性能的大型虚拟机,以及需要能够大幅扩展的负载。已经在原有基础架构中投资了光纤通道存储阵列的企业则可通过虚拟光纤通道技术获益,这是Hyper-V中的新功能,可供您直接将存储区域网络(SAN)与虚拟机中的来宾操作系统连接在一起。您还可以使用虚拟光纤通道对任何需要直接访问SAN的服务器负载进行虚拟化,通过虚拟化的负载获得降低成本的新方法。您也可以通过光纤通道创建来宾操作系统群集,这样既可为您提供新的基础架构选项。此外内建的ODX支持确保了您的虚拟机可以用与物理硬件相似的性能级别读取和写入SAN存储,同时节约用于处理数据传输的资源。存储对于任何云解决方案都是关键,这些改进使得WindowsServer2012更胜任作为构建云环境的最佳平台。WindowsServer2012还提供了通用的身份与管理框架,可支持联合身份验证,实现跨边界连接,并可促进数据保护。(ADFS)已经内建在产品中,为将ActiveDirectory身份扩展到云端提供了底层基础,可对内部和云端的资源实现单点登录(SSO)。通过建立站点到站点VPN,即可在您的内部基础架构,以及您选择托管云服务的托管供应商之间建立安全的跨边界连接。您甚至可以直接连接到托管式云网络中的虚拟子网,这一切都可以继续使用您原有的网络设备,并使用符合业界标准的IKEv2-IPsec协议。通过使用新的Hyper-V复制功能,通过基于IP的网络在远程站点对虚拟机进行异步复制,您还能改善业务连续性,简化灾难恢复工作。所有这些功能都可以帮您提供构建私有云平台所需的基础。

热点内容
电脑上如何查询自己的配置 发布:2025-05-16 05:06:36 浏览:104
sql中去重 发布:2025-05-16 04:55:06 浏览:892
dwr上传图片 发布:2025-05-16 04:49:46 浏览:121
base64加密的图片 发布:2025-05-16 04:35:46 浏览:355
数据结构c语言版清华大学出版社 发布:2025-05-16 04:30:44 浏览:273
c语言取小数点 发布:2025-05-16 04:22:26 浏览:379
公司权力配置有哪些问题 发布:2025-05-16 04:21:43 浏览:924
tcl电视怎样删了缓存 发布:2025-05-16 04:16:56 浏览:211
收费数据库 发布:2025-05-16 04:06:43 浏览:347
编译程序时跳转到另一个文件 发布:2025-05-16 04:03:42 浏览:250