Hantera runbooks för Service Management Automation

Viktigt

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

Som SMA-administratör (Service Management Automation) måste du konfigurera och köra runbooks. Aktiviteter som att konfigurera runbook-arbetare och schemalägga och spåra runbooks. Det finns två system runbooks som ingår i SMA, förutom runbooks som du skapar:

  • DiscoverAllLocalModules: Körs omedelbart efter att du har installerat en runbook worker. Den här runbooken identifierar alla inbyggda moduler i det Windows Server-system där Runbook Worker är installerat. Den extraherar aktiviteter och aktivitetsmetadata för dessa moduler så att deras aktiviteter kan användas när du skapar runbooks i Windows Azure Pack.
  • SetAutomationModuleActivityMetadata: Körs direkt efter att du har importerat en modul till SMA. Den här runbooken extraherar aktiviteter och aktivitetsmetadata från en nyligen importerad modul, så att dess aktiviteter kan användas när du skapar runbooks i Windows Azure Pack.

Konfigurera runbook-arbetare

När du startar ett runbook-jobb i SMA väljs det som standard av en slumpmässig runbook worker. Men du kanske vill använda en specifik runbook worker. Det gör du med egenskapen RunbookWorker . Läs mer om runbook-körning.

Utse en runbook worker med PowerShell ISE-tillägget.

  1. Logga in med ditt SMA-konto i SMA ISE-tilläggskonfigurationen>. Efter inloggningen kan du se dina runbooks på fliken Runbooks .
  2. På fliken Runbooks väljer du en eller flera runbooks som ska köras mot en viss runbook worker.
  3. Klicka på Konfigurera och i Konfigurera Runbook-egenskaper väljer du en runbook worker på den nedrullningsbara menyn.
  4. Klicka på Gör ändringar.

Utse en Runbook Worker via SMA PowerShell-modulen

Du kan också ange runbook worker-egenskapen med följande kommandoradskommando:

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"
$workerName = "Worker1"

Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -RunbookWorker $workerName

Du kan se en lista över alla runbook-arbetare som har distribuerats på följande sätt:

$webServer = 'https://MyServer'
$port = 9090

Get-SmaRunbookWorkerDeployment -WebServiceEndpoint $webServer -Port $port

Anteckning

Du kan för närvarande inte använda Windows Azure Pack-portalen för att utse en Runbook Worker. Använd antingen SMA ISE-tillägget eller PowerShell-cmdletar.

Schemalägga runbooks

Om du vill schemalägga att en runbook ska starta vid en angiven tidpunkt länkar du den till ett eller flera scheman. Ett schema kan konfigureras för att köras en gång eller ställas in på rekurs. En runbook kan länkas till flera scheman och ett schema kan vara kopplat till flera runbooks.

Skapa ett schema

Du kan skapa ett schema med hanteringsportalen eller med Windows PowerShell.

Skapa ett schema i hanteringsportalen

  1. Välj Automationi hanteringsportalen.
  2. På fliken Tillgångar klickar du på Lägg till inställningLägg> till schema.
  3. Ange ett namn och en beskrivning för det nya schemat och välj om det ska köras en gång eller dagligen.
  4. Ange en starttid och de andra alternativen efter behov. Tidszonen för starttiden kommer att matcha tidszonen för den lokala datorn.

Skapa ett schema med Windows PowerShell

Du kan använda cmdleten Set-SmaSchedule för att skapa ett schema eller för att ändra ett befintligt schema. Du måste ange starttiden för schemat och om det ska köras en eller flera gånger.

I följande exempel skapas ett nytt schema med namnet Mitt dagliga schema. Den börjar den aktuella dagen och fortsätter i ett år varje dag vid middagstid.

$webServer = 'https://MyServer'
$port = 9090
$scheduleName = 'My Daily Schedule'
$startTime = (Get-Date).Date.AddHours(12)
$expiryTime = $startTime.AddYears(1)

Set-SmaSchedule -WebServiceEndpoint $webServer -Port $port -Name $scheduleName -ScheduleType OneTimeSchedule -StartTime $startTime -ExpiryTime $expiryTime -DayInterval 1

