Sdílet prostřednictvím


Zjednodušení vytváření runbooků Service Management Automation pomocí globálních prostředků

Globální prostředky jsou k dispozici pro všechny runbooky v prostředí Automation. Vytvoříte a nakonfigurujete je pomocí pracovního prostoru Automation na portálu pro správu nebo s příslušnými rutinami ve Windows PowerShellu. Z runbooku můžete načíst a nastavit hodnoty globálních prostředků s aktivitami v modulu RunbookConstructs . Rutiny Windows PowerShellu jsou k dispozici pro použití v runboocích ve službě Service Management Automation, ale aktivity se doporučují, protože jsou efektivnější, protože nemusí pracovat prostřednictvím webové služby Automation.

Získání nebo nastavení přihlašovacích údajů

Přihlašovací údaje služby Automation jsou uživatelské jméno a heslo, které lze použít s příkazy Windows PowerShellu nebo certifikátem, který se nahraje na server. Vlastnosti přihlašovacích údajů jsou bezpečně uložené v databázi Automation a dají se k němu přistupovat v runbooku pomocí aktivity Get-AutomationPSCredential nebo Get-AutomationCertificate .

PowerShell pro správu přihlašovacích údajů

Rutiny v následující tabulce můžete použít k vytvoření a správě přihlašovacích údajů pomocí Prostředí Windows PowerShell ve službě Service Management Automation.

Rutiny Popis
Get-SmaCertificate Načte certifikát Automation.
Get-SmaCredential Načte přihlašovací údaje PowerShellu pro automatizaci.
Remove-SmaCertificate Odebere certifikát Automation.
Remove-SmaCredential Odebere přihlašovací údaje PowerShellu pro automatizaci.
Set-SmaCertificate Vytvoří nový certifikát nebo nastaví vlastnosti existujícího certifikátu, včetně nahrání souboru certifikátu a nastavení hesla pro soubor .pfx.
Set-SmaCredential Vytvoří nové přihlašovací údaje PowerShellu pro automatizaci nebo nastaví vlastnosti pro existující přihlašovací údaje.

PowerShell pro práci s přihlašovacími údaji

Aktivity v následující tabulce můžete použít pro přístup k přihlašovacím údajům v runbooku.

Aktivity Popis
Get-AutomationCertificate Získá certifikát pro použití v runbooku.
Get-AutomationPSCredential Získá uživatelské jméno a heslo pro použití v runbooku.

Poznámka:

Měli byste se vyhnout použití proměnných v parametru Name get-AutomationPSCredential a Get-AutomationCertificate, protože to může komplikovat zjišťování závislostí mezi runbooky a proměnnými Automation.

Vytvoření přihlašovacích údajů PowerShellu na portálu pro správu

  1. Vyberte pracovní prostor Automation.

  2. V horní části okna vyberte Prostředky.

  3. V dolní části okna vyberte Přidat nastavení.

  4. Vyberte Přidat přihlašovací údaje.

  5. V rozevíracím seznamu Typ přihlašovacích údajů vyberte Přihlašovací údaje PowerShellu.

  6. Do pole Název zadejte název přihlašovacích údajů.

  7. Vyberte šipku doprava.

  8. Zadejte hodnoty pro každou vlastnost.

  9. Výběrem značky zaškrtnutí přihlašovací údaje uložte.

Vytvoření certifikátu v nástroji

Portál pro správu

  1. Vyberte pracovní prostor Automation.

  2. V horní části okna vyberte Prostředky.

  3. V dolní části okna vyberte Přidat nastavení.

  4. Vyberte Přidat přihlašovací údaje.

  5. V rozevíracím seznamu Typ přihlašovacích údajů vyberte Certifikát.

  6. Do pole Název zadejte název certifikátu.

  7. Vyberte šipku doprava.

  8. Vyberte Procházet soubor a přejděte do souboru .cer nebo .pfx.

  9. Pokud jste vybrali soubor .pfx, zadejte jeho heslo.

  10. Vyberte značku zaškrtnutí a uložte certifikát.

Vytvoření přihlašovacích údajů pomocí PowerShellu

Následující ukázkové příkazy ukazují, jak vytvořit nové přihlašovací údaje.

$webServer = 'https://MyWebServer'
$port = 9090
$credName = 'MyCredential'
$user = 'contoso\MyUser'
$pwd = ConvertTo-SecureString -String 'P@$$w0rd' -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$pwd

Set-SmaCredential -WebServiceEndpoint $webServer -port $port -Name $credName -Value $cred

Vytvoření nového certifikátu PowerShellu pomocí Windows PowerShellu ve službě Service Management Automation

