Windows Server 2012中的Hyper-V PowerShell模块使得在无System Center 虚拟机管理器(SCVMM)情况下的虚拟化管理变得容易起来。Hyper-V 2012 PowerShell cmdlets中一些重要的改变值得我们注意。 如果要对虚拟环境进行批量修改,使用SCVMM 2012更方便。但是在大多数情况下,使用内置的Hyper-V cmdlets进行一些操作比如创建VM、修改VM的属性、监控VM的使用情况等已经绰绰有余了。
Windows Server 2008 R2 中的Hyper-V PowerShell cmdlets功能简单明了,但是……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
Windows Server 2012中的Hyper-V PowerShell模块使得在无System Center 虚拟机管理器(SCVMM)情况下的虚拟化管理变得容易起来。Hyper-V 2012 PowerShell cmdlets中一些重要的改变值得我们注意。
如果要对虚拟环境进行批量修改,使用SCVMM 2012更方便。但是在大多数情况下,使用内置的Hyper-V cmdlets进行一些操作比如创建VM、修改VM的属性、监控VM的使用情况等已经绰绰有余了。
Windows Server 2008 R2 中的Hyper-V PowerShell cmdlets功能简单明了,但是Hyper-V PowerShell cmdlets需要的CodePlex PowerShell模块并没有集成在Windows Server 2008中。使用Hyper-V PowerShell只能执行一些基本的任务,但SCVMM却是编写高级Hyper-V Powershell脚本的唯一选择——这对许多组织来说意味着需要增加软硬件成本。
Hyper-V PowerShell cmdlets的所有功能在新版本的Hyper-V中继续存在,但是很多cmdlets已经发生了变化。因此将PowerShell 脚本迁移至Hyper-V R2需要有一个了解新语法的学习过程。
让我们一起来了解一下Windows 2008 R2 Hyper-V以及Hyper-V 2012 PowerShell cmdlets的一些不同之处,以及我在新平台上所使用的一些基础脚本。
Hyper-V 2012与Hyper-V 2008中的PowerShell cmdlets差异
两个脚本首要的不同之处就是从第三行到第七行。CreateVMR2.ps1脚本加载了外部的Hyper-V PowerShell脚本,而在Hyper-V 2012 PowerShell脚本中没有。因为当你打开PowerShell时,Hyper-V会默认加载外部的Hyper-V PowerShell脚本。
继续看一下脚本中创建VM的部分,你会看到两个语法的不同之处。New-VM是一样的,但是当给虚拟机添加CPU时,我们看到的是新的cmdlet Set-VMProcesssor(CreateVM2012.ps1 的第33行) 而不是Set-VMCPUCount(CreateVMR2.ps1 / 的35行)。
另外,Hyper-V 2008中的 -VM switch在Hyper-V 2012中变成–VMName。Hyper-V 2008中为VM分配CPU数量的命令–Count ,在Hyper-V 2012中变成-CPUTCount。
为虚拟机配置网络适配器的cmdlet在Hyper-V 2008以及Hyper-V 2012中也有不同之处。Add-VMNic (CreateVMR2.ps1 第37行)现在是 Add-VMNetworkAdapter(CreateVM2012.ps1第35行),同时虚拟网络交换机已经从–VirtualSwitch 更改为–Switchname。
接着看看使用PowerShell cmdlets设置VM内存的差异。Set-VMMemory cmdlet是相同的,但是切换为动态内存的配置已经发生了明显改变。–dynamic cmdlet(CreateVMR2.ps1的第36行) 已经替换为了–DynamicMemoryEnabled(CreateVM2012.ps1的第34行)。–MinimumBytes 以及–MaximumBytes开关是Hyper-V 2012 cmdlets中的一部分,取代了Hyper-V 2008中的-limit。
用于增加虚拟硬件驱动器(VHD)的PowerShell cmdlets同样发生了变化。创建新VHD的cmdlets都是 New-VHD,但是定义访问VHD的文件路径已经从–VHDPaths、–ParentVHDPath (CreateVMR2.ps1的第40行) 替换为 –Path 和–ParentPath(CreateVM2012.ps1 的第38行)。为VM增加磁盘所需要的cmdlets已经从Add-VMdisk(CreateVMR2.ps1 的第46行) 更换为 Add-VMHardDiskDrives(CreateVM2012.ps1的第44行)。同时设置控制器类型以及控制器数量的开关也进行了全面的修改:由–ControllerID 更改为 ControllerType ,由–LUN 更改为ControllerNumber。
除了cmdlets以及开关发生变化外,Windows Server 2012 Hyper-V 还提供了一些新特性。
上述实例并不仅仅是为了比较Windows Server 2008 R2 Hyper-V 以及Windows Server 2012 Hyper-V cmdlet的差异之处,更是为了说明当迁移至新Hyper-V平台后需要做的调整。必须对现有的脚本进行某些转换,在最新版本的Hyper-V中所发现的已经扩展的cmdlets以及某些新功能的cmdlets同样值得花时间去练习使用。
相关推荐
-
专家谈Windows Server 2016存储——Storage Spaces Direct
为了让大家更加了解新版本Windows Server中的一些存储变化,我们采访了微软Hyper-V MVP Thomas Maurer。他对Storage Spaces Direct特性进行了深入介绍。
-
面对Windows Server 2016虚拟化新变化 管理员用什么姿势迎接才最好?
我们向微软Hyper-V MVP Thomas Maurer询问了Windows Server 2016中有关存储和虚拟化方面的一些变化,以及管理员如何为未来技术,如云计算和容器,做好准备。
-
Windows Server 2016系列三:虚拟化
在《Windows Server 2016系列一:关键变化》中,我们对Windows Server 2016的新特性已经有所了解。对于决定升级到Windows Server 2016的组织,《Windows Server 2016系列二:升级》必不可少。Windows Server 2016在虚拟化方面提供了首次登陆的容器和Hyper-V更新。容器是虚拟化的未来发展方式——应用程序和服务在孤立的环境中运行,不会影响到系统。Windows Server 2016还为Hyper-V带来了显著的安全提升。
-
Windows Server 2016系列一:关键变化
随着Windows Server 2016正式发布的日益临近,越来越多企业开始考虑挑战到新的服务器操作系统平台。无论你是持观望态度还是决定部署新的服务器操作系统,本指南共分四个系列,带你由浅入深,从全面了解到最终掌握Windows Server 2016。