Dela via


Automatisera Microsoft Azure Pack-åtgärder med 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.

Du kan använda SMA-runbooks (Service Management Automation) för att automatisera rutinåtgärder i din Microsoft Azure Pack för Windows Server-miljö. Det finns två olika typer av SMA-runbooks:

Typ Description
PowerShell-arbetsflöde Text runbook baserat på Windows PowerShell Workflow.
PowerShell Text runbook baserat på Windows PowerShell skript.

Runbooks för PowerShell-arbetsflöden

PowerShell-arbetsflödesrunbooks baseras på Windows PowerShell Arbetsflöde. Du kan redigera koden för runbooken direkt med redigeringsprogrammet i hanteringsportalen. Du kan också använda valfri offlinetextredigerare och importera runbooken till SMA.

Fördelar

  • Implementera all komplex logik med PowerShell-arbetsflödeskod.
  • Använd kontrollpunkter för att återuppta runbooken om det uppstår fel.
  • Använd parallell bearbetning för att utföra flera åtgärder parallellt.
  • Inkludera andra PowerShell-arbetsflödesrunbooks som underordnade runbooks för att skapa arbetsflöden på hög nivå.

Begränsningar

  • Du måste vara bekant med PowerShell-arbetsflödet.
  • Runbook måste hantera den ytterligare komplexiteten i PowerShell-arbetsflödet, till exempel deserialiserade objekt.
  • Runbook tar längre tid att starta än PowerShell-runbooks eftersom den måste kompileras innan den körs.
  • PowerShell-runbooks kan bara inkluderas som underordnade runbooks med hjälp av cmdleten Start-SMARunbook, vilket skapar ett nytt jobb.

PowerShell-runbooks

PowerShell-runbooks baseras på Windows PowerShell. Du kan redigera koden för runbooken direkt med redigeringsprogrammet i hanteringsportalen. Du kan också använda valfri offlinetextredigerare och importera runbooken till SMA.

Fördelar

  • Implementera all komplex logik med PowerShell-kod utan ytterligare komplexitet i PowerShell-arbetsflödet.
  • Runbook startar snabbare än PowerShell Workflow-runbooks eftersom den inte behöver kompileras innan den körs.

Begränsningar

  • Du måste vara bekant med PowerShell-skript.
  • Du kan inte använda parallell bearbetning för att utföra flera åtgärder parallellt.
  • Du kan inte använda kontrollpunkter för att återuppta runbooks när ett fel inträffar.
  • PowerShell Workflow-runbooks kan bara inkluderas som underordnade runbooks med hjälp av cmdleten Start-SMARunbook, vilket skapar ett nytt jobb.

Så här kör SMA runbooks

Begäranden om att starta en runbook utförs av SMA-webbtjänsten med hjälp av antingen tjänsthanteringsportalen eller cmdleten Start-SmaRunbook Windows PowerShell. Webbtjänsten skriver den här begäran till Automation-databasen där den hämtas av en av Automation Worker-servrarna.

Om RunbookWorker-egenskapen för runbooken är ifylld servar den worker-servern jobbet. Om Worker-servern inte är tillgänglig misslyckas jobbet med ett fel. Om RunbookWorker-egenskapen för runbooken inte har fyllts i väljer SMA slumpmässigt en tillgänglig Worker-server för att hantera begäran.

Worker-servern skapar ett jobb som körs på worker-servern som betjänar begäran och fjärråtkomst till alla datorer eller andra resurser som den kommer att arbeta med. Detta kräver att cmdletarna i runbooken ska kunna ha fjärråtkomst till dessa resurser. Runbooken kan också innehålla ett InlineScript-kommando för att använda PowerShell-fjärrkommunikation för att köra kommandon lokalt på en måldator. Detta begrepp visas i följande diagram:

Runbook-körningsdiagram.

Om ett jobb pausas eller avbryts kan det återupptas på en annan Worker-server. Därför bör du vara försiktig med att använda lokala resurser som inte är tillgängliga för alla Worker-servrar, till exempel en fil på en lokal dator. Du bör använda globala tillgångar som variabler så mycket som möjligt för att dela information mellan kontrollpunkter.

Behörigheter

För att runbooken ska kunna utföra de åtgärder som krävs måste den ha behörighet att komma åt de resurser som den arbetar med. Runbooks i SMA körs alltid i kontexten för tjänstkontot för Automation Runbook Service. Om det här kontot inte har de behörigheter som krävs kan du använda antingen en autentiseringsuppgifter eller en global resurs för anslutning i runbooken för att köra de kommandon som krävs med autentiseringsuppgifter med de behörigheter som krävs. Dessa autentiseringsuppgifter kan antingen användas med en cmdlet som accepterar autentiseringsuppgifter via en parameter eller med InlineScript för att köra ett kodblock med alternativa autentiseringsuppgifter.

Nästa steg