Inzicht in Azure Automation

Voltooid

Azure biedt verschillende manieren om processen te automatiseren. Azure Functions en Logic Apps zijn beide Azure-services die serverloze workloads mogelijk maken. Beide services maken werkstromen die een verzameling stappen zijn voor het uitvoeren van complexe taken. Een logische app kan bijvoorbeeld worden gemaakt om een tabel in een Azure SQL Database te vullen wanneer een vermelding wordt gemaakt in een SharePoint-lijst. Een volledige uitleg van deze diensten valt buiten het bereik van deze cursus.

Voor meer volledige controle en granulariteit van uw automatisering biedt Azure Automation procesautomatisering, configuratiebeheer, volledige integratie met Azure-platformopties (zoals op rollen gebaseerd toegangsbeheer en Microsoft Entra ID) en kan Azure- en on-premises resources beheren.

Een van de unieke voordelen van Azure Automation is dat het resources binnen Azure of on-premises VM's kan beheren. Als u bijvoorbeeld een VIRTUELE machine hebt die normaal gesproken in een downstatus wordt gehouden voor kostenbesparingen (behalve wanneer deze moet worden gebruikt), hebt u de mogelijkheid in Azure Automation, met behulp van een functie genaamd hybride runbooks, om een script uit te voeren om de VIRTUELE machine te starten en vervolgens een SQL Server-back-up te starten vanuit de VIRTUELE machine, en ten slotte de virtuele machine afsluiten.

Een ander veelvoorkomend scenario is het gebruik van Azure Automation voor periodieke onderhoudsbewerkingen, zoals het opschonen van verouderde of oude gegevens, of het opnieuw indexeren van een SQL-database.

Azure Automation-onderdelen

Azure Automation biedt ondersteuning voor automatiserings- en configuratiebeheeractiviteiten. We richten ons op de automatiseringsonderdelen, maar Azure Automation kan ook worden gebruikt voor het beheren van serverupdates en de gewenste statusconfiguratie. De onderdelen van Azure Automation die u moet gebruiken om geautomatiseerde taken uit te voeren, zijn als volgt:

  • Runbooks: Runbooks zijn de uitvoeringseenheid in Azure Automation. Runbooks kunnen worden gedefinieerd als een van de drie typen: een grafisch runbook op basis van PowerShell, een PowerShell-script of Python-script. PowerShell-runbooks worden meestal gebruikt voor het beheren van Azure SQL-resources.

  • Modules : Azure Automation definieert een uitvoeringscontext voor de PowerShell- of Python-code die u uitvoert in uw runbook. Als u uw code wilt uitvoeren, moet u de ondersteunende modules importeren. Als u bijvoorbeeld de Get-AzSqlDatabase PowerShell-cmdlet wilt uitvoeren, moet u de Az.SQL PowerShell-module importeren in uw Automation-account.

  • Referenties: referenties slaan gevoelige informatie op die runbooks of configuraties tijdens runtime kunnen gebruiken.

  • Schema's: planningen zijn gekoppeld aan runbooks en activeren een runbook op een bepaald tijdstip.

Azure Policy

Groepsbeleid, of groepsbeleidsobjecten, zijn al lange tijd gebruikt door Windows-serverbeheerders, om de beveiliging te beheren, consistentie te bieden in de Windows Server-omgeving in uw organisatie. Enkele voorbeelden van groepsbeleid zijn het afdwingen van wachtwoordcomplexiteit, het toewijzen van gedeelde netwerkstations en het configureren van netwerkprinters.

Azure Policy bevat initiatiefdefinities voor het vaststellen en onderhouden van naleving van verschillende beveiligingsstandaarden voor uw Automation-account. Vergelijkbare functies zijn ook beschikbaar in Azure Resource Manager. Een beleid biedt een governanceniveau voor uw Azure-abonnementen. Beleid kan regels en besturingselementen afdwingen voor uw Azure-resources. Enkele voorbeelden van hoe u dit kunt gebruiken, zijn het beperken van de regio's waarin u een resource kunt implementeren, naamgevingsstandaarden afdwingen of resourcegrootten beheren. Azure biedt veel voorbeelden van beleidsregels die u kunt gebruiken of u kunt aangepaste beleidsregels definiëren met behulp van JSON.

