13 oktober 2016

PowerShell: automatiseren van beheerstaken in de Cloud

Elke dag zijn er diverse taken die beheerders uitvoeren en die vaak worden herhaald. Veel van deze taken kunnen worden geautomatiseerd door middel van scripts. Sinds 2006 is er door Microsoft een nieuwe scripting taal PowerShell beschikbaar gesteld. PowerShell is niet zomaar een scripttaal; wat je met een ouderwetse batch file niet of nauwelijks voor elkaar kreeg, voer je in PowerShell soms met enkele commando’s uit en soms met slechts een enkele regel.

In deze blog ga ik in op de mogelijkheden van Microsoft PowerShell en laat ik zien hoe deze scripttaal beheerstaken in de Cloud eenvoudig kan automatiseren.

Microsoft PowerShell combineren met de Cloud

Microsoft Azure, Office 365, Exchange Online zijn natuurlijk bekende Cloud oplossingen van Microsoft. Al deze Cloud diensten worden voorzien van een prachtige Web GUI. Even wat rondklikken door alle gebruikers en instellingen aanpassen is geen probleem. Maar weet je dat je met PowerShell kunt inloggen op onder andere eerder genoemde Cloud oplossingen van Microsoft? De kracht van PowerShell kun je dan combineren met de Cloud.

Microsoft PowerShell in de praktijk

Met Microsoft PowerShell kun je scripts maken en complexe handelingen automatiseren. Hiermee kun je bijvoorbeeld het beheer van je IT-omgeving vereenvoudigen. Een tweetal voorbeelden* van relatief eenvoudig te maken scripts met PowerShell:

  • Zet in Exchange Online voor alle Mailboxen van gebruikers de Archief mailbox aan:
    Get-Mailbox -Filter {ArchiveStatus -Eq "None" -AND RecipientTypeDetails -eq "UserMailbox"} | Enable-Mailbox -Archive
  • Vraag een lijst op van alle gebruikers in Office 365/Azure AD met een licentie:
    Get-MsolUser -All | ? {$_.IsLicensed -eq $true}

Met PowerShell kunt u ook complete scripts* maken, zoals:

  • Provisioning van gebruikers (Active Directory account, home directory, group memberships, Office 365 licentie, Mailbox, default permissions, etc.).
  • Verrijken van gegevens van gebruikers in Active Directory.
  • Uit/aanzetten, monitoren van Azure Resources/Virtual Machines.
  • Distribueren van gebruikers, Photos in Active Directory, Office 365/SharePoint Online.
  • Monitoren of Agenda machtigingen goed staan en eventueel corrigeren.
  • Roaming profile / home directory migraties.

Beheersgemak

De laatste jaren heb ik steeds meer ervaring opgedaan met het ontwikkelen van PowerShell Scripts. Soms gebruik ik slechts enkele regels om een aantal zaken uit te lezen of aan te passen, zoals de oneliners hierboven in het voorbeeld. Daarnaast ontwikkel ik regelmatig complexere scripts die meerdere keren per dag kunnen draaien op een script of management server. Deze scripts voeren dan taken uit die regelmatig moeten worden herhaald. Deze scripts loggen netjes alle informatie die belangrijk is en hebben zelfs de mogelijkheid om alerts te sturen indien er zich problemen voordoen.

Het voordeel van deze scripts is dat herhalende taken telkens exact hetzelfde worden uitgevoerd. Als voorbeeld het aanmaken van gebruikers. Geen wisselende naamconventies, altijd de juiste groepen gekoppeld, home directory aangemaakt, etc. Een ander voordeel is dat medewerkers van de beheerders/servicedesk meer tijd overhouden voor andere werkzaamheden in plaats van herhalende taken uit blijven voeren.

Starten met een testomgeving

Belangrijke punten als je met PowerShell wilt gaan werken, is het vooraf goed bedenken wat je wilt maken en waarom. En waar mogelijk altijd eerst in een testomgeving beginnen. Probeer het eerst uit op een aantal gebruikers, voordat je het breed gaat inzetten. Wij kunnen je hierbij de gewenste begeleiding bieden. Ook bij het ontwikkelen van scripts kunnen we je ondersteunen.

*gebruik op eigen risico

 

 

REACTIES

Hoi Stefan, bedankt voor de uitleg ik kan dit nu gaan doorvoeren in onze cloud :). Groet Mark

Je e-mailadres wordt niet gepubliceerd

Meer inspiratie
<
>
De cloud kent nieuwe uitdagingen. Vanwege fusie of overname willen organisaties steeds vaker hun Office 365 omgevingen samenvoegen. Lees onze ervaringen en tips.Lees meer >
Security in Office 365 is vrij complex. Met Secure Score kun je zien wat jouw beveiligingsniveau is en wat je kunt doen om de beveiliging te verbeteren.Lees meer >
Met de ransomware-aanval WannaCry wordt het gevaar van ransomware meer dan duidelijk. Hoe kun je nu voorkomen dat jouw IT-omgeving wordt besmet?Lees meer >