WSFC 资源计量与资源池

资源计量是Hyper-V 2012时新增的功能,严格来说它应该是Hyper-V的功能,但是为什么要和WSFC在一起说,因为老王发现资源计量和资源池可以和群集相整合,因此特地分享给大家

资源计量是Hyper-V 2012开始原生自带的虚拟化资源使用收集技术,默认处于关闭状态,开启后可以帮助我们收集各个虚拟机的CPU,内存,硬盘,网络消耗

Hyper-V资源计量典型的应用场景

1.宿主机上面的托管了很多虚拟机,这些虚拟机可能被不同的部门所使用,管理员需要确保每个虚拟机使用符合的资源,不要影响到其他虚拟机,一方面可以通过资源计量监视,一方面可以通过QOS策略限制调整

2.提供数据和接口,供计费系统调度,可以是Chargeback 或 Showback,在没有SCOM和SCSM的情况下也能够实现简单的计费管理

Hyper-V资源计量的技术特点

1.无图形化界面,可以通过powershell或API调用管理

2.使用全新的调用方式,相比以前使用性能计数器轮询的方式更节省资源

3.可以被用于统计单个虚拟机或资源池

4.资源计量将会跟随虚拟机,不论虚拟机被迁移到那个主机,计量数据存储在虚拟机配置XML文件

5.支持对于虚拟机或资源池执行reset重新计量

6.对于性能消耗低,仅在输出报告时会有一些磁盘和CPU活动

7.不是虚拟化监控解决方案,只会收集有限的参数用于计量,监控仍需配合WMI性能计数器与事件日志使用,如希望执行更深入的虚拟化监控,建议使用SCVMM,SCOM

Hyper-V资源计量可以收集的数据


1.平均 CPU 使用率,在一定时间内以兆赫为单位进行测量。

2. 平均物理内存使用量,以兆字节为单位进行测量。

3. 最小内存使用量(物理内存的最低数量)。

4. 最大内存使用量(物理内存的最高数量)。

5. 分配给虚拟机的最大磁盘空间容量。

6. 针对虚拟网络适配器的传入网络总流量,以兆字节为单位进行测量。

7. 针对虚拟网络适配器的传出网络总流量,以兆字节为单位进行测量。


其中需要注意的地方


  1. 最小内存使用量仅记录VM开机状态的数据
  2. 平均内存使用量记录VM开机以及VM关机的数据,以提供虚拟机在计费周期内使用内存的准确视图
  3. CPU使用量使用转换后的MHZ计量 ,不使用%,微软认为如果报告百分比,虚拟机移动到具有不同处理能力的主机将失去意义
  4. 磁盘计量总值将显示当前分配的容量,而非当前实际使用,因此对于动态磁盘,会显示分配的磁盘最大数值
  5. 磁盘计量总值部分会包括快照大小
  6. 磁盘计量不包括直通磁盘,DAS磁盘,ISCSI,虚拟光纤通道磁盘
  7. 网络计量通过在虚拟机网络适配器上设置ACL进行计量,ACL包括方向,IP,动作,开启资源计量后动作为计量

Hyper-V资源计量自带Command

启用/禁用资源计量
Get-VMResourceMetering
Disable-VMResourceMetering

配置用于计量的VM资源
Set-VMProcessor
Set-VMHardDiskDrive
Set-VMMemory
Set -VMNetworkAdapter
Add-VMNetworkAdapterAcl
Remove-VMNetworkAdapterAcl

创建/删除资源池
New-VMResourcePool
Set-VMResourcePool
Remove-VMResourcePool

测量VM和池
Measure-VM
Measure-VMResourcePool
Reset-VMResourceMetering

以上为大家简单介绍了下Hyper-V资源计量的功能,帮助大家复习或了解下这个概念,关于Hyper-V资源计量我的好朋友徐庭写了很好的单机实践博客,这方面老王不再重复,我们将主要实践后面资源计量,资源池与群集的整合

接下来我们再看下Hyper-V资源池的概念,此资源池非彼资源池,在目前微软的企业级生态圈中hyper-v资源池的概念主要被用于集合收集资源计量,或资源的冗余与负载均衡,针对于资源的冗余与负载均衡主要体现于虚拟交换机

