Beskriva de alternativ som är tillgängliga för att skapa och hantera en virtuell Azure-dator

Slutförd

Azure-portalen är det enklaste sättet att skapa resurser som virtuella datorer när du kommer igång. Det är dock inte nödvändigtvis det mest effektiva eller snabbaste sättet att arbeta med Azure, särskilt om du behöver skapa flera resurser tillsammans. I vårt fall skapar vi så småningom dussintals virtuella datorer för att hantera olika uppgifter. Att skapa dem manuellt i Azure-portalen skulle inte vara en rolig uppgift!

Nu ska vi titta på några andra sätt att skapa och administrera resurser i Azure:

  • Azure Resource Manager-mallar
  • Azure PowerShell
  • Azure CLI
  • Azure REST API
  • Azure Client SDK
  • Azure VM-tillägg
  • Azure Automation Services

Resource Manager-mallar

Anta att du vill skapa en kopia av en virtuell dator med samma inställningar. Du kan skapa en VM-avbildning, ladda upp den till Azure och referera till den som grund för den nya virtuella datorn. Den här processen är ineffektiv och tidskrävande. Azure ger dig möjlighet att skapa en mall som du kan använda för att skapa en exakt kopia av en virtuell dator.

Resource Manager-mallar är JSON-filer som definierar de resurser som du behöver distribuera för din lösning.

Du kan skapa en resursmall för den virtuella datorn. Välj Exportera mallunder Automation på VM-menyn.

Skärmbild som visar alternativet Exportera mall för en virtuell dator.

Anteckning

Principerna för de resurser som ingår i sandbox-miljön för den här Learn-modulen hindrar dig från att kunna exportera den virtuella dator som du nyss skapade. Som sagt, en exporterad mall är en lättredigerad JSON-fil. Du kan välja att ladda ned eller spara en mall för senare användning eller omedelbart distribuera en ny virtuell dator baserat på mallen. Du kan till exempel skapa en virtuell dator från en mall i en testmiljö och upptäcka att den inte riktigt fungerar för att ersätta den lokala datorn. Du kan ta bort resursgruppen, som tar bort alla resurser, justera mallen och försöka igen. Om du bara vill göra ändringar i befintliga distribuerade resurser kan du ändra mallen som används för att skapa den och distribuera om den. Resource Manager ändrar resurserna så att de matchar den nya mallen.

När du har arbetat som du vill kan du använda mallen för att enkelt replikera flera versioner av infrastrukturen, till exempel mellanlagring och produktion. Du kan parametrisera fält som vm-namn, nätverksnamn, lagringskontonamn och så vidare och läsa in mallen upprepade gånger med hjälp av olika parametrar för att anpassa varje miljö.

Mer information om hur du använder mallar finns i Snabbstart: Skapa en virtuell Ubuntu Linux-dator med hjälp av en ARM-mall.

Azure CLI

Ett alternativ för skript- och kommandoradsinteraktion i Azure är Azure CLI-.

Azure CLI är Microsofts plattformsoberoende kommandoradsverktyg för att hantera Azure-resurser som virtuella datorer och diskar från kommandoraden. Den är tillgänglig för Linux, macOS, Windows eller i en webbläsare med hjälp av Cloud Shell.

Från CLI kan du till exempel skapa en virtuell Azure-dator med kommandot az vm create.

az vm create \
    --resource-group TestResourceGroup \
    --name test-wp1-eus-vm \
    --image Ubuntu2204 \
    --admin-username azureuser \
    --generate-ssh-keys

Azure CLI kan användas med andra skriptspråk, till exempel Ruby och Python.

Läs mer om att skapa och hantera virtuella datorer i Hantera virtuella datorer med Azure CLI-verktyget modulen.

Mer information om hur du använder Azure CLI för att skapa virtuella datorer finns i Snabbstart: Skapa en virtuell Linux-dator med CLI-.

Azure PowerShell

Azure PowerShell- är perfekt för interaktiva uppgifter och/eller automatisering av upprepade uppgifter.

Anteckning

PowerShell är ett plattformsoberoende gränssnitt som tillhandahåller tjänster som gränssnittsfönstret och kommandoparsing. Azure PowerShell är ett valfritt tilläggspaket som lägger till Azure-specifika kommandon (kallas cmdletar). Du kan lära dig mer om att installera och använda Azure PowerShell i en separat träningsmodul.

