![](/img/trans.png)
[英]Assigning Disk Partition Space from .CSV file through PowerCLI Script
[英]Setting VLAN from CSV File in PowerCLI Script
我正在尝试编译PowerCLI脚本,以帮助自动从CSV文件的数据创建VM。 目前,我正在运行的脚本如下所示:
# Specify vCenter Server, vCenter Server username and vCenter Server user password
write-host “Please specify vCenter Server and enter credentials” -foreground green
$vc = read-Host "Connect to which vCenter Server?"
write-host “Connecting to vCenter Server $vc” -foreground green
$CSVPath = "$ScriptRoot\PROD_VMRequestTEST.xlsx.csv"
Connect-VIServer -Server $vc
$CSVFile = Import-Csv -Path $CSVPath
Import-Csv -Path $CSVPath
# Specify vCenter Server Virtual Machine & Templates folder
$Folder = “Discovered virtual machine”
#
# Specify the vSphere Cluster
$Cluster = 'vSphere 5.5 RND'
$esx = Get-Cluster $Cluster | Get-VMHost -State connected
Import-Csv -Path $CSVPath | %{
Write-Host “Creation of VM $_.Name initiated” -ForegroundColor green
New-VM -Name $_.Name -VMHost ($esx | Get-Random) -Location $Folder
Write-Host “Power On of the VM $_.name initiated” -ForegroundColor green
Start-VM -VM $_.Name -confirm:$false -RunAsync
}
我在网上遇到了一些通过PowerCLI设置VLAN的示例,但是它们似乎都与我使用CSV文件确定VLAN的示例没有直接关系。
我尝试与脚本一起使用的一个示例是:
$VMhost = Get-vmhost $_.VMHost
$PortGroup = Get-VirtualPortgroup -name $_.VLAN -VMhost $VMhost
但是,在该行中出现了与-Name参数有关的错误。
在脚本上下文中,我相信是由于该列值之一似乎为空(在您的情况下为Name )所导致的错误。 我可以看到您正在foreach循环中获取所有值。 我建议您创建一个示例csv,仅插入2组数据并查看其是否有效。 这样至少可以缩小问题范围。
希望这可以帮助...!!!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.