根资源池


  1. 默认情况下在hyper-v中,所有资源都属于一个根资源池,图形界面无法看到,如单独创建资源池,根资源池则会显示出来。
  2. 根资源池默认处于禁用状态,即不会发挥作用
  3. 当我们针对于虚拟机启用资源计量时,根资源池被启用
  4. 根资源池是默认的集合,所有主机托管的虚拟机资源都在里面,用于汇总显示资源计量数据

资源池


  1. 创建资源池后可以通过资源计量汇总显示某个资源池的整体使用情况
  2. 用户自定义创建的池将会以根资源池的子集存在,但可以有独立的配置
  3. 提供虚拟交换机资源池的冗余及负载均衡,实现虚拟机接入资源池,而非单个虚拟交换机,单个虚拟交换机故障,不会影响虚拟机通信
  4. 虚拟交换机资源池可以实现跨主机,如果不同主机资源池名称一致,则可以执行迁移
  5. 默认情况下虚拟机属于根资源池,如果需要加入自定义资源池需关机后加入
  6. 同一主机不同资源类型资源池名称可以一致
  7. 针对于VHD资源池可以通过在不同主机创建不同路径,但相同名称的VHD资源池,以实现虚拟机迁移过去自动更新存储路径

资源计量,资源池,与WSFC的整合


基础打好后接下来该来到我们的主戏了,如果这两项功能和群集在一起会怎么样?

事实上老王相信如果企业部署了多台虚拟化主机,则一定会考虑部署高可用群集,以实现业务连续性,避免单机故障影响上面的虚拟机,那么如果这时候如果我们需要资源计量应该如何去使用,恰好,群集虚拟机配置文件是存放共享区域,而我们虚拟机资源计量的数据也是存在虚拟机配置文件,因此对于一个群集的虚拟机,我们仅需要在群集层面开启资源计量,不论虚拟机迁移到任何一个节点,都不会影响到资源计量,针对于资源计量的层面也从单机上升至整个群集

实验环境介绍

AD&北京ISCSI

Lan:10.0.0.2 255.0.0.0

ISCSI:30.0.0.2 255.0.0.0

12HV01

MGMT: 10.0.0.50 255.0.0.0 DNS 10.0.0.2

ISCSI:30.0.0.50 255.0.0.0

Heart:18.0.0.50 255.0.0.0

12HV02

MGMT: 10.0.0.51 255.0.0.0 DNS 10.0.0.100

ISCSI:30.0.0.51 255.0.0.0

Heart:18.0.0.51 255.0.0.0

当前群集承载虚拟机三台,虚拟机处于关机状态,本文使用12R2群集为例,该功能在16上面并无变化

实验1.演示群集下开启管理资源计量

群集本身并没有提供资源计量的功能,老王这里找到一个通过Powershell function实现的方法,下载地址如下

ClusterResourcePoolFunctions.PS1

打开之后可以在ISE中看到function的实现,加载function后才可以使用ClusterResourcePool命令

#获取群集计量状态

Get-ClusterResourcePool -Cluster hvcluster

#开启群集虚拟机资源计量

这里我们可以通过VMFilter配合命令来控制资源计量,例如我们可以针对于虚拟机以国家,部门,用途命名,开启资源计量仅针对一个命名范围内开启

Enable-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT*

#开启虚拟机

Start-VM -ComputerName 12HV01 -Name OGIT-SPDB

#获取群集资源池计量状态,可以看到当前部分已经为True,所有资源属于根存储池,由根资源池负责汇总数据

#获取群集资源计量报告

Measure-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT*

这里我们同样可以利用VMFilter命令仅获取群集某一个逻辑范围内的计量数据,可以看到这里只有SPDB的数据,因为开启资源计量后其它虚拟机还没开机过一次,一旦其它虚拟机开机后也会产生数据

如果我们在命令后面加上format-list参数,则可以显示出资源计量所收集的所有数据,可以看到,由于我们使用了function,因此会显示出群集所有节点开启资源计量虚拟机的数据

实验2.演示群集下创建资源池,以配合资源计量使用

#创建群集资源池

New-ClusterResourcePool -Cluster hvcluster -ResourcePool OGITPOOL

#获取虚拟机所属资源池状态

Get-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT* | Format-Table

#设置虚拟机资源池为新创建群集资源池,需在虚拟机关机状态下执行