En runbook kan länkas till flera scheman och ett schema kan vara kopplat till flera runbooks. Om en runbook har parametrar kan du ange värden för dem som ska användas när runbooken startar. Du måste ange värden för alla obligatoriska parametrar.

  1. I hanteringsportalen väljer du AutomationRunbooks>.
  2. Klicka på namnet på runbooken som ska schemaläggas och klicka på fliken Schema .
  3. Om runbooken för närvarande är länkad till ett schema klickar du på Länk. Klicka sedan på Länka till ett nytt schema och skapa ett nytt, eller klicka på Länka till ett befintligt schema och välj ett schema.
  4. Om runbooken har parametrar uppmanas du att ange deras värden.

Du kan använda Start-SmaRunbook med parametern ScheduleName (Schemanamn) för att länka ett schema till en runbook. Du kan ange värden med parametern Parametrar . Läs mer om parametervärden.

Följande exempelkommandon visar hur du länkar ett schema till en runbook.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scheduleName = "Sample-DailySchedule"

Start-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -ScheduleName $scheduleName -Parameters $params

Spåra runbooks

När du startar en runbook i SMA skapas ett jobb. Ett jobb innebär ett utförande av en runbookinstans. En enda runbook kan ha flera jobb, var och en med sin egen uppsättning värden för runbook-parametrarna.

  • Om RunbookWorker-egenskapen för runbooken är ifylld kommer arbetsservern att betjäna jobbet.
  • Om arbetsservern inte är tillgänglig misslyckas jobbet med ett fel.
  • Om egenskapen RunbookWorker inte har fyllts i väljer SMA slumpmässigt en tillgänglig arbetsserver för att hantera begäran.

Följande diagram visar livscykeln för ett runbook-jobb för PowerShell Workflow-runbooks.

PowerShell workflow

Följande diagram visar livscykeln för ett Runbook-jobb för PowerShell-skriptkörningsböcker.

PowerShell script

Jobbstatus

Följande tabell beskriver de olika statuslägen som är möjliga för ett jobb.

Status Beskrivning
Slutförd Jobbet har slutförts.
Misslyckad Jobbet avslutades med ett undantag.
I kö Jobbet väntar på att resurser från en Automation arbetare blir tillgängliga så det kan starta.
Startar Jobbet har tilldelats en arbetare och systemet håller på att starta det.
Återupptar Systemet håller på att återuppta jobbet efter att det avbröts.
Körs Jobbet körs
Stoppad Jobbet stoppades av användaren innan det slutfördes.
Stoppas Systemet håller på att stoppa arbetet.
Inaktiverad Jobbet pausades av användaren, av systemet, eller av ett kommando i runbook. Ett jobb som är inaktiverat kan startas igen. Den återupptas från den sista kontrollpunkten eller från början av runbooken om den inte har några kontrollpunkter.

Runbooken pausas endast av systemet, om det finns ett undantag som kan återupptas. Som standard är ErrorActionPreference inställt på Fortsätt, vilket innebär att jobbet fortsätter att köras när ett undantag inträffar. Om den här variabeln är inställd på Stoppa inaktiveras jobbet när ett undantag inträffar.
Pausar Systemet försöker pausa jobbet på begäran av användaren. Runbooken måste nå nästa kontrollpunkt innan den kan pausas. Om den redan har passerat sin sista kontrollpunkt slutförs den innan den kan pausas.

Visa jobbstatus i hanteringsportalen

Automation-instrumentpanelen visar en sammanfattning av alla runbooks i SMA-miljön.

  • Översiktsdiagrammet visar det totala antalet jobb för alla runbooks som gått in i varje status för ett givet antal dagar eller timmar.
  • Du kan ange tidsintervall i det övre högra hörnet i diagrammet.
  • Tidsaxeln för diagrammet ändras beroende på vilken typ av tidsintervall du väljer.
  • Du kan välja om du vill visa en rad för en viss status genom att klicka på den överst på skärmen.

Visa instrumentpanelen på följande sätt:

  1. Välj Automationi hanteringsportalen.
  2. Välj fliken Instrumentpanel.

Visa instrumentpanelen

Runbook-instrumentpanelen visar sammanställningen för en specifik runbook. Översiktsdiagrammet visar det totala antalet jobb för alla runbooks som gått in i varje status för ett givet antal dagar eller timmar. Du kan ange tidsintervall i det övre högra hörnet i diagrammet. Tidsaxeln för diagrammet ändras beroende på vilken typ av tidsintervall du väljer. Du kan välja om du vill visa en rad för en viss status genom att klicka på den överst på skärmen.

Visa instrumentpanelen på följande sätt:

  1. Välj Automationi hanteringsportalen.
  2. Klicka på namnet på en runbook.
  3. Välj fliken Instrumentpanel.