Beleidsregels worden toegewezen aan een specifiek bereik. Dit kan een beheergroep zijn (een groep abonnementen die samen worden beheerd), een abonnement, een resourcegroep of zelfs een afzonderlijke resource. Het meest voorkomende beleid wordt toegepast op abonnements- of resourcegroepniveau. Afzonderlijke beleidsregels kunnen worden gegroepeerd met behulp van een structuur die bekend staat als initiatieven, ook wel beleidssets genoemd. Beleidsregels hebben een toewijzingsbereik dat kan worden gedefinieerd voor de afzonderlijke resource, de resourcegroep, het abonnement of een beheergroep (een groep abonnementen die samen worden beheerd) of alle abonnementen in een bepaalde tenant.

Een ander voorbeeld van hoe u Azure Policy kunt implementeren, is het taggen van resources. Azure-tags, die hieronder worden beschreven, slaan metagegevens over Azure-resources op in sleutel-waardeparen en worden vaak gebruikt om het omgevingstype (test, QA of productie) of kostenplaats voor een bepaalde resource te markeren. Een beleid dat vereist dat alle resources een tag voor omgeving en kostenplaats hebben, zou een fout veroorzaken en de implementatie van een Azure-resource die niet over de vereiste tags beschikt, blokkeren.

Azure-abonnementen en -tags

Organisaties gebruiken meerdere abonnementen om verschillende redenen, waaronder budgetbeheer, beveiliging of isolatie van resources. Een voorbeeld hiervan is een organisatie met zowel interne als klantgerichte resources. De interne resources kunnen bestaan in één abonnement en de klantbronnen in een ander abonnement, voor een eenvoudigere scheiding van facturering en voor isolatie van de interne resources. Deze abonnementen kunnen samen worden beheerd in een beheergroep, waarmee u beleid en naleving voor abonnementen kunt beheren.

Tags zijn gewoon metagegevens die worden gebruikt om uw Azure-resources beter te beschrijven. Deze tags worden opgeslagen als key:value paren en worden weergegeven in Azure Portal die is gekoppeld aan uw Azure-resources. Omdat ze zijn gekoppeld aan de resource, kunt u, wanneer u PowerShell- of Azure CLI-opdrachten gebruikt, uw opdrachten filteren op basis van tags. In die zin kunt u deze zien als een WHERE component in een SQL-query. Hieronder ziet u een basisvoorbeeld:

$rg=(get-AzResourceGroup)

$rg=($rg|where-object {($_.tags['Use'] -ne 'Internal')}).ResourceGroupName

Op de tweede regel van dit codevoorbeeld ziet u dat de lijst met resourcegroepen wordt gefilterd op de tag 'Gebruiken' en alleen die resourcegroepen retourneert waarvoor die tag geen waarde 'Intern' heeft. Tags kunnen worden toegepast in Azure Portal of programmatisch via PowerShell, Azure CLI of als onderdeel van uw implementatieproces. Tags kunnen ook worden toegepast op abonnements-, resourcegroep- of afzonderlijk resourceniveau. Tags kunnen ook op elk gewenst moment worden gewijzigd. ondersteuning voor Azure worden maximaal 15 tags toegepast op elke Azure-resource.

Tags worden ook opgenomen in azure-factureringsgegevens, dus taggen op kostenplaats betekent dat het veel eenvoudiger kan zijn voor beheer om de Azure-kosten op te splitsen. Tags bevinden zich in de overzichtssectie van de blade voor elke Azure-resource. Als u tags wilt toevoegen aan een resource met behulp van Azure Portal, selecteert u tags en voert u de sleutel en waarde voor uw tag in. Selecteer Opslaan nadat u de tags hebt toegepast op uw resources.

Screenshot of how to add tags to an Azure SQL Database.

U kunt ook PowerShell of de CLI gebruiken om tags toe te voegen. Hieronder ziet u het PowerShell-voorbeeld:

$tags = @{"Dept"="Finance"; "Status"="Normal"}

$resource = Get-AzResource -Name demoStorage -ResourceGroup demoGroup

New-AzTag -ResourceId $resource.id -Tag $tags

Hieronder ziet u het Azure CLI-voorbeeld:

az resource tag --tags 'Dept=IT' 'Environment=Test' -g examplegroup -n examplevnet `

 --resource-type "Microsoft.Network/virtualNetworks"

Met tags kunnen klanten Azure-resources en -beheerhiërarchie indelen in een taxonomie.

Notitie

Tags worden opgeslagen als tekst zonder opmaak. Voeg nooit gevoelige waarden toe aan tags. Gevoelige waarden kunnen worden weergegeven via veel methoden, waaronder kostenrapporten, tagtaxonomie, implementatiegeschiedenissen, geëxporteerde sjablonen en bewakingslogboeken.