Dela via


Skapa Service Management Automation-runbooks

Viktigt

Den här versionen av Service Management Automation (SMA) har nått slutet av supporten. Vi rekommenderar att du uppgraderar till SMA 2022.

Runbooks i Service Management Automation och Microsoft Azure Automation är Windows PowerShell arbetsflöden eller PowerShell-skript. De ger förmåga att automatisera administrativa processer för hantering och distribuering av molnservrar eller andra funktioner som ett Windows PowerShell.skript kan utföra.

Det finns ingen skillnad i runbooks mellan de två systemen, och samma runbook kan köras på antingen med identiska funktioner. När termen Automation används i den här artikeln refererar den till både Service Management Automation och Microsoft Azure Automation.

Bland de ytterligare tjänster som tillhandahålls av Automation för arbete med Windows PowerShell-arbetsflöden finns:

  • Central lagring och hantering av runbooks.

  • Skalbar arkitektur för schamaläggning och körning av runbooks.

  • Globala resurser som hanteras centralt och finns tillgängliga för alla Runbooks.

  • Användargränssnitt för att redigera och testa Runbooks.

  • Uppsättningar med cmdlets för att hantera och starta Runbooks.

Skapa eller importera en runbook

Du kan lägga till en runbook i Service Management Automation genom att antingen skapa den i hanteringsportalen eller genom att importera den från en fil.

Skapa en runbook i hanteringsportalen

  1. I hanteringsportalen väljer du Nytt, App Services, Automation, Runbook, Snabbregistrering.

  2. Ange nödvändig information och välj Skapa. Runbook-namn måste börja med en bokstav och kan innehålla bokstäver, siffror, understreck och bindestreck.

  3. Om du vill redigera runbooken nu väljer du Redigera Runbook. Annars väljer du OK.

  4. Din nya runbook visas på fliken Runbooks .

Importera en runbook från en fil

  1. I hanteringsportalen väljer du Automation och sedan ett Automation-konto.

  2. Välj Importera.

  3. Välj Bläddra efter Fil och leta upp skriptfilen som ska importeras.

  4. Om du vill redigera runbooken nu väljer du Redigera Runbook. Annars väljer du OK.

  5. Din nya runbook visas på fliken Runbooks för Automation-kontot.

Importera en runbook från en skriptfil med Windows PowerShell

Du kan använda cmdleten Import-SmaRunbook för att skapa en ny runbook från en skriptfil som innehåller ett arbetsflöde.

I följande exempelkommandon visas hur du importerar en skriptfil till en befintlig runbook och sedan publicerar den.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Import-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Path $scriptPath
Publish-SMARunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Redigera en runbook

Varje runbook i Service Management Automation har två versioner: Utkast och Publicerad. Du redigerar utkastversionen av arbetsflödet och publicerar den så att den kan köras. Det går inte att redigera den publicerade versionen.

Redigera en runbook med hanteringsportalen

Hanteringsportalen innehåller en redigerare som du kan använda om du vill visa och redigera runbooks. Förutom att tillhandahålla grundläggande textredigeringsfunktioner ger redigeraren möjlighet att automatiskt infoga kod för runbooks, globala tillgångar och aktiviteter.

  1. Välj Automationi hanteringsportalen.

  2. Välj fliken Runbooks .

  3. Välj namnet på den runbook som du vill redigera.

  4. Välj fliken Författare .

  5. Välj antingen Utkast överst på skärmen eller knappen Redigera längst ned på skärmen.

  6. Utför den redigering som krävs.

  7. Välj Spara när dina redigeringar är slutförda.

  8. Välj Publicera om du vill att den senaste utkastversionen av runbooken ska publiceras.

Välj den obligatoriska fliken för steg för att infoga kod för runbooks, globala tillgångar och aktiviteter:

Följ dessa steg för att infoga kod i en runbook:

  1. Öppna runbooken i redigeraren i hanteringsportalen.

  2. Längst ned på skärmen väljer du Infoga och sedan Runbook.

  3. Välj den runbook som ska infogas från mittenkolumnen och välj högerpilen.

  4. Om runbooken har parametrar visas de för kännedom.

  5. Välj kryssknappen.

  6. Koden som ska köra den valda runbooken infogas i den aktuella runbooken.

  7. Om runbooken kräver parametrar anger du ett lämpligt värde i stället för den datatyp som omges av klammerparenteser <>.

Redigera en Automation-runbook med PowerShell

Om du vill redigera en runbook med Windows PowerShell, redigerar du arbetsflödet med hjälp av en valfri redigerare och sparar det till en .ps1-fil. Du kan använda cmdleten Get-SMARunbookDefinition för att hämta innehållet i runbooken och sedan redigera SMARunbook-cmdleten för att ersätta det befintliga utkastarbetsflödet med det ändrade.

Hämta innehållet i en runbook med hjälp av Windows PowerShell

Följande exempelkommandon visar hur du hämtar skriptet för en runbook och sparar den till en skriptfil. I det här exemplet hämtas utkastversionen. Det går också att hämta den publicerade versionen av runbooken även om den här versionen inte kan ändras.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

