Delen via


Het opstellen van Service Management Automation-runbooks

Runbooks in Service Management Automation en Microsoft Azure Automation zijn Windows PowerShell-werkstromen of PowerShell-scripts. Ze bieden de mogelijkheid om beheerprocessen te automatiseren voor het beheren en implementeren van cloudservers of een andere functie die een Windows PowerShell-script kan uitvoeren.

Er is geen verschil in de runbooks tussen de twee systemen en hetzelfde runbook kan worden uitgevoerd op beide met identieke functionaliteit. Wanneer de term Automation in dit artikel wordt gebruikt, verwijst deze naar Service Management Automation en Microsoft Azure Automation.

De aanvullende services van Automation voor het werken met Windows PowerShell-werkstromen zijn onder andere:

  • Gecentraliseerde opslag en beheer van runbooks.

  • Schaalbare architectuur voor het plannen en uitvoeren van runbooks.

  • Globale resources die centraal worden beheerd en beschikbaar zijn voor alle runbooks.

  • Gebruikersinterface voor het ontwerpen en testen van runbooks.

  • Set van cmdlets voor het beheren en starten van runbooks.

Een runbook maken of importeren

U kunt een runbook toevoegen aan Service Management Automation door het te maken in de beheerportal of door het uit een bestand te importeren.

Een runbook maken in de beheerportal

  1. Selecteer in de beheerportal Nieuwe, App Services, Automation, Runbook, Snelle Aanmaak.

  2. Voer de vereiste gegevens in en selecteer Maken. De naam van het runbook moet beginnen met een letter en mag letters, cijfers, onderstrepingstekens en streepjes bevatten.

  3. Als u het runbook nu wilt bewerken, selecteert u Runbook bewerken. Selecteer anders OK.

  4. Uw nieuwe runbook verschijnt op het tabblad Runbooks.

Een runbook importeren uit een bestand

  1. Selecteer in de beheerportal Automation- en selecteer vervolgens een Automation-account.

  2. Selecteer importeren.

  3. Selecteer Bladeren naar bestand en zoek het scriptbestand dat u wilt importeren.

  4. Als u het runbook nu wilt bewerken, selecteert u Runbook bewerken. Selecteer anders OK.

  5. Uw nieuwe runbook wordt weergegeven op het tabblad Runbooks voor het automatiseringsaccount.

Een runbook importeren uit een scriptbestand met Windows PowerShell

U kunt de cmdlet Import-SmaRunbook gebruiken om een nieuw runbook te maken vanuit een scriptbestand met een werkstroom.

De volgende voorbeeldopdrachten laten zien hoe u een scriptbestand importeert in een bestaand runbook en het vervolgens publiceert.

$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

Een runbook bewerken

Elk runbook in Service Management Automation heeft twee versies: Conceptversie en Gepubliceerdversie. U bewerkt de conceptversie van de werkstroom en publiceert deze zodat deze kan worden uitgevoerd. De gepubliceerde versie kan niet worden bewerkt.

Een runbook bewerken met de beheerportal

De beheerportal bevat een editor die u kunt gebruiken om runbooks weer te geven en te bewerken. Naast het bieden van eenvoudige tekstbewerkingsmogelijkheden biedt de editor de mogelijkheid om automatisch code in te voegen voor runbooks, globale assets en activiteiten.

  1. Selecteer in het beheerdersportaal Automation.

  2. Selecteer het tabblad Runbooks.

  3. Selecteer de naam van het runbook dat u wilt bewerken.

  4. Selecteer het tabblad Auteur.

  5. Selecteer Concept boven aan het scherm of de knop Bewerken onder aan het scherm.

  6. Voer de vereiste bewerking uit.

  7. Selecteer Opslaan wanneer de bewerkingen zijn voltooid.

  8. Selecteer Publiceren als u wilt dat de meest recente conceptversie van het runbook wordt gepubliceerd.

Selecteer het benodigde tabblad voor de stappen om code in te voegen voor runbooks, globale assets en activiteiten.

Volg deze stappen om code in te voegen in een runbook:

  1. Open het runbook in de beheerportal-editor.

  2. Selecteer onderaan het scherm Invoegen en selecteer vervolgens Runbook.

  3. Selecteer het runbook dat u wilt invoegen vanuit de middelste kolom en klik op de rechterpijl.

  4. Als het runbook parameters bevat, worden deze weergegeven voor uw informatie.

  5. Selecteer de knop Controleren.

  6. De code voor het uitvoeren van het geselecteerde runbook wordt ingevoegd in het huidige runbook.

  7. Als het runbook parameters vereist, voert u een geschikte waarde in ter vervanging van het datatype, omgeven door accolades <>.

