随着Windows Server 2012和Hyper-V 3.0的发布,服务器虚拟化变得简单同时也带来更多的惊喜。简单是由于PowerShell cmdlets的存在,惊喜是因为众多新功能。 过去,IT人员在PowerShell方面获得帮助很有限,因此建立和自动化配置宿主机和虚拟机配置很困难。缺乏帮助曾导致IT人员不能使用服务器虚拟化中最具价值、精简、高速和高安全性的工具——Server Core。
借助Hyper-V 3.0和PowerShell,管理员可以轻松地自动化和扩展虚拟化环境、准备容灾脚本和掌控Server Core。第一步是为网络配置新的Hyper-V可扩展交换机。即使……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
随着Windows Server 2012和Hyper-V 3.0的发布,服务器虚拟化变得简单同时也带来更多的惊喜。简单是由于PowerShell cmdlets的存在,惊喜是因为众多新功能。
过去,IT人员在PowerShell方面获得帮助很有限,因此建立和自动化配置宿主机和虚拟机配置很困难。缺乏帮助曾导致IT人员不能使用服务器虚拟化中最具价值、精简、高速和高安全性的工具——Server Core。
借助Hyper-V 3.0和PowerShell,管理员可以轻松地自动化和扩展虚拟化环境、准备容灾脚本和掌控Server Core。第一步是为网络配置新的Hyper-V可扩展交换机。即使您需要为自己的环境进行定制,了解基本交换机cmdlets的相关细节依然非常重要。
在Hyper-V 3.0中使用PowerShell的优点
通过PowerShell配置单个虚拟交换机无法体现其优势。优点如下:
• Cmdlets可以支持虚拟交换机的–ComputerName等参数,可以同时配置多个宿主机。
• Cmdlets可以在PowerShell上远程运行,提供高效的多宿主机配置途径。
• 您可以写一个单行程序用于配置虚拟交换机,并保存为.ps1文件,创建脚本用于自动化和容灾。
现有工具
了解了这些优势,你可以开始使用工具完成交换机配置过程。Hyper-V 3.0包含了164个cmdlets,其中19个用于虚拟交换机配置。看起来很多,实际上不用担心,如果您不需要额外的第三方扩展,多数的命令是用不到的。
现在,创建和配置虚拟机交换机,只会用到6个交换机cmdlets以及1~2个网卡cmdlets,包括:
• Get-Help *VMSwitch* --列出虚拟交换机相关的所有16个cmdlets
• Get-Help *VMSwitch -- 列出6个必须的cmdlets(注意命令的最后没有通配符)
创建新的以太网虚拟交换机
外部的虚拟交换机把物理界面和虚拟环境联系起来。涉及2个cmdlets :New-VMSwitch 和 Add-VMSwitch。两个命令很类似,但是用法不同:
New-VMSwitch 为一台或多台宿主机创建新的交换机。下面是在两台宿主机上创建以太网交换机的示例:
New-VMSwitch –Name ‘Outside Ethernet’ –NetAdapterName Ethernet
–ComputerName Host1, Host2 –Notes ‘Teamed nic support required’
您可以使用Get-NetAdapter cmdlet列出宿主机上所有的网卡,以便于使用–NetAdapterName命令时识别正确的参数。默认情况下,Hyper-V 3.0以太网交换机支持宿主机访问网卡。如果您不希望这样,可以通过-AllowManagementOS设置为$False状态。
如果您在System Center Virtual Machine Manager(SCVMM)中配置了以太网资源池,Add-VMSwitch cmdlet命令把虚拟交换机添加到资源池。如果还需要定义池的名字,所需命令类似于:
Add-VMSwitch –ComputerName host1 –Name ‘Outside Ethernet’
-ResourcePoolName ‘Ethernet Pool’
配置以太网交换机或许是交换机相关的工作内容,很多环境中还需要宿主机上配置内部或私有网络交换机。
创建额外的内部/私有虚拟交换机
New-VMSwitch cmdlet命令结合一组网卡相关cmdlets,将会简化创建内部/私有交换机。如下实例在Host1和Host2上创建一个新的名为“Inside File Servers”的内部交换机。
New-VMSwitch -Name 'Inside File Servers' -SwitchType Internal -Notes 'File server network'
根据需求,–SwitchType参数可配置为内部或私有。使用–NetAdapterName命令时该参数不可用,因为这个设置仅用于外部接口。
一旦创建内部网卡,您需要为它们分配IP地址。现有一组关于网卡的cmdlets,如下命令显示出我之前创建的内部交换机:
Get-NetAdapter -name *inside*
New-NetIPAddress cmdlet设置端口相关的IP地址、子网掩码和默认网关信息。在本实例中,是我们创建的内部交换机的虚拟端口。
Get-NetAdapter -name *inside* | New-NetIPAddress -IPAddress 192.168.3.10
-PrefixLength 24
如果宿主机加入了域而某台内部虚机是作为域控的,您还需要给内部适配器添加一个DNS入口。在主控失效时,为宿主机提供了额外的DNS服务器用于访问。DNS的设置通过Set-DnsClientServerAddress cmdlet命令实现。
Get-NetAdapter -name *inside* | Set-DnsClientServerAddress -ServerAddresses 192.168.3.15
其它的交换机cmdlets
剩余的四个基本cmdlets可以检索、删除和更改某个虚拟交换机。下面是我个人推荐的一些例子:
要获得多台宿主机虚拟交换机列表及相关参数信息,使用如下cmdlets:
Get-VMSwitch –ComputerName Host1, Host2 | Format-List –Property *
要把虚拟交换机名字从“Inside file Server”更改为“Inside Print Server”,使用cmdlets如下:
Get-VMSwitch –Name ‘Inside file server’ | Rename-VMSwitch
–NewName ‘Inside Print Server’
Set-VMSwitch cmdlet提供了多个参数可用于现有交换机的调整。下面的命令禁止管理OS使用外部交换机:
Get-VMSwitch –SwitchType External | Set-VMSwitch
–AllowManagementOS $False
最后一个cmdlets是Remove-VMSwitch,如同字面意思,它的功能是通过名字来锁定和移除某个虚拟交换机。在测试交换机配置脚本时,您可能会需要把宿主机所有的交换机移除。最后一个例子是把所有交换机从宿主机移除:
Get-VMSwitch | Remove-VMSwitch
Hyper-V 3.0的PowerShell cmdlets扩展包使得多宿主机的配置和自动化配置变得简单。通过这些技术编制DR脚本并通过PowerShell配置您以后的宿主机交换机。
相关推荐
-
一个物理网卡是否可以同时属于多个虚拟交换机(标准和分布式)?
-
VMware里的虚拟交换机能做镜像吗?想抓取某个VLAN里的数据。
VMware里的虚拟交换机能做镜像吗?想抓取某个VLAN里的数据。数据不过实体交换机,就在VMware里虚拟交 […]
-
筛选Hyper-V提供的虚拟机隔离选项
不管是出于什么原因,你都可能想要去控制虚拟机之间的通信。Hyper-V提供了很多可供选择的虚拟机隔离选项。
-
图文教程:配置VMware vSwitch安全策略
VMware vSwitch提供了一些安全措施可以阻止恶意行为,或者限制接口上允许通过的最大流量。下面是如何实施这些安全配置的方法。