Så här ändrar du innehållet i en runbook med Windows PowerShell

Följande exempelkommandon visar hur du ersätter det befintliga innehållet i en runbook med innehållet i en skriptfil som innehåller ett arbetsflöde.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath

Redigera en Automation-runbook med PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) är ett program som gör att du kan köra kommandon och skriva, testa och felsöka skript. Med SMA PowerShell ISE-tillägget kan du använda det här verktyget för att skriva och testa Automation-runbooks.

  1. Öppna Windows PowerShell ISE.

  2. Om SMA ISE-tillägget inte visas på höger sida av ISE öppnar du tilläggsmenyn och aktiverar SMA ISE-tillägget.

  3. Logga in på SMA på fliken Konfiguration .

  4. Välj fliken Runbook . Du bör se en lista över SMA-runbooks.

  5. Välj den runbook som du vill redigera och välj Ladda ned. Detta laddar ned en lokal kopia av runbooken från SMA.

  6. Välj Öppna. Då skapas en ny flik med runbooken.

  7. Gör nödvändiga ändringar i runbooken.

  8. Välj Ladda upp utkast för att skicka runbooken till SMA. Detta skriver över den befintliga utkastversionen av runbooken.

  9. Välj Publicera utkast om du vill publicera den senaste utkastversionen av runbooken.

Publicera din runbook

När du har skapat din runbook måste du publicera den så att Runbook Worker kan köra den. Varje runbook i Service Management Automation har ett utkast och en publicerad version. Det är bara den Publicerade versionen som kan köras och bara Utkastet som kan redigeras. Den Publicerade versionen påverkas inte av ändringar i Utkastet. När du är redo att göra utkastversionen tillgänglig publicerar du den, som skriver över den publicerade versionen med utkastversionen.

Publicera en runbook med hjälp av hanteringsportalen

  1. Välj arbetsytan Automation .

  2. Längst upp på skärmen väljer du Runbooks.

  3. Leta reda på den Runbook du vill redigera och klicka på dess namn.

  4. Längst upp på skärmen väljer du Författare.

  5. Välj Utkast.

  6. Längst ned på skärmen väljer du Publicera.

  7. Välj Ja till verifieringsmeddelandet.

Publicera en runbook med PowerShell

Du kan använda Publish-SmaRunbook för att publicera en Runbook med Windows PowerShell. Följande exempelkommandon visar hur du publicerar en Runbook.

$webServer = 'https://MyServer'
$port = 9090
$runbookPath = 'c:\runbooks\Sample-TestRunbook.ps1'
$runbookName = 'Test-Runbook'

Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Publicera en runbook med PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) är ett program som gör att du kan köra kommandon och skriva, testa och felsöka skript. Med SMA PowerShell ISE-tillägget kan du använda det här verktyget för att skriva och testa Automation-runbooks.

  1. Öppna Windows PowerShell ISE.

  2. Om SMA ISE-tillägget inte visas på höger sida av ISE öppnar du tilläggsmenyn och aktiverar SMA ISE-tillägget.

  3. Logga in på SMA på fliken Konfiguration .

  4. Välj fliken Runbook . Du bör se en lista över SMA-runbooks.

  5. Välj runbooken och välj Publicera utkast för att publicera den senaste utkastversionen av runbooken.

Testa din runbook

Du kan testa utkastversionen av en runbook i Service Management Automation samtidigt som den publicerade versionen av runbooken lämnas oförändrad. På så sätt kan du kontrollera att runbooken fungerar korrekt innan du byter ut den publicerade versionen.

När du testar en runbook körs utkast-runbooken och alla åtgärder som den utför slutförs. Ingen jobbhistorik skapas, men strömmarna Utdata och Varning och Fel visas i fönstret Testa utdata. Meddelanden till utförliga Stream visas bara i utdatafönstret om variabeln $VerbosePreference är inställd på Fortsätt.

När du testar en runbook kör den fortfarande arbetsflödet normalt och utför alla åtgärder mot resurser i miljön. Därför bör du bara testa runbooks mot icke-produktionsresurser.

Testa en runbook i Service Management Automation

Om du vill testa en runbook öppnar du utkastversionen av runbooken i hanteringsportalen. Välj knappen Test längst ned på skärmen för att starta testet.

Du kan stoppa eller pausa runbooken medan den testas med knapparna under utdatafönstret. När du pausar runbooken slutförs den aktuella aktiviteten innan den pausas. När runbooken har pausats kan du stoppa den eller starta om den.

Testa en runbook med PowerShell ISE

PowerShell ISE-tillägget innehåller cmdletar som emulerar standardaktiviteter som Get-SMACredential och Set-SMAVariable, så att du kan testa runbooken på den lokala datorn på samma sätt som med andra skript.