Een Automation-runbook bewerken met PowerShell

Als u een runbook wilt bewerken met Windows PowerShell, bewerkt u de werkstroom met behulp van de editor van uw keuze en slaat u het op in een .ps1 bestand. U kunt de cmdlet Get-SMARunbookDefinition gebruiken om de inhoud van het runbook op te halen en vervolgens cmdlet Edit-SMARunbook om de bestaande conceptwerkstroom te vervangen door de gewijzigde werkstroom.

De inhoud van een runbook ophalen met Windows PowerShell

De volgende voorbeeldopdrachten laten zien hoe u het script voor een runbook ophaalt en opslaat in een scriptbestand. In dit voorbeeld wordt de conceptversie opgehaald. Het is ook mogelijk om de gepubliceerde versie van het runbook op te halen, hoewel deze versie niet kan worden gewijzigd.

$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

De inhoud van een runbook wijzigen met Windows PowerShell

De volgende voorbeeldopdrachten laten zien hoe u de bestaande inhoud van een runbook vervangt door de inhoud van een scriptbestand dat een werkstroom bevat.

$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

Een Automation-runbook bewerken met PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) is een toepassing waarmee u opdrachten kunt uitvoeren en scripts kunt schrijven, testen en fouten kunt opsporen. Met de SMA PowerShell ISE-invoegtoepassing kunt u dit hulpprogramma gebruiken om Automation-runbooks te schrijven en te testen.

  1. Open het Windows PowerShell ISE.

  2. Als de SMA ISE-invoegtoepassing niet wordt weergegeven aan de rechterkant van de ISE, opent u het menu Invoegtoepassingen en schakelt u SMA ISE-invoegtoepassing in.

  3. Meld u aan bij SMA via tabblad Configuratie.

  4. Selecteer het tabblad Runbook. U ziet nu een lijst met SMA-runbooks.

  5. Selecteer het runbook dat u wilt bewerken en selecteer Download. Hiermee downloadt u een lokale kopie van het runbook van SMA.

  6. Selecteer openen. Hiermee maakt u een nieuw tabblad met het runbook.

  7. Breng de benodigde wijzigingen aan in het runbook.

  8. Selecteer Conceptversie uploaden om het runbook naar SMA te verzenden. Hiermee wordt de bestaande conceptversie van het runbook overschreven.

  9. Selecteer Publiceer concept als u de nieuwste conceptversie van het runbook wilt publiceren.

Uw runbook publiceren

Nadat u het runbook hebt gemaakt, moet u het publiceren, zodat de runbook worker het kan uitvoeren. Elk runbook-script in Service Management Automation heeft een conceptversie en een gepubliceerde versie. Alleen de gepubliceerde versie is beschikbaar om te worden uitgevoerd en alleen de conceptversie kan worden bewerkt. De gepubliceerde versie wordt niet beïnvloed door wijzigingen in de conceptversie. Wanneer u klaar bent om de conceptversie beschikbaar te maken, publiceert u deze, waardoor de gepubliceerde versie wordt overschreven met de conceptversie.

Een runbook publiceren met behulp van de beheerportal

  1. Selecteer de werkruimte Automation.

  2. Klik bovenaan het scherm op Runbooks.

  3. Zoek het runbook dat u wilt bewerken en klik op de naam.

  4. Selecteer bovenaan het scherm Auteur.

  5. Selecteer Concept-.

  6. Selecteer onderaan het scherm Publiceren.

  7. Selecteer Ja bij het verificatiebericht.

Een runbook publiceren met behulp van PowerShell

U kunt de Publish-SmaRunbook gebruiken om een runbook te publiceren met Windows PowerShell. De volgende voorbeeldopdrachten laten zien hoe u een runbook publiceert.

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

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

