新版本的PowerShell随着Windows Server 2012 R2到来。现在,使用PowerShell 4.0的唯一途径就是获取并使用Windows Management framework 4.0。
PowerShell在Windows虚拟化任务方面能发挥最大帮助和用途。现在网上有关于此话题的资料库,最热的是TechNet博客中的一个五部分的系列文章。通过这些信息,你可以找到大量有关PowerShell脚本自动化多虚拟化设置、配置和维护任务的相关细节。
TechNet系列文章提供了运行PowerShell脚本的基础知识
TechNet系列中的内容很好地概述了PowerShell在虚拟化世界里的作用。该系列还概述了图形PowerShell接口,提供了将工作进程ID映射到VM的脚本,介绍使用PowerShell WMI创建虚拟硬盘(VHD)时如何创建脚本,如何获取一台Hyper-V虚拟机的IP地址,如何关闭Hyper-V中的客户虚拟机,以及如何在Hyper-V中创建一个完整的虚拟网络。
只要有足够的时间和热情,你可以利用PowerShell做很多事情。当然,真正的好处在于你可以自动化重复的任务。任务的重复度越高利用率就越高。
CodePlex提供Hyper-V脚本
Windows Server 2012和Windows Server 2012 R2中的可扩展交换机比早期版本容易使用虚拟基础设施。交换机扩展还意味着你可以使用更新和增强功能而不必白费力气做重复工作。
CodePlex PowerShell管理库提供了最好的资料,你可以通过这里的100多条cmdlet找到并连接到VM,观察和操作机器状态,备份或出口VM以及处理VHD文件等等。
Hyper-V有自己的cmdlet集合
图1. Hyper-V PowerShell脚本
Hyper-V 3.0和150条PowerShell cmdlets。你可以使用PowerShell显示可用资源以及如何运行和使用这些脚本,这需要在正常的PowerShell运行环境中输入以下命令:Get-Command –Module Hyper-V(图1)。
在命令后面附加上-Name *search*就可以得到该条cmdlet的其他细节。*号是通配符,你可以将其替换成想要搜索的字符串,例如add、find等等。Get-Help cmdlet后面可接三种输出类型:-Examples(代码实例)、-Detailed(详细输出)和-Full(所有信息)。因此,Get-Help Add_VMNetworkAdapter -Examples显示的是在虚拟机上添加网络适配器的PowerShell脚本实例。
使用PowerShell访问Hyper-V模块时,你需要提前启动该功能,输入下面的命令:
Add-WindowsFeature Hyper-V -IncludeManagementTools
作为管理员,你还必须运行PowerShell控制台与Hyper-V进行互动和管理,所以一定要尽快遵循这些简单的步骤。