Následující ukázkové příkazy ukazují, jak vytvořit nový certifikát importem souboru certifikátu.

$webServer = 'https://MyWebServer'
$port = 9090
$certName = 'MyCertificate'
$path = 'c:\certs\MyCertificate.pfx'
$certPwd = ConvertTo-SecureString -String 'P@$$w0rd' -AsPlainText -Force

Set-SmaCertificate -WebServiceEndpoint $webServer -port $port -Name $certName -Path $certPath -Password $certPwd

Použití přihlašovacích údajů PowerShellu v runbooku

Přihlašovací údaje PowerShellu načtete v runbooku s aktivitou Get-AutomationPSCredential . Tím se vrátí objekt PSCredential, který můžete použít v pracovním postupu.

  • Následující ukázkové příkazy ukazují, jak používat přihlašovací údaje PowerShellu v runbooku. V tomto příkladu se přihlašovací údaje používají s aktivitou InlineScript ke spuštění sady příkazů pomocí alternativních přihlašovacích údajů.

    $myCredential = Get-AutomationPSCredential -Name 'MyCredential'
    InlineScript {
       <Commands>
    } -PSComputerName $ServerName -PSCredential $myCredential
    

Správa připojení SMA

Připojení automation obsahuje informace potřebné pro připojení ke službě nebo aplikaci z runbooku. Tyto informace jsou definovány v modulu pro aplikaci a obvykle obsahují takové informace, jako je uživatelské jméno a heslo a počítač pro připojení. Můžou být vyžadovány i další informace, jako je certifikát nebo ID předplatného. Vlastnosti připojení jsou bezpečně uložené v databázi Automation a dají se k němu přistupovat v runbooku pomocí aktivity Get-AutomationConnection .

Rutiny Prostředí Windows PowerShell

Přihlašovací údaje můžete vytvářet a spravovat pomocí rutin prostředí Windows PowerShell v následující tabulce.

Rutiny Popis
Get-SmaConnection Načte hodnoty pro každé pole v určitém připojení.
Get-SmaConnectionField Načte definice polí pro konkrétní typ připojení.
Get-SmaConnectionType Načte dostupné typy připojení.
New-SmaConnection Vytvoří nové připojení.
Remove-SmaConnection Odeberte existující připojení.
Set-SmaConnectionFieldValue Nastaví hodnotu konkrétního pole pro existující připojení.

Aktivity runbooků

K připojením v runbooku můžete přistupovat pomocí aktivit v následující tabulce.

Aktivity Popis
Get-AutomationConnection Získá připojení k použití v runbooku.

Vytvoření připojení na portálu pro správu

  1. Vyberte pracovní prostor Automation.

  2. V horní části okna vyberte Prostředky.

  3. V dolní části okna vyberte Přidat nastavení.

  4. Vyberte Přidat připojení.

  5. V rozevíracím seznamu Typ připojení vyberte typ připojení.

  6. Do pole Název zadejte název připojení.

  7. Vyberte šipku doprava.

  8. Zadejte hodnotu pro každou vlastnost.

  9. Výběrem značky zaškrtnutí uložte připojení.

Vytvoření připojení pomocí Windows PowerShellu

Následující ukázkové příkazy vytvoří nové připojení nástroje Virtual Machine Manager s názvem MyVMMConnection.

Poznámka:

K definování vlastností připojení používáme tabulku hash. Důvodem je to, že různé typy připojení vyžadují různé sady vlastností. Připojení jiného typu by používalo jinou sadu hodnot polí.

Další informace o tabulkách hash najdete v tématu about_Hash_Tables.

$webServer = 'https://MyWebServer'
$port = 9090
$connectionName = 'MyConnection'
$fieldValues = @{"Username"="MyUser";"Password"="password";"ComputerName"="MyComputer"}
New-SmaConnection -WebServiceEndpoint $webServer -port $port -Name $connectionName -ConnectionTypeName "VirtualMachineManager" -ConnectionFieldValues $fieldValues

Použití připojení v runbooku

Pomocí aktivity Get-AutomationConnection použijte připojení v runbooku. Tato aktivita načte hodnoty různých polí v připojení a vrátí je jako tabulku hash, která se pak dá použít s příslušnými příkazy v runbooku.

Další informace o tabulkách hash najdete v tématu about_Hash_Tables.

Následující ukázkový kód ukazuje, jak pomocí připojení zadat název počítače a přihlašovací údaje pro blok InlineScript , který spouští příkazy na jiném počítači.

