我有大量的虚拟化服务器。对于他们每个人,我想添加一个额外的虚拟NIC。任何人都可以提供一些如何编写脚本的指针吗?我看过Programmatically attaching a VHD to a remote Hyper-V VM,但我不熟悉C#。
另外,我可以在不必停止VM的情况下执行此操作吗?我意识到客户操作系统可能需要重新启动以使用新的NIC,但我还没有担心。我只想"热插拔"新的NIC。
答案 0 :(得分:0)
如果您不需要在C#中执行此操作,则可以使用Hyper-V PowerShell cmdlet: Add-VMNetworkAdapter
有关cmdlet的基本文档,请参阅:
使用示例:
Add-VMNetworkAdapter -VMName YourVMNameHere -SwitchName YourVirtualSwitchNameHere
如果您确实需要在C#中执行此操作,则可以只添加PowerShell Hyper-V库的参考引用。
如果您不想要PowerShell,则需要使用Hyper-V WMI提供程序。请注意这一点,因为V1和V2之间存在显着差异。 V1基本上是2008和2012年和2012 R2的V2。这需要更多的努力。
对于添加网卡的V2 WMI Api示例,请参阅:
最后一个,虽然用PowerShell编写,但可以向后移植到纯C#WMI代码。对象将是相同的。