Du kan till exempel använda cmdleten New-AzVM för att skapa en ny Debian-baserad virtuell Azure-dator.

New-AzVm `
    -ResourceGroupName "TestResourceGroup" `
    -Name "test-wp1-eus-vm" `
    -Location "East US" `
    -Image Debian11 `
    -VirtualNetworkName "test-wp1-eus-network" `
    -SubnetName "default" `
    -SecurityGroupName "test-wp1-eus-nsg" `
    -PublicIpAddressName "test-wp1-eus-pubip" `
    -GenerateSshKey `
    -SshKeyName myPSKey
    -OpenPorts 22

Som du ser här anger du olika parametrar för att hantera det stora antalet tillgängliga konfigurationsinställningar för virtuella datorer. De flesta parametrarna har rimliga värden. du behöver bara ange de obligatoriska parametrarna. Läs mer om att skapa och hantera virtuella datorer med Azure PowerShell i Automatisera Azure-uppgifter med hjälp av skript med PowerShell modul.

Mer information om hur du använder PowerShell för att skapa virtuella datorer finns i Snabbstart: Skapa en virtuell Linux-dator med PowerShell.

Terraform

Azure har också en Terraform-provider, så du kan enkelt använda Terraform för att skapa och hantera dina virtuella datorer. Terraform möjliggör definition, förhandsversion och distribution av molninfrastruktur. Med Terraform skapar du konfigurationsfiler med hjälp av HCL-syntax. Med HCL-syntaxen kan du ange molnleverantören – till exempel Azure – och de element som utgör din molninfrastruktur. När du har skapat konfigurationsfilerna skapar du en körningsplan som gör att du kan förhandsgranska ändringarna i infrastrukturen innan de distribueras. När du har verifierat ändringarna tillämpar du genomförandeplanen för att distribuera infrastrukturen.

Mer information finns i Azure Terraform provider och Quickstart: Använd Terraform för att skapa en VM.

Programmatiska (API:er)

Generellt sett är både Azure PowerShell och Azure CLI bra alternativ om du har enkla skript att köra och vill hålla dig till kommandoradsverktyg. När det gäller mer komplexa scenarier, där skapandet och hanteringen av virtuella datorer utgör en del av ett större program med komplex logik, behövs en annan metod.

Du kan interagera med alla typer av resurser i Azure programmatiskt.

Azure REST API

Azure REST API ger utvecklare åtgärder kategoriserade efter resurs och möjlighet att skapa och hantera virtuella datorer. Åtgärder exponeras som URI:er med motsvarande HTTP-metoder (GET, PUT, POST, DELETEoch PATCH) och ett motsvarande svar.

Med Azure Compute-API:erna får du programmatisk åtkomst till virtuella datorer och deras stödresurser.

Mer information finns i REST API-referensen för Virtual Machines.

Azure Client SDK

Även om REST-API:et är plattforms- och språkberoende ser utvecklarna oftast mot en högre abstraktionsnivå. Azure Client SDK kapslar in Azure REST API, vilket gör det mycket enklare för utvecklare att interagera med Azure.

Azure Client SDK:er är tillgängliga för olika språk och ramverk, inklusive . NET-baserade språk som C#, Java, Node.js, PHP, Python, Ruby och Go.

Här är ett exempelfragment av C#-kod för att skapa en virtuell Azure-dator med hjälp av Microsoft.Azure.Management.Fluent NuGet-paketet.

var azure = Azure
    .Configure()
    .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
    .Authenticate(credentials)
    .WithDefaultSubscription();
// ...
var vmName = "test-wp1-eus-vm";

azure.VirtualMachines.Define(vmName)
    .WithRegion(Region.USEast)
    .WithExistingResourceGroup("TestResourceGroup")
    .WithExistingPrimaryNetworkInterface(networkInterface)
    .WithLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
    .WithAdminUsername("jonc")
    .WithAdminPassword("aReallyGoodPasswordHere")
    .WithComputerName(vmName)
    .WithSize(VirtualMachineSizeTypes.StandardDS1)
    .Create();

Här är samma kodfragment i Java med hjälp av Azure Java SDK.

