Cloudlink REST API kullanan PowerShell komut dosyası örneği

Summary: Bu dosya sadece eğitim/bilgilendirme amaçlıdır. PowerShell betik dili ile Cloudlink otomasyon komut dosyaları yazarken referans olarak kullanılabilir. Dell, bu dosyanın Dell Müşterisinin ortamında bir PowerShell komut dosyası olarak işlenmesiyle ilgili hiçbir sorumluluk kabul etmez. Komut dosyası, Cloudlink RestAPI çağrılarını kullanarak Cloudlink'e kayıtlı makineleri ve sürücülerini bir PowerShell komut dosyasından listelemenin bir yolunu gösterir. Komut dosyası herhangi bir sistemin durumunu değiştirmez, sadece bilgileri görüntüler. Cloudlink düğümüne erişim (IP adresiyle gösterilir), "client" tipindeki bir Cloudlink kullanıcısının kimlik bilgileriyle verilir. ...

Acest articol se aplică pentru Acest articol nu se aplică pentru Acest articol nu este legat de un produs specific. Acest articol nu acoperă toate versiunile de produs existente.

Symptoms

Komut dosyası, Cloudlink işlemlerini otomatikleştirmek için kullanılabilir. Bu örnekte komut dosyası, Cloudlink Center'a kayıtlı makineleri listeler.

 

Cause

Komut dosyası, birden fazla Cloudlink Merkezi olan veya Cloudlink Center'larını PowerShell komut dosyası kullanarak yönetmek isteyen müşteriler için yararlı olabilir.

 

Resolution

# Copyright Dell © 2021, 2022
# Bu dosya yalnızca eğitim/bilgilendirme amaçlıdır.
# PowerShell betik dili ile Cloudlink otomasyon komut dosyaları yazarken referans olarak kullanılabilir.
# Dell, bu dosyanın Dell Müşterisinin ortamında bir PowerShell komut dosyası olarak işlenmesiyle ilgili hiçbir sorumluluk kabul etmez.

# Komut dosyası, Cloudlink RestAPI çağrılarını kullanarak Cloudlink'e kayıtlı makineleri ve sürücülerini bir PowerShell komut dosyasından listelemenin bir yolunu gösterir.
# Komut dosyası herhangi bir sistemin durumunu değiştirmez, sadece bilgileri görüntüler.
# Cloudlink düğümüne erişim (IP adresiyle gösterilir), "client" tipindeki bir Cloudlink kullanıcısının kimlik bilgileriyle verilir.

# Aşağıdaki kısım sertifika doğrulamasıyla alay ediyor, sertifika her zaman geçerli.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback').Type)
{
$certCallback = @"
    using System;
    using System.Net;
    using System.Net.Security;
    using System.Security.Cryptography.X509Certificates;
    public class ServerCertificateValidationCallback
    {
        public static void Ignore()
        {
            if(ServicePointManager.ServerCertificateValidationCallback ==null)
            {
                ServicePointManager.ServerCertificateValidationCallback +=
                    delegate
                    (
                        Object obj,
                        X509Certificate certificate,
                        X509Chain chain,
                        SslPolicyErrors errors
                    )
                    {
                        return true;
                    };
            }
        }
    }
"@
    Add-Type $certCallback
 }
[ServerCertificateValidationCallback]::Ignore()


$server='<cloudlink node ip>'
$client_id='<client id>'
$client_secret='<client secret>'

if ($args[0] -ne $null)
{  $server=$args[0] }

if ($args[1] -ne $null)
{  $client_id=$args[1] }

if ($args[2] -ne $null)
{  $client_secret=$args[2] }



$serverport=$server+":443"

Write-Output  "parameters: server=$server, client_id=$client_id, client_secret=$client_secret"

$responsee=Invoke-RestMethod -Uri "https://$server/cloudlink/oauth/token?grant_type=client_credentials&client_id=$client_id&client_secret=$client_secret&scope=all" -Method Get -TimeoutSec 1800
Write-Output "The response received:"
Write-Output "$responsee"



if($responsee.access_token)
{
  $mytoken=$responsee.access_token

  $Type = "application/json"
  $resolveSessionHeader = @{'Authorization' = "Bearer $mytoken"}

# Makineler listesi için sorgu

  $machine_list_query='https://$serverport/cloudlink/rest/securevm'
  $machine_list=Invoke-WebRequest -Method Get -Uri $machine_list_query -Headers $resolveSessionHeader -ContentType $Type

# Konsoldaki makineleri listeleyin.

  Write-Host "Machine list:" -ForegroundColor Yellow
  $machine_list_txt = $machine_list | ConvertFrom-Json
  $machine_list_txt | FT

Her makine #For sürücüleri listeleyin.

  foreach ($machine in $machine_list_txt)
  {
    $drives_list = $($machine.resources)
    Write-Host "$($machine.name) $($machine.ip_address) ($($machine.os_name)) group $($machine.group)" -ForegroundColor Yellow
    $drives_list | FT
  }
}

 

Produse afectate

CloudLink SecureVM, CloudLink
Proprietăți articol
Article Number: 000202396
Article Type: Solution
Ultima modificare: 09 Jun 2026
Version:  7
Găsiți răspunsuri la întrebările dvs. de la alți utilizatori Dell
Servicii de asistență
Verificați dacă dispozitivul dvs. este acoperit de serviciile de asistență.