Remote Desktop Manager appelle les applets de commande de PowerCLI et présente les résultats dans son interface utilisateur.
Voici les étapes pour aider à isoler les problèmes lorsque l'intégration ne fonctionne pas comme prévu.
GETVMS.PS1
Param(
[Parameter(Mandatory=$true)]
[string]$viServer,
[Parameter(Mandatory=$true)]
[string]$userName,
[Parameter(Mandatory=$true)]
[string]$password
) #end param
$VMHost = Connect-VIServer $($viServer) -User $userName -Password $password
if ($VMHost -eq $null ) { throw "Connection to server failed!";}
try
{
Get-View -ViewType VirtualMachine | select -Property Name, {$_.Moref.Value};
}
catch
{
write-host $ErrorMessage
}
Disconnect-VIServer $VMHost -Force -Confirm:$false
.\GetVMs.ps1 [SERVER_NAME] [USER_NAME] [PASSWORD]
Nom $_.Moref.Value ---- -------------- MACHINE1 18 MACHINE2 19
CONNECTVMRCFROMPOWERCLI.PS1
Param(
[Parameter(Mandatory=$true)]
[string]$viServer,
[Parameter(Mandatory=$true)]
[string]$userName,
[Parameter(Mandatory=$true)]
[string]$password,
[Parameter(Mandatory=$true)]
[string]$morefId = ""
) #end param
$VMHost = Connect-VIServer $($viServer) -User $userName -Password $password
if ($VMHost -eq $null ) { throw "Connection to server failed!";}
$si = Get-View ServiceInstance
$sm = Get-View $si.Content.SessionManager
$ticket = $sm.AcquireCloneTicket()
try
{
Start-Process -FilePath "C:\Program Files (x86)\VMware\VMware Remote Console\vmrc.exe" -ArgumentList "vmrc://clone:$($ticket)@$($viServer)/?moid=$($morefId)"
}
catch
{
write-host $ErrorMessage
}
#must wait to allow for the process to be started BEFORE we disconnect from the server
Start-Sleep -s 10
Disconnect-VIServer $VMHost -Force -Confirm:$false
Il faut envoyer le MoRef.Value qui a été obtenu en utilisant le Script A, dans notre exemple, démarrer MACHINE2 qui a 19 pour ID.
.\ConnectVMRCFromPowerCLI.ps1 [SERVER_NAME] [USER_NAME] [PASSWORD] 19
Le VMRC devrait apparaître et vous permettre d'interagir avec.