通过由vNext构建

时间:2015-08-19 07:23:57

标签: powershell virtual-machine hyper-v

我认为这个问题已经很明确,但如果不是,我会再解释一下 我正在尝试使用build vNext在虚拟机上部署测试代理。为此,我需要在Hyper-V服务器上创建虚拟机。

我通过在Powershell vNext任务中执行Powershell脚本来做到这一点。

当我在电脑上执行脚本时,没问题。但是当我在构建代理中执行它时,我得到了一个似乎是因为参数的错误。

这是我的powershell脚本:

Import-Module virtualmachinemanager
Import-Module virtualmachinemanagercore

$VMName= "VMTestName"
$cloud= "testCloud"
$Template= "testTemplate"
$VMMComputer = "testServer"
$VMMPort = 8100

$secpasswd = ConvertTo-SecureString "passWord!" -AsPlainText -Force
$credentials = New-Object System.Management.Automation.PSCredential ("useR", $secpasswd)

$VMMServer = Get-SCVMMServer -ComputerName $VMMComputer -TCPPort $VMMPort -ConnectAs Administrator -Credential $credentials -UserRoleName "Administrator"

$TemplateObj = Get-SCVMTemplate -VMMServer $VMMServer -All | where { $_.Name -eq $Template }
$virtualMachineConfiguration = New-SCVMConfiguration -VMTemplate $TemplateObj -Name $VMName
$cloudObj = Get-SCCloud -Name $cloud

Write-Verbose "Creating VM $VMName in cloud $cloud"
New-SCVirtualMachine -Name $VMName -VMConfiguration $virtualMachineConfiguration -Cloud $cloudObj -Computername $VMName| out-null

Start-VM $VMName

错误是:

Get-SCVMMServer:VMM遇到异常格式化程序在尝试反序列化消息时引发异常:尝试反序列化参数http://tempuri.org/:ConnectAs时出错。 InnerException消息是'期待状态'元素' ...遇到'文本'名称'',名称空间''。 &#39 ;.有关更多详细信息,请参阅InnerException。并且无法完成请求。 (错误ID:20414)

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用SCVMM Addin for TFS 2015

https://marketplace.visualstudio.com/items?itemName=ms-vscs-rm.scvmmapp

  • SCVMM服务连接* :从下拉列表中选择上面定义的SCVMM服务连接。
  • 操作* :选择 - 还原检查点。
  • 虚拟机名称:提供虚拟机的名称或以逗号分隔的虚拟机列表,如fabrikamdev,fabrikamqa,prod05等
  • 虚拟机模板名称:要使用模板创建虚拟机,请提供虚拟机模板名称
  • VM的放置路径:指定在虚拟机放置期间使用的虚拟机路径。例如,主机上的路径:C:\ ProgramData \ Microsoft \ Windows \ Hyper-V
  • 其他参数:使用模板创建新虚拟机的附加参数。例如,-StartVM -StartAction NeverAutoTurnOnVM -StopAction SaveVM等。
  • 脚本路径:要执行的PowerShell脚本的路径。应该是完全限定路径或相对于默认工作目录
  • 脚本参数:传递给PowerShell脚本的参数。顺序参数或命名参数
  • 工作文件夹:运行脚本时的当前工作目录。默认为脚本所在的文件夹。
  • 等待时间:等待虚拟机进入就绪状态。
  • 检查点名称:对于“创建CheckPoint”,请输入将应用于虚拟机的检查点的名称。如果是“删除检查点”或“恢复检查点”,请确保检查点名称有效。
  • 中选择虚拟机:您可以从VMM云或VMM主机确定虚拟机的来源范围。
  • 按照VM模板中的定义设置计算机名称:您可以选中此框以设置指定VM模板中定义的计算机名称。如果未选择,则计算机名称将与“虚拟机名称”的名称相同。