Visa jobbinformation

Du kan visa en lista över alla jobb som har skapats för en viss runbook och deras senaste status.

  • Du kan filtrera listan efter jobbstatus och datumintervallet för den senaste ändringen av jobbet.
  • Klicka på jobbnamnet för att visa detaljer och vad dess effekt är.
  • Jobbets detaljvy inkluderar värden för runbookparametrar som gavs av det jobbet.
  • Jobbhistoriken innehåller effekt, varnings- och felmeddelanden med tidsstämplar när det skapades.
  • Läs mer om runbook-utdata och meddelanden.
  • Källan till ett jobb är källkoden för arbetsflödet när arbetet kördes. Detta kanske inte är samma som den aktuella versionen av runbooken, om den uppdaterades efter att jobbet kördes.

Du kan använda följande steg för att se jobb för en runbook.

  1. Välj Automationi hanteringsportalen.
  2. Klicka på namnet på en runbook och välj fliken Jobb .
  3. Klicka på kolumnen Jobb som skapats för ett jobb för att visa dess information och utdata.
  4. Välj Historik fliken för att visa jobbets historik. Välj en historikpost och klicka på Visa Detaljer nederst på skärmen för en detaljerad vy av posten.
  5. Klicka på Visa källa på fliken Historik.

Hämta jobbstatus med Windows PowerShell

Du kan använda Get-SmaJob för att hämta jobben som skapats för en runbook och information om ett visst jobb.

  • Om du startar en runbook med Windows PowerShell med Start-SmaRunbook returneras det resulterande jobbet.
  • Använd Get-SmaJobOutput för att hämta ett jobbs utdata.

Följande exempelkommandon hämtar det sista jobbet för en exempel-runbook och visar dess status, de värden som anges för runbook-parametrarna och utdata från jobbet.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"

$job = (Get-SmaJob -WebServiceEndpoint $webServer -Port $port -RunbookName $runbookName | sort LastModifiedDate -desc)[0]
$job.Status
$job.JobParameters
Get-SmaJobOutput -WebServiceEndpoint $webServer -Port $port -Id $job.Id -Stream Output

Konfigurera runbook-inställningar

Varje runbook i har flera inställningar. Du kan använda de här inställningarna för att hitta och hantera runbooks. Du kan också ändra runbook-loggning genom att konfigurera de här inställningarna. Var och en av dessa inställningar beskrivs nedan, följt av procedurer för hur du ändrar dem.

Namn och beskrivning

Det går inte att ändra runbook-namnet när den har skapats. Beskrivning är tillval och kan vara upp till 512 tecken.

Taggar

Med etiketter kan du tilldela distinkta ord och fraser för att identifiera en runbook. Du kan ange flera etiketter för en runbook genom att avgränsa dem med kommatecken.

Loggning

Som standard skrivs utförliga poster och förloppsposter inte till jobbhistoriken. Du kan ändra inställningarna för en speciell runbook för att logga dessa poster. Mer information om dessa poster finns i Runbook Output and Messages.

Utsedd runbook worker

Som standard tilldelas ett runbook-jobb till en slumpmässig runbook-arbetare som ska köras. Du kan ändra inställningarna för en viss runbook för att köra runbooken på en viss runbook worker.

Ändra runbook-inställningar i hanteringsportalen

Du kan ändra inställningarna för en runbook i hanteringsportalen från sidan Konfigurera för runbook.

  1. Välj Automationi hanteringsportalen.

  2. Välj fliken Runbooks .

  3. Klicka på namnet på en runbook.

  4. Välj fliken Konfigurera.

Ändra runbook-inställningar med PowerShell

Du kan använda cmdleten Set-SmaRunbookConfiguration för att ändra alla inställningar för en runbook förutom taggar. Du kan bara ändra och lägga till etiketter för befintliga runbooks med hanteringsportalen. Du kan bara ange taggar för runbooks med PowerShell när du importerar en runbook med Import-SmaRunbook.

Följande exempelkommandon visar hur du ställer in egenskaper för en Runbook. Det här exemplet lägger till en beskrivning och anger att utförliga poster ska loggas:

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"

Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Description "Sample runbook" -LogVerbose $true

Kryptera Runbook Worker- och SQL-serveranslutning

Skydda anslutningen mellan Runbook Worker-processerna och SQL-servern med hjälp av SSL.

Nästa steg