String vmName = "test-wp1-eus-vm";
// ...
VirtualMachine virtualMachine = azure.virtualMachines()
    .define(vmName)
    .withRegion(Region.US_EAST)
    .withExistingResourceGroup("TestResourceGroup")
    .withExistingPrimaryNetworkInterface(networkInterface)
    .withLatestWindowsImage("MicrosoftWindowsServer", "WindowsServer", "2012-R2-Datacenter")
    .withAdminUsername("jonc")
    .withAdminPassword("aReallyGoodPasswordHere")
    .withComputerName(vmName)
    .withSize("Standard_DS1")
    .create();

Azure VM-tillägg

Anta att du vill konfigurera och installera mer programvara på den virtuella datorn efter den första distributionen. Du vill att den här uppgiften ska använda en specifik konfiguration, övervakas och köras automatiskt.

Azure VM-tillägg är små program som gör att du kan konfigurera och automatisera uppgifter på virtuella Azure-datorer efter den första distributionen.

Mer information finns i tillägg och funktioner för virtuella Azure-datorer.

Azure Automation-tjänster

Att spara tid, minska fel och öka effektiviteten är några av de viktigaste driftshanteringsutmaningarna när du hanterar fjärrinfrastruktur. Om du har många infrastrukturtjänster kanske du vill överväga att använda tjänster på högre nivå i Azure för att hjälpa dig att arbeta från en högre nivå.

Azure Automation- kan du integrera tjänster som gör att du enkelt kan automatisera frekventa, tidskrävande och felbenägna hanteringsuppgifter. Dessa tjänster omfattar processautomatisering, konfigurationshanteringoch uppdateringshantering.

  • Process Automation. Anta att du har en virtuell dator som övervakas för en specifik felhändelse. Du vill vidta åtgärder och åtgärda problemet så snart det rapporteras. Med processautomatisering kan du konfigurera bevakaruppgifter som kan svara på händelser som kan inträffa i ditt datacenter.

  • Konfigurationshantering. Du kanske vill spåra programuppdateringar som blir tillgängliga för operativsystemet som körs på den virtuella datorn. Det finns specifika uppdateringar som du kanske vill inkludera eller exkludera. Med konfigurationshantering kan du spåra dessa uppdateringar och vidta åtgärder efter behov. Du använder Microsoft Endpoint Configuration Manager för att hantera företagets datorer, servrar och mobila enheter. Du kan utöka det här stödet till dina virtuella Azure-datorer med Configuration Manager.

  • Uppdateringshantering. Använd den här tjänsten för att hantera uppdateringar och korrigeringar för dina virtuella datorer. Med den här tjänsten kan du utvärdera statusen för tillgängliga uppdateringar, schemalägga installation och granska distributionsresultat för att verifiera att uppdateringar har tillämpats. Uppdateringshantering omfattar tjänster som tillhandahåller process- och konfigurationshantering. Du aktiverar uppdateringshantering för en virtuell dator direkt från ditt Azure Automation--konto. Du kan också aktivera uppdateringshantering för en enskild virtuell dator från fönstret för den virtuella datorn i portalen.

Automatisk avstängning

Automatisk avstängning är en funktion i Azure som gör att du automatiskt kan stänga av dina virtuella datorer enligt ett schema. Använd Automatisk avstängning för att spara kostnader genom att se till att dina virtuella datorer inte körs när de inte behövs. Du kan ange att schemat för automatisk avstängning ska ske dagligen eller varje vecka, och du kan också ange tidszonen för schemat.

Om du vill navigera till funktionen Automatisk avstängning på en virtuell dator i Azure-portalen går du till bladet för den virtuella datorn i portalen, klickar på "Automatisk avstängning" under avsnittet "Åtgärder" och konfigurerar sedan inställningarna för automatisk avstängning enligt dina inställningar.

Skärmbild som visar alternativet Automatisk avstängning för en virtuell dator.

Mer information finns i Automatisk avstängning.

Som du ser tillhandahåller Azure olika verktyg för att skapa och administrera resurser så att du kan integrera hanteringsåtgärder i en process som fungerar för dig. Nu ska vi undersöka några av de andra Azure-tjänsterna för att se till att infrastrukturresurserna fungerar smidigt.