Globala tillgångar och deras värden laddas ned från den automationsgrupp som ska användas för lokal testning. Du kan granska eller ändra dessa värden på fliken Tillgångar . Krypterade värden visas i orange och deras värden laddas inte ned. Om du vill använda dessa tillgångar i lokal testning måste du ange deras värde lokalt.

Om du vill testa runbooken i SMA väljer du Testa utkast i SMA. Ett nytt fönster öppnas. Välj Starta nytt jobb för att starta testet. Utdata visas i fönstret.

Runbook-exempel för Automation

Följande runbooks levereras med Service Management Automation som exempel-runbooks för att illustrera tekniker och metodtips. De är tillgängliga för användning i Automation-tillägget i Microsoft Azure Pack för Windows Server.

Runbook-namn Description
Sample-Deleting-VMCloud-Subscription Visar ett användbart scenario för att utlösa en Runbook när en användare tar bort en prenumeration på virtuella moln.
Sample-Managing-Azure Visar hur du ansluter till en Microsoft Azure-prenumeration och utför grundläggande åtgärder med hjälp av modulen Microsoft Azure PowerShell.
Sample-Managing-ConfigurationManager Visar hur Service Management Automation kan ansluta till Configuration Manager.
Sample-Managing-DataProtectionManager Visar hur du ansluter till en DPM-server (Data Protection Manager) och visar information om diskarna på DPM-servern.
Sample-Managing-MySQLServers Visar hur du hämtar en säkerhetstoken som sedan ska användas för att hämta en lista över värdservrar.
Sample-Managing-OperationsManager Visar hur Service Management Automation kan ansluta till System Center Operations Manager.
Sample-Managing-Orchestrator Visar hur du ansluter till System Center Orchestrator och startar en Orchestrator-runbook för att använda din befintliga infrastruktur.
Sample-Managing-Plans Visar hur du skapar en ny plan och lägger till SQL Server-tjänsten med en angiven kvot i den nya planen.
Sample-Managing-ServiceBusClouds Visar hur du ansluter till Service Bus-molnservern och visar information om de skapade namnområdena.
Sample-Managing-SQLServers Visar hur du skapar en ny servergrupp och lägger till en SQL-värdserver.
Sample-Managing-UserAccounts Visar hur du skapar en användare i Microsoft Azure Pack för Windows Server, som kommer att skapas i Microsoft Azure Pack, och visas i hanteringsportalen för administratörstillägget Användare. Den här användaren bör dock också integreras i autentiseringsprovidern (till exempel AuthSite) för åtkomst till hanteringsportalen för klienter, som inte ingår i det här exemplet.
Sample-Managing-VirtualMachineManager Visar hur du ansluter till en VMM-server (Virtual Machine Manager) och visar information om VMM-serverlicensen.
Sample-Managing-VMClouds Visar hur du kommer åt information om en Service Provider Foundation-serverdatabasanslutning och information om de VMM-serverobjekt som hanteras av Service Provider Foundation.
Sample-Managing-WebSiteCloud Visar hur du ansluter till en hanterarserver för webbplatsmoln och visar information om distribuerade servrar.
Sample-Modify-VMCloud-Subscription Visar ett användbart scenario för att utlösa en Runbook när en klient eller administratör avbryter eller aktiverar en prenumeration på virtuella moln.
Sample-Using-Activities Visar möjligheten för Service Management Automation att använda aktiviteter
Sample-Using-Checkpoints Visar möjligheten att använda kontrollpunkter i Service Management Automation.
Sample-Using-Connections Visar hur Service Management Automation kan använda anslutningar för att ansluta till fjärrsystem.
Sample-Using-Credentials Visar möjligheten för Service Management Automation att använda autentiseringsuppgifter och matar ut användaren som Service Management Automation-runbooken körs som. Sedan ansluter den till servern ServerName och visar den användare som anges av SampleCredential som öppnar servern.
Sample-Using-Modules Visar moduler som importeras i Runbooks och anger antalet redan importerade moduler på servern ServerName. Den modul som anges av ModulePath importeras sedan och det nya modulantalet och information om den nya importerade modulen visas.
Sample-Using-RunbookParameters Visar hur du använder indataparametrar för Runbooks och anger huruvida parametrar krävs, anger standardparametervärden och använder parametervärden senare i arbetsflödet.
Sample-Using-Runbooks Visar hur en Runbook anropas från en annan Runbook.
Sample-Using-SuspendWorkflow Visar hur en Runbook kan tvingas att pausa. Detta kan vara användbart om ett manuellt steg krävs innan en runbook ska fortsätta, till exempel att få utloggningsgodkännande från en viss person. När den manuella åtgärden har utförts måste du manuellt aktivera en pausad Runbook för att den ska fortsätta.
Sample-Using-Variables Visar hur Service Management Automation kan använda variabler.
Sample-Using-VMCloud-Automation Visar ett användbart scenario för att utlösa en Runbook när en Service Provider Foundation-händelse startar.

Nästa steg

  • Läs mer om hur du anropar en runbook från en annan runbook.
  • Läs mer om hur du arbetar med integreringsmoduler.