Set-ClusterResourcePoolVM -Cluster hvcluster -ResourcePool OGITPOOL -VMFilter OGIT*

#再次获取群集虚拟机资源池状态

Get-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT* | Format-Table

#开启资源池内范围内虚拟机

Start-VM -ComputerName (Get-ClusterNode -Cluster hvcluster).name -Name OGIT*

#获取群集资源池资源计量报告,现在我们可以通过资源池来汇总显示群集里面一定范围内虚拟机的计量数据,如果群集各节点中有很多虚拟机,现在我们可以通过这种方式汇总出来我们需要的计量数据

Measure-ClusterResourcePool -Cluster hvcluster -poolname -OGITPOOL

实验3. 重置虚拟机,资源池资源计量数据

#关闭资源池范围内虚拟机,事实上如果不关机也可以执行重置操作,但是在线重置之后数据会立刻增加,如果为了重新初始化数据,建议还是关机执行操作

Stop-VM -ComputerName (Get-ClusterNode -Cluster hvcluster).name -Name OGIT*

#获取群集资源池计量报告

measure-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT*

#重置单台虚拟机计量数据

Reset-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT-SPDB

#重置整个群集资源池计量数据,重置完成后再次开机时虚拟机将重新计量

Reset-ClusterResourcePool -Cluster hvcluster -ResourcePool OGITPOOL

实验4.关闭群集虚拟机资源计量,群集资源池

#将虚拟机从自定义资源池移除,返回根资源池(需在虚拟机关机状态下执行)

Set-ClusterResourcePoolVM -Cluster hvcluster -ResourcePool "Primordial" -VMFilter OGIT*

#关闭群集虚拟机资源计量

Disable-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT*

#删除自定义资源池(需确保资源池下无内容后执行)

Remove-ClusterResourcePool -Cluster hvcluster -ResourcePool OGITPOOL

#获取群集虚拟机计量开启状态

Get-ClusterResourcePool -Cluster hvcluster

#获取虚拟机资源池状态

Get-ClusterResourcePoolVM -Cluster hvcluster -VMFilter OGIT*| Format-Table * -AutoSize

参考内容:http://www.hypervrockstar.com/dd_resource-metering/

到这里我们完成了本章的全部实验,通过老王的介绍相信大家对于资源计量,资源池,以及与群集的配合会有新的思考,严格来说这是三个不同的功能,但是结合在一起就能发挥出更好的效果,资源计量可以针对于单机,主机全部,资源池虚拟机进行使用计量,资源池可以针对虚拟资源进行汇总分析,实现冗余和负载均衡,配合群集,可以实现资源计量群集里面的指定范围虚拟机,通过资源池汇总群集里面指定范围虚拟机的计量,希望未来这项功能可以越来越实用,有更多的场景可以用上,希望看到的朋友都能有自己的收获

原文地址:http://blog.51cto.com/wzde2012/2059886

时间: 2024-12-14 21:45:19

WSFC 资源计量与资源池的相关文章

配置Hyper-V Server 资源计量

企业管理员为了实施可同时测量已分配资源和实际使用资源的高级计费策略,早期版本的 Hyper-V 要求用户开发自己的.对性能计数器进行轮询和汇总的计费解决方案.这些解决方案的开发成本可能比较高,而且有时还会导致历史数据的丢失. 为了帮助更准确.更简单地收费同时保护历史信息,从Windows Server 2012 开始,在Hyper-V 中引入了"资源计量"功能.该功能使客户能开发有成本效益较的.基于用途的计费解决方案.借助该功能,使托管服务提供商能够快速而经济地开发更高级.更可靠.基于

精彩继续 2.Hyper-V 资源池

一提到云计算大家可能都会想到自助服务,弹性扩展,资源池,按需使用,随时随地网络访问这些概念,其中,对于云计算工程师来讲,实施一套云计算,首先要先做的就是资源池,确认那些资源应该是属于云的,然后把这些资源通过软件定义等抽象技术,抽象成为一个pool,这个pool最终对于云管理人员来说,会直接应用于上层弹性扩展的实现,对于用户来讲,用户在门户上面创建申请云资源,是不需要管申请到哪里的,因为背后都会通过资源池去负载均衡把资源分摊撒给不同的服务器,并实现很好的高可用灾备机制. 今天老王要讲的并不是云计算