Een runbook publiceren met PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) is een toepassing waarmee u opdrachten kunt uitvoeren en scripts kunt schrijven, testen en fouten kunt opsporen. Met de SMA PowerShell ISE-invoegtoepassing kunt u dit hulpprogramma gebruiken om Automation-runbooks te schrijven en te testen.

  1. Open Windows PowerShell ISE.

  2. Als de SMA ISE-invoegtoepassing niet wordt weergegeven aan de rechterkant van de ISE, opent u het menu Invoegtoepassingen en schakelt u SMA ISE-invoegtoepassing in.

  3. Meld u aan bij SMA op het tabblad Configuratie.

  4. Selecteer het tabblad Runbook. U ziet nu een lijst met SMA-runbooks.

  5. Selecteer het runbook en kies Concept publiceren om de nieuwste conceptversie van het runbook te publiceren.

Uw runbook testen

U kunt de conceptversie van een runbook testen in Service Management Automation terwijl de gepubliceerde versie van het runbook ongewijzigd blijft. Hiermee kunt u controleren of het runbook correct werkt voordat u de gepubliceerde versie vervangt.

Wanneer u een runbook test, wordt het conceptrunbook uitgevoerd en worden alle uitgevoerde acties voltooid. Er wordt geen taakgeschiedenis gemaakt, maar de uitvoer en de waarschuwings- en foutstreams worden weergegeven in het gedeelte Testuitvoer. Berichten naar de Verbose Stream worden alleen weergegeven in het uitvoervenster als de $VerbosePreference-variabele is ingesteld op Doorgaan.

Wanneer u een runbook test, wordt de werkstroom nog steeds normaal uitgevoerd en worden acties uitgevoerd op resources in de omgeving. Daarom moet u alleen runbooks testen op bronnen die niet voor productie zijn.

Een runbook testen in Service Management Automation

Als u een runbook wilt testen, u de conceptversie van het runbook opent in de beheerportal-. Selecteer de knop Test onder aan het scherm om de test te starten.

U kunt het runbook stoppen of pauzeren terwijl het wordt getest met de knoppen onder het uitvoerscherm. Wanneer u het runbook pauzeert, wordt de huidige activiteit voltooid voordat het wordt geschorst. Zodra het runbook is onderbroken, kunt u het stoppen of opnieuw opstarten.

Een runbook testen met PowerShell ISE

De PowerShell ISE-invoegtoepassing biedt cmdlets die de standaardactiviteiten, zoals Get-SMACredential en Set-SMAVariable, emuleren, zodat u het runbook op de lokale computer kunt testen, net zoals elk ander script.

Globale assets en hun waarden worden gedownload uit de automatiseringsgroep voor gebruik bij lokale tests. U kunt deze waarden controleren of wijzigen op het tabblad Assets. Versleutelde waarden worden oranje weergegeven en hun waarden worden niet gedownload. Als u deze assets in lokale tests wilt gebruiken, moet u de waarde lokaal instellen.

Als u het runbook in SMA wilt testen, selecteert u Testconcept in SMA. Er wordt een nieuw venster geopend. Selecteer Nieuwe taak starten om de test te starten. De uitvoer wordt weergegeven in het venster.

Voorbeelden van automation-runbooks

De volgende runbooks worden geleverd met Service Management Automation als voorbeeldrunbooks om technieken en aanbevolen procedures te illustreren. Ze zijn beschikbaar voor gebruik in de Automation-extensie in Microsoft Azure Pack voor Windows Server.

