7.1 Komme i gang med Azure PowerShell
Azure PowerShell er en samling av moduler som blir brukt for å administrere Azure med Windows PowerShell. Cmdlets-ene kan brukes til de samme oppgavene som man også kan utføre i Azure-portalen, som f.eks. oppretting av skytjenester, virtuelle maskiner, virtuelle nettverk og webapps. I enkelte tilfeller vil Azure PowerShell også tilby funskjonalitet som man ikke finner igjen i portalen, noe det vil det finnes flere eksempler på i denne guiden.
7.1.1 Nedlastning av Azure PowerShell-modulen (AzureRM)
For å administrere Azure med PowerShell, må man laste ned AzureRM-modulen. Det finnes flere måter å gjøre dette på. Det kan både skje fra PowerShell Gallery, ved bruk av Web Platform Installer (WebPI) eller fra den siste versjonen av MSI-filen som alltid tilgjengelig fra GitHub. Her tar jeg for meg den førstnevnte, da dette regnes som den foretrukne metoden.
Dersom du allerede har modulen installert, gå til 7.1.3 Oppdatere modul-versjon lenger nede på siden for å forsikre deg om at modulen du har installert er oppdatert. Oppdateringer kommer nemlig forholdsvis ofte til Azure PowerShell-modulen.
PowerShell Gallery
En svært hendig måte å laste ned alle typer PowerShell-innhold, ikke bare forbeholdt til Microsoft Azure, er å benytte seg av PowerShell Gallery. Dette er et sentralt repository for PowerShell-innhold som du har direkte tilgang til fra PowerShell dersom du har PowerShellGet-modulen installert på din maskin. PowerShellGet-modulen inneholder cmdlets for å oppdage, installere, oppdatere og publisere Powershell-innhold slik som f.eks. PowerShell-moduler.
1. Last ned og installer PowerShellGet-modulen
PowerShellGet-modulen er standard i Windows 10, men for de av oss for foreløpig fortsatt sitter på en Windows 7-maskin, så er modulen inkludert i Windows Management Framework (WMF) 5.0 som vil installere PowerShell 5 på maskinen din. WMF 5.0 kan du kan laste ned herfra.
Åpne filen og følg installasjonsrutinen. Dette vil kreve en restart av maskinen din.
2. Installere AzureRM-modulen fra PowerShell Gallery
Når du først har PowerShellGet-modulen på maskinen din, så er det en svært enkel sak å installere AzureRM-modulen direkte fra PowerShell. Dette krever eleverte rettigheter. Åpne PowerShell som administrator, og skriv inn:
Install-Module -Name AzureRM
PowerShell vil da selv laste ned nyeste versjon av modulen.
Merk: Det er greit å være klar over at bruk av PowerShellGet krever en ExecutionPolicy som tillater deg å kjøre skript. Ved feilmelding etter kjøring av kommandoen overfor, sørg for å bytte ExecutionPolicy til noe mindre restriktivt midlertidig mens du utfører installasjonen av modulen.
Merk: Dersom du har en eldre versjon enn 2.8.5.201 av NuGet, vil du også bli promptet først for å installere siste versjon av dette som en forutsetning.
7.1.2 Koble seg mot ditt Azure-abonnement
Etter at du har fått installert AzureRM-modulen på maskinen din, må modulen lastes inn i i PowerShell-sesjonen du kjører. Bruk Import-Module-kommandoen for å gjøre dette:
Import-Module AzureRM
Deretter, kjør kommandoen Login-AzureRmAccount i PowerShell for å logge inn på ditt Azure-abonnement:
Login-AzureRmAccount
Du får deretter åpnet et browser-vindu som ber deg om å fylle inn påloggingsinformasjon til din Azure subscription.
Alternativt kan du også logge på ikke-interaktivt gjennom å oppgi påloggingsinfo på forhånd. Merk: Dette vil kun fungere for en arbeids- eller skolekonto - ikke ved bruk av en personlig Microsoft-konto.
$cred = Get-Credential
Login-AzureRmAccount -Credential $cred
Dersom du får abonnements-informasjon i retur, så har du lykkes i å logge på mot ditt Azure-abonnement.
Du er nå klar til å begynne å kjøre ønskede kommandoer i PowerShell mot Azure! Se f.eks. Kapittel 2.1.3 Create VMs for å opprette en VM ved hjelp av Azure PowerShell.
7.1.3 Oppdatere modul-versjon
Dersom du tidligere har installert Azure PowerShell for en tid tilbake siden, så kan det være lurt å sjekke hvilken versjon du har. Dersom versjonen ikke er oppdatert, anbefales det å oppdatere til siste versjon. Versjonen av Azure Resource-modulen kan sjekkes gjennom kommandoen:
Get-Module AzureRM -list | Select-Object Name,Version,Path
For å oppdatere til nyeste versjon, kjør kommandoen:
Update-Module -Name AzureRM
7.1.3.1 Installere flere versjoner side om side
PowerShellGet er den eneste installsjonsmetoden som støtter installasjon av flere versjoner av gangen. Dette kan f.eks. være hendig dersom du har gamle skript som er opprettet i en gammel versjon av Azure PowerShell. Angi i så fall parameteren RequiredVersion i det du kjører installasjonskommandoen:
Install-Module -Name AzureRM -RequiredVersion 3.8.0
Install-Module -Name AzureRM -RequiredVersion 1.2.9
Tilsvarende vil man da også måtte angi -RequiredVersion i det man importerer modulen i PowerShell-sesjonen sin.
Merk: Det er nyttig å vite at dersom har eldre versjoner enn versjon 2.1.0 eller 1.2.6, så er disse ikke designet til å kunne installeres side om side. Personlig fikk jeg problemer med innlogging til mitt abonnement da jeg prøvde å laste inn en eldre versjon på samme måte som ovenfor.