Dépannage avancé de PowerCLI

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.

Script A : Obtenir la liste des machines virtuelles

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

Exemple d'utilisation

.\GetVMs.ps1 [SERVER_NAME] [USER_NAME] [PASSWORD]

Nom          $_.Moref.Value ----          -------------- MACHINE1      18 MACHINE2      19

Script B -:Lancement du vmrc

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

Exemple d'utilisation

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.

Devolutions Forum logo Donnez-nous vos commentaires