Runbooknaam Beschrijving
Voorbeeld verwijderen-VMCloud-Subscription Demonstreert een nuttig scenario voor het activeren van een runbook wanneer een gebruiker een VM Clouds-abonnement verwijdert.
Voorbeeld-Managing-Azure Laat zien hoe u verbinding maakt met een Microsoft Azure-abonnement en basisbewerkingen uitvoert met behulp van de Microsoft Azure PowerShell-module.
Voorbeeld-Managing-ConfigurationManager Demonstreert de mogelijkheid van Service Management Automation om verbinding te maken met Configuration Manager.
Voorbeeld-Managing-DataProtectionManager Demonstreert hoe u verbinding maakt met een DPM-server (Data Protection Manager) en informatie weergeeft over de schijven die op de DPM-server zijn gevonden.
Voorbeeld-Managing-MySQLServers Demonstreert hoe u een beveiligingstoken ophaalt dat wordt gebruikt om vervolgens een lijst met hostservers op te halen.
Voorbeeld-Managing-OperationsManager Demonstreert de mogelijkheid van Service Management Automation om verbinding te maken met System Center Operations Manager.
Voorbeeld-Managing-Orchestrator Laat zien hoe u verbinding maakt met System Center Orchestrator en een Orchestrator-runbook start om uw bestaande infrastructuur te gebruiken.
Voorbeeld-Managing-Plans Demonstreert hoe u een nieuw plan maakt en de SQL Server-service met een gedefinieerd quotum toevoegt aan het nieuwe plan.
Voorbeeld-Managing-ServiceBusClouds Demonstreert hoe u verbinding maakt met een Service Bus Cloud-server en informatie over de gemaakte naamruimten weergeeft.
Voorbeeld-Managing-SQLServers Demonstreert hoe u een nieuwe servergroep maakt en een SQL-hostingserver toevoegt.
VoorbeeldManaging-UserAccounts Demonstreert hoe u een gebruiker maakt in Microsoft Azure Pack voor Windows Server, die wordt gemaakt in Microsoft Azure Pack en wordt weergegeven in de beheerportal voor beheerdersgebruikersextensie. Deze gebruiker moet echter ook worden geïntegreerd in de verificatieprovider (bijvoorbeeld AuthSite) voor toegang tot de beheerportal voor tenants, die niet in dit voorbeeld is opgenomen.
Voorbeeld-Managing-VirtualMachineManager Demonstreert hoe u verbinding maakt met een VMM-server (Virtual Machine Manager) en informatie over de VMM-serverlicentie weergeeft.
Voorbeeld-Managing-VMClouds Demonstreert hoe u toegang hebt tot informatie over de databaseverbinding van een Service Provider Foundation-server en informatie over de VMM-serverobjecten die worden beheerd door Service Provider Foundation.
Voorbeeld-Managing-WebSiteCloud Demonstreert hoe u verbinding maakt met een controller-server van een websitecloud en informatie weergeeft over de geïmplementeerde servers van de websiteclouds.
Voorbeeld wijzigen -VMCloud-Subscription Demonstreert een nuttig scenario voor het activeren van een runbook wanneer een tenant of beheerder een VM Clouds-abonnement onderbreekt of activeert.
Voorbeeld-Using-Activities Demonstreert de mogelijkheid van Service Management Automation voor het gebruik van activiteiten
Voorbeeld-Using-Checkpoints Demonstreert de mogelijkheid om controlepunten te gebruiken in Service Management Automation.
Voorbeeld-Using-Connections Demonstreert de mogelijkheid van Service Management Automation om verbindingen te gebruiken om verbinding te maken met externe systemen.
Voorbeeld-Using-Credentials Toont aan wat de mogelijkheden zijn van Service Management Automation om referenties te gebruiken en toont de gebruiker aan onder wiens naam het Service Management Automation-runbook wordt uitgevoerd. Vervolgens wordt verbinding gemaakt met de server 'ServerName' en wordt de gebruiker die toegang heeft tot de server geïdentificeerd met 'SampleCredential'.
Voorbeeld-Using-Modules Demonstreert het importeren van modules in runbooks en voert het aantal al geïmporteerde modules uit op de server 'ServerName'. Vervolgens wordt de module geïmporteerd die is opgegeven door ModulePath en wordt het aantal nieuwe modules en de informatie uitgevoerd die overeenkomt met de zojuist geïmporteerde module.
Voorbeeld-Using-RunbookParameters Demonstreert hoe u invoerparameters voor runbooks gebruikt en ook opgeeft of parameters vereist zijn, standaardparameterwaarden opgeeft en parameterwaarden later in de werkstroom gebruikt.
Voorbeeld-Using-Runbooks Laat zien hoe u een runbook kunt aanroepen vanuit een ander runbook.
Voorbeeld-Using-SuspendWorkflow Demonstreert hoe u een runbook dwingt tot onderbreking. Dit kan handig zijn als een handmatige stap is vereist voordat een runbook moet doorgaan, zoals het ontvangen van goedkeuring voor afmelden van een specifieke persoon. Zodra de handmatige stap is voltooid, wordt het onderbroken runbook handmatig hervat om door te gaan met het runbook.
Voorbeeld-Using-Variables Demonstreert de mogelijkheid van Service Management Automation voor het gebruik van variabelen.
Voorbeeld gebruiken-VMCloud-Automation Demonstreert een nuttig scenario voor het activeren van een runbook aan het begin van een Service Provider Foundation-gebeurtenis.

Volgende stappen