业务咨询:0769-22166223

PowerShell 与 hyper-v

PowerShell 与 hyper-v

通过PowerShell可以实现VMware中的很多管理功能,因此Hyper-V也可以通过类似的方式去管理。然而微软在通过PowerShell命令(或称为cmdlet)管理Hyper-V方面做的工作并不多。
  如果您的版本是Windows Server 2008 R2,借助文件库可以和VMware一样通过免费的PowerShell cmdlet来监控和管理Hyper-V。该文本库俗称“PowerShell Module for Hyper-V”,其中包括了用于完成虚拟机状态监控、检索硬件配置和获取其它虚拟机相关数据的cmdlet。通过这些Hyper-V便捷管理方式,您可以检查虚拟机是否健康、内存容量甚至是功能状态。

  安装和测试用于Hyper-V管理的PowerShell

  PowerShell模块需要简单几步安装过程,你需要主机安装2.0版的.NET Framework和启用Windows PowerShell。请注意安装程序需要调用PowerShell脚本,因此您只有在系统中启用PowerShell执行策略为无限制模式(微软通常不推荐这么做)才可以完成安装。通过输入Set-ExecutionPolicy Unrestricted cmdlet可以更改策略。如果您不希望做更改,可以手动完成各个部分的注册。

  完成PowerShell模块安装后下一步是检查您的用户是否具备在服务器上的管理员权限,否则部分Hyper-V管理用cmdlet可能无法工作。输入Test-Admin cmdlet可以检查权限。图1中所示Windows通过 true或false给出是否具备管理权限的回答。

 
       在您安装完PowerShell模块后,检查账户是否具备管理员权限。

  监控虚拟机状态

  PowerShell可以监控在Hyper-V服务器上的多个虚拟机的运行状态。通过如下cmdlet获取虚拟机参数:

  Get-VM.Windows返回某台服务器上的每台虚拟机的名称、基本状态和正常运行时间等信息。

  Get-VMSummary。输入该命令,并附加您希望检查的机器名称,可以获得某个指定虚拟机的更多细节。Windows会返回很多,包括虚拟机使用的虚拟CPU数量、CPU加载历史记录、操作系统、创建时间以及被系统认证过的域名全称等信息。
 

 
  通过命令行可以获取虚拟机的健康信息。

  测试虚拟机功能

  您还可以了解虚拟机是否按照指定的方式工作。使用Test-VMHeartbeat cmdlet来检查虚拟机是否响应。Windows返回OK表示指定的虚机心跳信息正常。
 
 

  很多cmdlet可以返回虚拟机的硬件资源分配情况。如下的硬件专用cmdlet可以帮助改善Hyper-V的管理。

  Get-VMSettingData.Windows返回每个虚拟机硬件配置的详细信息。 我指定了用列表输出的方式。另外,还可以以概要方式输出。如果您没有指定虚拟机,cmdlet会提供所有该服务器上的虚机硬件配置。为了补充您的Hyper-V管理策略,可以把该信息输出为CSV文件并在Excel中编辑。
 

  Get-VMMemory.这个cmdlet提供了为每台虚拟机保留的内存数量 。这对于资源规划来说是非常方便的,您在Hyper-V主机中添加虚机前,必须确切知道空闲的内存数量。
 

  Get-VMCPUCount使用该cmdlet可以识别为每台虚机分配的CPU核心数量。

  Get-VMProcessor准确的讲这个cmdlet返回的是性能状态, 显示了正在工作中的虚拟机CPU占用率。

分享到:

热门关注