Skapa virtuella datorer med Azure PowerShell
I den här självstudien får du lära dig allt du behöver veta för att konfigurera en virtuell dator med Azure PowerShell. Självstudien omfattar även ämnen som rör utdatafrågor, återanvändning av Azure-resurser och rensning av resurser.
Den här självstudien kan utföras med de interaktiva funktionerna som erbjuds genom Azure Cloud Shell. Du kan även installera Azure PowerShell lokalt.
Använd ctrl + skift + v (cmd + skift + v på macOS) för att klistra in självstudietexten i Azure Cloud Shell.
Logga in
Om du använder en lokal installation av Azure PowerShell måste du logga in innan du utför ytterligare steg.
Connect-AzAccount
Slutför inloggningsprocessen genom att följa stegen som visas i terminalen.
Skapa en resursgrupp
I Azure allokeras alla resurser i en resurshanteringsgrupp. Med resursgrupperna får du logiska grupperingar av resurserna som gör det lättare att arbeta med dem som en samling.
I den här självstudiekursen finns alla skapade resurser i en grupp med namnet TutorialResources
.
New-AzResourceGroup -Name TutorialResources -Location eastus
ResourceGroupName : TutorialResources
Location : eastus
ProvisioningState : Succeeded
Tags :
ResourceId : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/TutorialResources
Skapa autentiseringsuppgifter för administratören för den virtuella datorn
Innan du kan skapa en ny virtuell dator måste du skapa ett autentiseringsuppgiftsobjekt som innehåller användarnamn och lösenord för administratörskontot för den virtuella Windows-datorn.
$cred = Get-Credential -Message "Enter a username and password for the virtual machine."
Ange användarnamn och lösenord när du uppmanas att göra det. Autentiseringsuppgiftsobjektet som skapas skickas som en parameter i nästa steg.
Windows PowerShell credential request.
Enter a username and password for the virtual machine.
User: tutorAdmin
Password for user tutorAdmin: *********
Skapa en virtuell dator
Virtuella datorer i Azure har ett stort antal beroenden. Azure PowerShell skapar de här resurserna utifrån de kommandoradsargument som du anger. För att göra det enklare att läsa använder vi PowerShell-ihopbuntning för att överföra parametrar till Azure PowerShell-cmdletar.
Skapa en ny virtuell dator som kör Windows.
$vmParams = @{
ResourceGroupName = 'TutorialResources'
Name = 'TutorialVM1'
Location = 'eastus'
ImageName = 'Win2016Datacenter'
PublicIpAddressName = 'tutorialPublicIp'
Credential = $cred
OpenPorts = 3389
Size = 'Standard_D2s_v3'
}
$newVM1 = New-AzVM @vmParams
När den virtuella datorn skapas visas de parametervärden som används och de Azure-resurser som skapas. PowerShell visar förloppsindikatorn som visas här nedanför.
Creating Azure resources
39% \
[ooooooooooooooooooooooooooooooooooo ]
Creating TutorialVM1 virtual machine.
När den virtuella datorn är klar kan vi visa resultatet i Azure-portalen eller genom att granska variabeln $newVM1
.
$newVM1
ResourceGroupName : TutorialResources
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/TutorialResources/providers/Microsoft.Compute/virtualMachines/TutorialVM1
VmId : 00000000-0000-0000-0000-000000000000
Name : TutorialVM1
Type : Microsoft.Compute/virtualMachines
Location : eastus
Tags : {}
HardwareProfile : {VmSize}
NetworkProfile : {NetworkInterfaces}
OSProfile : {ComputerName, AdminUsername, WindowsConfiguration, Secrets}
ProvisioningState : Succeeded
StorageProfile : {ImageReference, OsDisk, DataDisks}
Egenskapsvärden som visas inuti klammerparenteser är kapslade objekt. I nästa steg visar vi hur du visar specifika värden i de här kapslade objekten.
Få information om virtuella datorer med frågor
Du kan få fram mer detaljerad information från den virtuella dator som vi just skapade. I det här exemplet verifierar vi namnet på den virtuella datorn och administratörskontot som vi skapade.
$newVM1.OSProfile | Select-Object -Property ComputerName, AdminUserName
ComputerName AdminUsername
------------ -------------
TutorialVM1 tutorialAdmin
Vi kan använda andra Azure PowerShell-kommandon för att hämta specifik information om nätverkskonfigurationen.
$newVM1 | Get-AzNetworkInterface |
Select-Object -ExpandProperty IpConfigurations |
Select-Object -Property Name, PrivateIpAddress
I det här exemplet använder vi PowerShell-pipelinen för att skicka objektet $newVM 1 till cmdleten Get-AzNetworkInterface
. Från nätverksgränssnittobjektet som skapas väljer vi det kapslade objektet IpConfigurations. Från objektet IpConfigurations väljer vi egenskaperna Name och PrivateIpAddress.
Name PrivateIpAddress
---- ----------------
TutorialVM1 192.168.1.4
Vi måste ansluta via fjärrskrivbordet för att bekräfta att den virtuella datorn körs. Då måste vi känna till den offentliga IP-adressen.
$publicIp = Get-AzPublicIpAddress -Name tutorialPublicIp -ResourceGroupName TutorialResources
$publicIp |
Select-Object -Property Name, IpAddress, @{label='FQDN';expression={$_.DnsSettings.Fqdn}}
I det här exemplet använder Get-AzPublicIpAddress
vi och lagrar resultaten i variabeln $publicIp
. Från den här variabeln väljer vi egenskaper och använder ett uttryck för att hämta den kapslade Fqdn-egenskapen.
Name IpAddress FQDN
---- --------- ----
tutorialPublicIp <PUBLIC_IP_ADDRESS> tutorialvm1-8a0999.eastus.cloudapp.azure.com
Du kan köra följande kommando för att ansluta till den virtuella datorn via fjärrskrivbordet från din lokala dator.
mstsc.exe /v $publicIp.IpAddress
Mer information om frågor för objektegenskaper finns i Fråga efter Azure-resurser.
Skapa en ny virtuell dator i det befintliga undernätet
Den andra virtuella datorn använder det befintliga undernätet.
$vm2Params = @{
ResourceGroupName = 'TutorialResources'
Name = 'TutorialVM2'
ImageName = 'Win2016Datacenter'
VirtualNetworkName = 'TutorialVM1'
SubnetName = 'TutorialVM1'
PublicIpAddressName = 'tutorialPublicIp2'
Credential = $cred
OpenPorts = 3389
}
$newVM2 = New-AzVM @vm2Params
$newVM2
ResourceGroupName : TutorialResources
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/TutorialResources/providers/Microsoft.Compute/virtualMachines/TutorialVM2
VmId : 00000000-0000-0000-0000-000000000000
Name : TutorialVM2
Type : Microsoft.Compute/virtualMachines
Location : eastus
Tags : {}
HardwareProfile : {VmSize}
NetworkProfile : {NetworkInterfaces}
OSProfile : {ComputerName, AdminUsername, WindowsConfiguration, Secrets}
ProvisioningState : Succeeded
StorageProfile : {ImageReference, OsDisk, DataDisks}
FullyQualifiedDomainName : tutorialvm2-dfa5af.eastus.cloudapp.azure.com
Du kan hoppa över några steg för att hämta den offentliga IP-adressen för den nya virtuella datorn eftersom den returneras i egenskapen FullyQualifiedDomainName för $newVM2
objektet. Använd följande kommando för att ansluta med hjälp av fjärrskrivbordet.
mstsc.exe /v $newVM2.FullyQualifiedDomainName
Rensa
Nu när självstudien har slutförts är det dags att rensa de skapade resurserna. Du kan ta bort enskilda resurser med kommandot Remove-AzResource
, men det säkraste sättet att ta bort alla resurser i en resursgrupp är att ta bort gruppen med kommandot Remove-AzResourceGroup
.
$job = Remove-AzResourceGroup -Name TutorialResources -Force -AsJob
$job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Long Running... AzureLongRun... Running True localhost Remove-AzResource...
Det här kommandot tar bort de resurser som skapades med självstudien och garanterar att de frigörs i rätt ordning. Parametern AsJob
ser till att PowerShell inte blockerar under tiden som borttagningen utförs. Använd följande kommando för att vänta tills borttagningen har slutförts:
Wait-Job -Id $job.Id
När rensningen är slutförd är självstudien klar. Fortsätt om du vill se en sammanfattning av allt du har lärt dig och få länkar till resurser som hjälper dig med nästa steg.
Sammanfattning
Grattis! Du har lärt dig hur du skapar virtuella datorer med nya eller befintliga resurser, använt uttryck och andra Azure PowerShell-kommandon för att samla in data som ska lagras i gränssnittsvariabler och tittat på vissa av de resurser som skapas för virtuella Azure-datorer.
Hur du nu går vidare beror på hur du har tänkt att använda Azure PowerShell. Det finns en mängd olika material som gör en djupdykning i funktionerna som beskrivs i den här kursen.
Djupgående Azure PowerShell-dokumentation
Lägg gärna lite tid på att utforska hela uppsättningen med Azure PowerShell-dokumentation.
Mer information om de kommandon som används i den här självstudien finns i följande artiklar.
- New-AzResourceGroup
- Get-Credential
- New-AzVM
- Select-Object
- Get-AzPublicIpAddress
- Remove-AzResourceGroup
- Wait-Job
Det finns även artiklar som mer ingående beskriver de funktioner som visades i självstudiekursen.
Exempelskript
Om du vill komma igång direkt med specifika uppgifter kan du titta på några exempel på skript.
Feedback
Om du vill ge feedback, komma med förslag eller ställa frågor så kan du kontakta oss på en rad olika sätt.
Send-Feedback
är ett inbyggt kommando för Azure PowerShell som gör det möjligt för dig att ge egen feedback till teamet.- Skicka in ett funktionsförslag eller en felrapport på Azure PowerShell-lagringsplatsen.
- Ställ en fråga eller få hjälp genom att skicka in ett problem på Azure PowerShell-dokumentationslagringsplatsen.
Vi hoppas att du gillar att använda Azure PowerShell!
Har du ett problem med det här avsnittet? Ge oss då feedback så att vi kan förbättra avsnittet.
Azure PowerShell