$con = Get-AutomationConnection -Name 'MyConnection'
$securepassword = ConvertTo-SecureString -AsPlainText -String $con.Password -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $con.Username, $securepassword
InlineScript {
   <Commands>
} -PSComputerName $con.ComputerName -PSCredential $cred

Zjednodušení vývoje runbooků s využitím globálních proměnných

Proměnné automatizace jsou hodnoty, které jsou k dispozici pro všechny runbooky. Můžete je vytvářet, upravovat a načítat z portálu pro správu, Windows PowerShellu nebo z runbooku. Proměnné automatizace jsou užitečné pro následující scénáře:

  • Sdílejte hodnotu mezi více runbooky.

  • Sdílejte hodnotu mezi více úlohami ze stejného runbooku.

  • Spravujte hodnotu z portálu pro správu nebo z příkazového řádku Windows PowerShellu, který používají runbooky.

Proměnné automatizace jsou trvalé, aby byly i nadále dostupné, i když runbook selže. To také umožňuje nastavit hodnotu jedním runbookem, který pak používá jiný nebo je používán stejným runbookem při příštím spuštění.

Při vytvoření proměnné je nutné zadat jeho datový typ z následujícího seznamu. To znamená, že portál pro správu může zobrazit příslušný ovládací prvek pro hodnotu proměnné. Proměnné můžete přiřadit pouze hodnotu správného typu.

  • String

  • Celé číslo

  • Logická hodnota

  • Datum a čas

Při vytvoření proměnné můžete určit, že se uloží zašifrovaná. Když je proměnná zašifrovaná, je bezpečně uložená v databázi SMA a její hodnota se nedá načíst z rutiny Get-SmaVariable . Jediný způsob, jak lze načíst zašifrovanou hodnotu, je z aktivity Get-AutomationVariable v runbooku. Vytvořením tabulky hash můžete uložit více hodnot definovaného typu do jedné proměnné.

Rutiny Prostředí Windows PowerShell

Proměnné můžete vytvářet a spravovat pomocí rutin Prostředí Windows PowerShell v následující tabulce.

Rutiny Popis
Get-SmaVariable Načte hodnotu existující proměnné.
Set-SmaVariable Vytvoří novou proměnnou nebo nastaví hodnotu pro existující proměnnou.

Aktivity runbooků

K proměnným v runbooku můžete přistupovat pomocí aktivit v následující tabulce.

Aktivity Popis
Get-AutomationVariable Načte hodnotu existující proměnné.
Set-AutomationVariable Nastaví hodnotu existující proměnné.

Poznámka:

Měli byste se vyhnout použití proměnných v parametru Name get-AutomationVariable, protože to může komplikovat zjišťování závislostí mezi runbooky a proměnnými Automation.

Vytvoření nové proměnné na portálu pro správu

  1. Vyberte pracovní prostor Automation.

  2. V horní části okna vyberte Prostředky.

  3. V dolní části okna vyberte Přidat nastavení.

  4. Vyberte Přidat proměnnou.

  5. V rozevíracím seznamu Typ vyberte datový typ.

  6. Do pole Název zadejte název proměnné.

  7. Vyberte šipku doprava.

  8. Zadejte hodnotu proměnné a určete, jestli se má zašifrovat.

  9. Výběrem značky zaškrtnutí novou proměnnou uložte.

Vytvoření nové proměnné pomocí Windows PowerShellu

Rutina Set-SmaVariable vytvoří novou proměnnou a nastaví hodnotu existující proměnné. Následující ukázkové příkazy ukazují, jak vytvořit proměnnou typu řetězec.

$web = 'https://MySMAServer'
$port = 9090

Set-SMAVariable -WebServiceEndpoint $web -Port $port -Name 'MyVariable' -Value 'My String'

Použití proměnné v runbooku

  • Následující ukázkový kód ukazuje, jak nastavit a načíst proměnnou v runbooku. V této ukázce se předpokládá, že již byly vytvořeny proměnné typu integer s názvem NumberOfIterations a NumberOfRunnings a proměnná řetězce typu s názvem SampleMessage.

    $NumberOfIterations = Get-AutomationVariable -Name 'NumberOfIterations'
    $NumberOfRunnings = Get-AutomationVariable -Name 'NumberOfRunnings'
    $SampleMessage = Get-AutomationVariable -Name 'SampleMessage'
    Write-Output "Runbook has been run $NumberOfRunnings times."
    for ($i = 1; $i -le $NumberOfIterations; $i++) {
       Write-Output "$i`: $SampleMessage"
    }
    Set-AutomationVariable -Name NumberOfRunnings -Value (NumberOfRunnings += 1)
    

Další kroky