基于来自CSV文件的数据使用PowerCLI创建虚拟机
问题描述:
我在试图找出如何或是否有可能创建一个PowerCLI脚本来处理基于CSV文件的特定群集内创建虚拟机(虚拟机)。基于来自CSV文件的数据使用PowerCLI创建虚拟机
我发现了一些涉及从XML文件中读取PowerCLI的解决方案,我想确定CSV文件数据是否也是一个选项,如果是这样,如何去做。
背景:用户输入的VM规格数据输入到Excel“请求”的形式,一个VBA脚本用于将数据转换为一个CSV文件,我想知道是否有可能有一个PowerCLI的脚本读取从该CSV文件数据中创建具有指定值的VM(在执行之前进行审查以确保数据正确/相关)。
感谢您的帮助,您可以提供
答
收到来自VMware的社区网站的一些帮助,并能获取一个简单的脚本,以使用PowerCLI创建VM:
#Specify path of .csv file to import VM settings
$CSVPath = "C:\NewVMList.csv"
$CSVFILE = Import-CSV $CSVPath
$VMhost = Get-vmhost "$($CSVFile.VMHost)"
$PortGroup = Get-VirtualPortgroup -name "$($CSVFile.VLAN)" -VMhost $VMhost
New-VM -Name "$($CSVFile.Name)" -MemoryGB "$($CSVFile.MemoryGB)" -NumCPU "$($CSVFile.NumCPU)" -portgroup $Portgroup -DiskGB "$($CSVFile.C_System)"
请注意,我不是熟悉PowerCLI,但如果我理解正确,则希望从VBA代码启动PowerCLI脚本并从csv文件输入参数。如果是这样,你可以看看各种主题,如[从VBA执行脚本脚本](http://stackoverflow.com/questions/17956651/execute-a-command-in-command-prompt-using-excel-vba)可以发布这样的脚本,这可能是一个选择。 –
谢谢你的发送,皮埃尔。我会看看链接,看看这是否适用于我想要做的。 PowerCLI脚本不必由VBA代码调用,因为我们在Excel工作表数据上单独运行该代码以将特定单元格数据导出为CSV文件。尽管如此,该功能当然可能有用。 – NeedToKnowBasis22
你的问题让我感兴趣的,所以我有一个快速浏览一下一些选项,显然可以[通过使用命令行参数的脚本(https://communities.vmware.com/thread/340857?start=0&tstart=0)和因此将它们传递给您的VBA代码。否则似乎有一个'对的PowerCLI或[从文本文件中读取(https://communities.vmware.com/thread/434975?tstart=0)进口Csv'解决方案,它是什么,是在第一一个_csv_文件地方。 希望它可以帮助。 –