使用资源调控器管理资源

1.使用SQLServer Management Studio 配置资源调控器 2.使用T-SQL配置资源调控器 3.监控资源调控器 前言: 在前面的章节,提到过可以通过多种配置数据库服务器的方式来提高性能.如索引.统计信息.hints.物理设计和服务器配置等.当你完成 本系列包含: 1. 使用SQLServer Management Studio 配置资源调控器 2. 使用T-SQL配置资源调控器 3. 监控资源调控器 前言: 在前面的章节,提到过可以通过多种配置数据库服务器的方式来提高性能.

浅谈数据库资源使用的按需分配方法

SQL Server资源调节器的作用 如果有5个业务都很繁忙的数据库需要部署在一台服务器上,为了避免相互的资源抢占,我们通常会在服务器上安装5个SQL Server实例来分别承载这5个数据库,然后分别设置每个实例的最大和最小内存.CPU掩码等,用以s控制这5个业务数据库的资源分配. 笔者的公司曾经就有这样的案例.这种方式的缺点显而易见:首先是授权,在上述例子中,5个SQL Server实例的费用应该是比1个要高:其次是管理成本提高,DBA不得不安装和维护5个实例.那么,有没有更好的方法呢? 其实

ServerSAN解析(二):Nutanix实现存储与计算资源集成

Nutanix是一套分布式存储系统,在物理节点上集成了存储和计算资源,但逻辑上计算存储融合平台将所有存储逻辑运行在一个预先封装好的虚拟机(存储控制虚拟机)中,该虚拟机在Hypervisor之上运行,与业务计算虚拟机隔离,并为业务虚拟机提供高性能存储服务. Nutanix存储基础设施(NX系列超融合系统)的扩展不受任何管理程序的限制,可以扩展到上千个节点,存储逻辑与虚拟化平台分离,实现了计算和存储故障域隔离.独立的故障域使得平台更加稳定,更适合IO密集或者可靠性要求高的应用场景. 存储虚拟机和计算

Android应用程序资源的查找过程分析

文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8806798 我们知道,在Android系统中,每一个应用程序一般都会配置很多资源,用来适配不同密度.大小和方向的屏幕,以及适配不同的国家.地区和语言等等.这 些资源是在应用程序运行时自动根据设备的当前配置信息进行适配的.这也就是说,给定一个相同的资源ID,在不同的设备配置之下,查找到的可能是不同的资 源.这个资源查找过程对应用程序来说,是完全透

微软WSFC全方位解析

Windows Server Failover Clustering是微软重要的Windows Server功能,它为微软众多企业级平台提供底层高可用机制,掌握WSFC的概念原理,功能使用,故障排错将对管理员运维有很大帮助,本系列文章将从WSFC的概念介绍,功能使用,故障排错,性能优化,WSFC 2016新功能解析等多个层面来为大家介绍WSFC,一层层揭开它的神秘面纱,让更多朋友知道它,使用它 WSFC概念与管理操作知识补遗21篇: 浅谈群集与分布式基础知识 http://blog.51cto.

云计算和并行计算的关系

云计算是一种计算模式,代表了在某种程度上共享资源进行设计.开发.部署.运行应用,以及资源的可扩展收缩和对应用连续性的支持.目前大部 分的云计 算基础构架是由用户终端向数据中心传送可申请服务的网络,以及建立在服务器上的不同层次的虚拟化技术组成的,使到人们可以在任何有提供网络基础设施的地方 使用这些服务.因此,云的基本概念是通过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再由多部服务器所组成的庞大系统搜索.计算分析之后将处 理结果回传给用户终端.通过这项技术,远程的服务供应商可以在数秒之内

大型企业私有云建设思路解析

在以AWS.Google.阿里等为代表的公有云发展的同时,很多大型企业出于数据安全性.系统稳定性.软硬件自主权.对自主可控以及TCO低的考虑,更加倾向于建设企业私有云来承载内部业务信息系统的运行. 构建企业私有云并非是一蹴而就的,正如Gartner的副总裁Tom Bittman所述"部署私有云并不是简单地对硬件进行采购,而是一场革新".对于企业私有云而言,其建设同样应遵循信息系统建设的通用方法,即事先分析 规划.事中落地实现以及事后运维管理.本文从企业私有云建设需求分析,企业私有云建设