Kör en Windows virtuell dator på Azure

Azure Backup
Azure Blob Storage
Azure Resource Manager
Azure Storage
Azure Virtual Machines

Etablering av en virtuell dator (VM) i Azure kräver ytterligare komponenter förutom själva den virtuella datorn, inklusive nätverks- och lagringsresurser. Den här artikeln visar metodtips för att köra en säker Windows virtuell dator på Azure.

Arkitektur

Diagram som visar Windows virtuell dator i Azure.

Ladda ned en Visio fil i den här arkitekturen.

Arbetsflöde

Det här exemplet visar en grundläggande distribution med hjälp av en enda virtuell dator med nödvändiga komponenter. Den virtuella datorn kan köra arbetsbelastningar, är hanterbar och kan kommunicera med det offentliga Internet. Den är utformad för att undvika direkt exponering för externa hot.

  • Alla arbetsbelastningar som körs på den virtuella datorn exponeras inte externt och är endast tillgängliga från samma eller ett peer-kopplat virtuellt nätverk, till exempel i en hubb- och ekerkonfiguration.
  • Hanteringsåtkomst till den virtuella datorn visas med hjälp av Azure Bastion via Fjärrskrivbord Protocol (RDP) och tillåts inte direkt från det offentliga Internet.
  • Utgående extern internetåtkomst tillhandahålls genom användning av NAT-gatewayen (Network Address Translation) och dess associerade offentliga IP-adress.

Komponenter

Resursgrupp

En resource-grupp är en logisk container som innehåller relaterade Azure resurser. I allmänhet grupperar du resurser baserat på deras livslängd och vem som ska hantera dem.

Distribuera nära associerade resurser som delar samma livscykel till samma resursgrupp. Med hjälp av resursgrupper kan du distribuera och övervaka resurser som en grupp och spåra faktureringskostnaderna per resursgrupp. Du kan också ta bort resurser som en uppsättning, vilket är användbart för testdistributioner. Tilldela beskrivande resursnamn för att förenkla identifieringen av en specifik resurs och förstå dess roll. Mer information finns i Recommended Naming Conventions for Azure Resources.

Virtuell maskin

Du kan etablera en virtuell dator från en lista över publicerade avbildningar eller från en anpassad hanterad avbildning eller VHD-fil (virtuell hårddisk) som laddats upp till Azure Blob Storage.

Azure innehåller många olika virtuella datorstorlekar. Om du flyttar en befintlig arbetsbelastning till Azure börjar du med den VM-storlek som är närmast dina lokala servrar. Mät sedan prestandan för din faktiska arbetsbelastning när det gäller cpu-, minnes- och diskindata-/utdataåtgärder per sekund (IOPS) och justera storleken efter behov.

I allmänhet väljer du en Azure region som är närmast dina interna användare eller kunder. Alla VM-storlekar är inte tillgängliga i alla regioner. Mer information finns i Tjänster efter region. Kör följande kommando från Azure CLI för en lista över de VM-storlekar som är tillgängliga i en viss region:

az vm list-sizes --location <location>

Information om hur du väljer en publicerad VM-avbildning finns i Find Windows VM-avbildningar.

Diskar

För bästa disk-I/O-prestanda rekommenderar vi Premium SSD som lagrar data på SSD-enheter (Solid State Drives). Kostnaden baseras på kapaciteten hos den etablerade disken. IOPS och dataflöde beror också på diskstorlek, så när du etablerar en disk bör du överväga alla tre faktorerna (kapacitet, IOPS och dataflöde). Premium SSD:er har fri bursting som i kombination med en förståelse av arbetsbelastningsmönster erbjuder ett effektivt SKU-urval och en strategi för kostnadsoptimering för IaaS-infrastruktur. Detta möjliggör höga prestanda utan överdriven överetablering och minimerar kostnaden för outnyttjad kapacitet.

Anmärkning

För närvarande kan Premium SSD v2- och Ultra-diskar endast användas för datadiskar. De stöds inte för OS-diskar.

Hanterade diskar förenklar diskhanteringen genom att hantera lagringen åt dig. Managed disks kräver inget storage konto. Du anger storlek och typ av disk och distribueras som en resurs med hög tillgänglighet. Managed disks erbjuder också kostnadsoptimering genom att tillhandahålla önskad prestanda utan att behöva överetablera, redovisa fluktuerande arbetsbelastningsmönster och minimera oanvänd etablerad kapacitet.

Os-disken är som standard en hanterad disk som lagras i Azure-disklagring, så den bevaras även när värddatorn är nere. När det gäller tillståndslösa belastningar, där snabb etablering önskas och ingen OS-persistens är nödvändig, rekommenderas tillfälliga OS-diskar. Dessa diskar placerar OS-avbildningen på den virtuella datorvärdens lokala lagring i stället för fjärr-Azure Storage, vilket minskar läsfördröjningen, påskyndar återimeringen och eliminerar kostnaden för den hanterade disken. Alla data på en tillfällig OS-disk går dock förlorade vid stopp (frigör), återskapande eller värdunderhållsåterställningshändelser. Tillfälliga OS-diskar stöder inte ögonblicksbilder eller Azure Backup. Använd endast tillfälliga OS-diskar när virtuella datorer är fullt omdistribuerbara genom automatisering.

Beroende på den valda SKU:n kan den virtuella datorn också ha en tillfällig disk lagrad på en fysisk enhet på värddatorn (D:-enheten på Windows). Den temporära disken sparas inte i Azure Storage och kan tas bort under omstarter och andra händelser i livscykeln för virtuella maskiner. Använd endast den temporära disken för scratch-data som inte behöver överleva en omstart, till exempel programspecifika tillfälliga filer eller växlingsutrymme.

Windows behöver en sidfil för hantering av virtuellt minne. I SCSI-baserade vm-storlekar (v5 och äldre) placerar Marketplace-avbildningar sidfilen på den temporära disken som standard. På NVMe-baserade VM-storlekar (v6 och senare) är sidfilen standard för OS-disken eftersom NVMe-temporära diskar kräver initiering efter varje start. För tillfälliga virtuella OS-diskar finns även sidfilen på OS-disken.

När det är möjligt, installera program på en datadisk, inte en OS-disk. Vissa äldre program kan behöva installera komponenterna på C:-enheten. I så fall kan du ändra storleken på OS-disken med hjälp av PowerShell.

Vi rekommenderar att du skapar en eller flera datadiskar för programdata. Datadiskar är beständiga hanterade diskar som backas upp av Azure Storage.

När du lägger till en ny disk i en virtuell dator är den oformaterad. Logga in på den virtuella datorn för att formatera disken. Du kan också lägga till en ny datadisk via PowerShell.

Nätverk

Nätverkskomponenterna innehåller följande resurser:

  • Virtuellt nätverk. Varje virtuell dator distribueras till en virtual network som kan segmenteras i flera undernät.

  • Nätverksgränssnitt. Nätverkskortet gör det möjligt för den virtuella datorn att kommunicera med det virtuella nätverket. Om du behöver flera nätverkskort för den virtuella datorn definieras ett maximalt antal nätverkskort för varje VM-storlek.

  • Offentlig IP-adress. En offentlig IP-adress may användas för att kommunicera med den virtuella datorn utifrån Azure via Fjärrskrivbord. Detta rekommenderas dock inte eftersom det är en potentiell säkerhetsrisk.

    Varning

    Att ansluta en offentlig IP-adress utgör direkt en potentiell säkerhetsrisk. Det bör endast göras under extrema omständigheter och endast tillsammans med andra säkerhetsmetoder som att filtrera trafik med hjälp av nätverkssäkerhetsgrupper.

    För hanteringsåtkomst till en virtuell dator rekommenderar vi att du använder Azure Bastion eller internt när du ansluter via ett VPN eller Azure ExpressRoute.

    • Den offentliga IP-adressen kan vara dynamisk eller statisk. Standardvärdet är dynamiskt. Reservera en statisk IP-adress om du behöver en fast IP-adress som inte ändras, till exempel om du behöver skapa en DNS-A-post eller lägga till IP-adressen i en säker lista.
    • Du kan också skapa ett fullständigt domännamn (FQDN) för IP-adressen. Du kan sedan registrera en CNAME-post i DNS som pekar på värdnamnet. Mer information finns i Skapa ett fullständigt domännamn i Azure-portalen.
  • Nätverkssäkerhetsgrupp (NSG). Nätverkssäkerhetsgrupper används för att tillåta eller neka nätverkstrafik till virtuella datorer och/eller undernät. De kan associeras med undernäten eller med enskilda nätverkskort som är kopplade till virtuella datorer.

    • Alla NSG:er innehåller en uppsättning default-regler, inklusive en regel som blockerar all inkommande Internettrafik. Standardreglerna kan inte tas bort, men andra regler kan åsidosätta dem. Om du vill aktivera Internettrafik skapar du regler som tillåter inkommande trafik till specifika portar, till exempel port 443 för HTTPS.
  • Azure NAT Gateway.NAT-gatewayar (Network Address Translation) möjliggör för alla instanser i ett privat undernät att ansluta utåt till internet samtidigt som de förblir helt privata. Endast paket som tas emot som svarspaket till en utgående anslutning kan passera genom en NAT-gateway. Ej begärda inkommande anslutningar från Internet är inte tillåtna.

Anmärkning

För att förbättra standardsäkerheten blir implicit utgående Internetåtkomst inaktuell för alla nya virtuella nätverk. Utgående Internetanslutning måste konfigureras explicit med hjälp av andra resurser, till exempel NAT-gatewayer, Azure Standard Load Balancers eller brandväggar. Mer information finns i Standard utgående åtkomst i Azure.

  • Azure Bastion.Azure Bastion är en fullständigt hanterad plattform som en tjänstlösning som ger säker åtkomst till virtuella datorer via privata IP-adresser. Med den här konfigurationen behöver virtuella datorer inte någon offentlig IP-adress som exponerar dem för Internet, vilket ökar deras säkerhetsstatus. Azure Bastion ger säker Fjärrskrivbord Protocol-anslutning (RDP) eller SSH-anslutning (Secure Shell) till dina virtuella datorer direkt via TLS (Transport Layer Security) via olika metoder, inklusive Azure-portalen eller interna SSH- eller RDP-klienter.

Operativa åtgärder

Diagnostik. Aktivera övervakning och diagnostik, inklusive grundläggande hälsomätvärden, diagnostikinfrastrukturloggar och startdiagnostik. Startdiagnostik kan hjälpa dig att diagnostisera startfel om den virtuella datorn övergår till ett icke startbart tillstånd. Skapa ett Azure Storage konto för att lagra loggarna. Ett lokalt redundant standardlagringskonto (LRS) är tillräckligt för diagnostiska loggar. Mer information finns i Aktivera övervakning och diagnostik.

Tillgänglighet. Den virtuella datorn kan påverkas av planerat underhåll eller oplanerad stilleståndstid. Du kan använda VM-omstartsloggar för att avgöra om en omstart av den virtuella datorn orsakades av planerat underhåll. För högre tillgänglighet distribuerar du flera virtuella datorer mellan tillgänglighetszoner i en region. Detta ger ett högre serviceavtal (SLA). Om tillgänglighetszoner inte stöds kan tillgänglighetsuppsättningar ge skydd mot värdfel eller värduppdateringar. Tillgänglighetszoner är dock det rekommenderade alternativet där det är möjligt.

Säkerhetskopior. För att skydda mot oavsiktlig dataförlust använder du tjänsten Azure Backup för att säkerhetskopiera dina virtuella datorer till lagring. Beroende på region kan du använda geo-redundant eller zonredundant lagring för säkerhetskopior. Azure Backup tillhandahåller programkonsekventa säkerhetskopior. För prestandakänsliga arbetsbelastningar bör du överväga den agentlösa funktionen för kraschkonsekvent säkerhetskopiering med flera diskar som möjliggör säkerhetskopiering av virtuella datorer utan att använda VSS (Volume Shadow Copy Service), vilket minskar prestandapåverkan.

Stoppa en VM. Azure skiljer mellan "stoppade" och "frigjorda" tillstånd. Du debiteras när statusen för den virtuella datorn är stoppad, men inte när den virtuella datorn deallokeras. I Azure-portalen frigör knappen Stop den virtuella datorn. Om du stänger av via operativsystemet när du är inloggad stoppas den virtuella datorn, men frigörs inte, så du kommer fortfarande att debiteras.

Ta bort en VM. Om du tar bort en virtuell dator kan du ta bort eller behålla diskarna. Det innebär att du kan ta bort den virtuella datorn på ett säkert sätt utan att förlora data. Du debiteras dock fortfarande för diskarna. Du kan ta bort hanterade diskar precis som andra Azure resurs. Om du vill förhindra oavsiktlig borttagning använder du ett resurslås och låser hela resursgruppen eller enskilda resurser, till exempel den virtuella datorn.

Alternatives

  • Virtuella maskinskaleset – arbetsbelastningar som är kritiska för affärsverksamhet bör aldrig bero på en enda virtuell dator. Skalningsuppsättningar ger möjlighet att sprida arbetsbelastningar mellan noder och kan skala ut i tider med högre trafik eller skala in när trafiken är minimal för att minimera kostnaderna.

  • Azure Load Balancer skulle vara användbart för att tillhandahålla belastningsutjämning mellan flera virtuella datorer eller en VM-skalningsuppsättning. Det kan också användas som alternativ till en NAT Gateway för att tillåta åtkomst till en arbetsbelastning från Internet samtidigt som utgående åtkomst kan stödjas.

  • Application Gateway är ett alternativt Layer 7-lastbalanseringsalternativ för HTTP/HTTPS-trafik, som vanligtvis distribueras framför flera virtuella datorer eller en VM-skalningsuppsättning i en Azure-region.

  • För mer information om distribution på företagsnivå, se Azure Virtual Machines baslinjearkitektur i en Azure landningszon.

Scenarioinformation

I diagrammet ovan skulle det här scenariot vara användbart för att tillhandahålla en icke-kritisk arbetsbelastning som är användbar för interna användare.

Potentiella användningsfall

En distribution av en enskild virtuell dator kan användas som värd för ett enkelt program som inte behöver exponeras för Internet och kan motstå viss stilleståndstid. Detta kan till exempel vara ett grundläggande internt rapporteringsprogram.

Att tänka på

Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework.

Reliability

Tillförlitlighet säkerställer att ditt program kan uppfylla de åtaganden du gör gentemot dina kunder. Mer information finns i Checklista för designgranskning för tillförlitlighet.

Eftersom den här arkitekturen bara är ett enkelt exempel med en enda virtuell dator har den en minimal tillförlitlighetsnivå. Eventuella problem med själva den virtuella datorn eller värden där den körs orsakar ett avbrott, vilket resulterar i att värdbaserade arbetsbelastningar inte är tillgängliga. För alla arbetsbelastningar som behöver högre tillgänglighet bör flera virtuella datorer distribueras som innehåller samma arbetsbelastning, med dessa instanser bakom en lämplig belastningsutjämningslösning. Om dessa finns i samma region bör dessa virtuella datorer distribueras över tillgänglighetszoner (där det stöds) och läggas till i serverdelen för en Azure Standard Load Balancer eller en Application Gateway om arbetsbelastningen är HTTP/HTTPS-baserad. Detta gör att arbetsbelastningen fortfarande är tillgänglig om en enda virtuell dator i serverdelen skulle vara nere.

Vm-skalningsuppsättningar är ett annat alternativ för att förenkla hanteringen av arbetsbelastningar med flera noder som behöver möjlighet att automatiskt skala antalet instanser in eller ut beroende på något av flera mått, till exempel PROCESSOR- och/eller minnesförbrukning.

Hög tillgänglighet/katastrofåterställning (HA/DR)

För att minska explosionsradien och förbättra motståndskraft bör arbetsbelastningen distribueras i flera regioner och använda Azure Landningszon vägledningen. Detta kan vara i en Active-Passive-konfiguration, med automatisk övergång till den sekundära regionen om den primära regionen blir otillgänglig, eller en Active-Active-arkitektur där båda regionerna fördelar trafik till konsumenter. Ett exempel finns i Webbprogram på flera nivåer som skapats för HA/DR under Nästa steg nedan.

Exemplet i den artikeln använder Azure Site Recovery för att replikera diskarna hos enskilda virtuella datorer till en sekundär region, där Site Recovery kan användas för att växla över dessa virtuella datorer till den sekundära regionen med låg återställningspunkt (RPO) och återställningstid (RTO).

Se till att utvärdera arkitekturen så att den uppfyller kraven för ha/dr för alla komponenter, inte bara för de virtuella datorerna. I alla dessa beslut inkluderar du nätverk, identitet och data bland dina överväganden.

Säkerhet

Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i Checklista för designgranskning för säkerhet.

Använd Microsoft Defender för molnet för att få en central vy över säkerhetstillståndet för dina Azure resurser. Defender för molnet övervakar potentiella säkerhetsproblem och ger en omfattande bild av distributionens säkerhetshälsa. Defender för molnet har konfigurerats per Azure prenumeration. Aktivera insamling av säkerhetsdata enligt beskrivningen i Anslut dina Azure-prenumerationer. När datainsamling är aktiverat genomsöker Defender för molnet automatiskt alla virtuella datorer som skapats under den prenumerationen.

Uppdateringshantering. Om det är aktiverat kontrollerar Defender för molnet om några säkerhetsuppdateringar och kritiska uppdateringar saknas. Använd Group Policy inställningar på den virtuella datorn för att aktivera automatiska systemuppdateringar.

Skydd mot skadlig kod. Om det är aktiverat kontrollerar Defender för molnet om programvara mot skadlig kod är installerad. Du kan också använda Defender för molnet för att installera programvara mot skadlig kod inifrån Azure-portalen.

Åtkomstkontroll. Använd Azure rollbaserad åtkomstkontroll (Azure RBAC) för att styra åtkomsten till Azure resurser. Azure RBAC kan du tilldela auktoriseringsroller till medlemmar i ditt DevOps-team. Rollen Läsare kan till exempel visa Azure resurser men inte skapa, hantera eller ta bort dem. Vissa behörigheter är specifika för en Azure resurstyp. Rollen Virtuell datordeltagare kan till exempel starta om eller frigöra en virtuell dator, återställa administratörslösenordet och skapa en ny virtuell dator. Andra inbyggda roller som kan vara användbara för den här arkitekturen är DevTest Labs-användare och nätverksdeltagare.

Anmärkning

Azure RBAC begränsar inte de åtgärder som en användare som är inloggad på en virtuell dator kan utföra. Dessa behörigheter avgörs av kontotypen i gästoperativsystemet.

Granskningsloggar. Använd granskningsloggar om du vill visa etableringsåtgärder och andra virtuella datorhändelser.

Datakryptering. Aktivera kryptering på värd för att uppnå kryptering från slutpunkt till slutpunkt för dina VM-data, inklusive temporära diskar och diskcacheminnen. Kryptering på värd hanterar kryptering på värdinfrastrukturen för den virtuella datorn och förbrukar inte CPU-resurser på själva de virtuella datorerna, jämfört med gästbaserad kryptering. Du kan använda anpassade hanterade nycklar med Azure Key Vault för beständiga operativsystem och datadiskar. Temporära diskar och ephemerala OS-diskar krypteras med plattformshanterade nycklar. Kontrollera att din valda VM-storlek stöder kryptering på värden innan du skapar.

Kostnadsoptimering

Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Checklista för designgranskning för kostnadsoptimering.

Det finns olika alternativ för VM-storlekar beroende på användning och arbetsbelastning. Intervallet innehåller det mest ekonomiska alternativet i Bs-serien till de nyaste virtuella GPU-datorerna som är optimerade för machine learning. Information om tillgängliga alternativ finns i Azure Windows VM-priser.

För förutsägbara arbetsbelastningar använder du Azure-reservationer och Azure-sparplan för datorkraft med ett ettårs- eller treårskontrakt och får betydande besparingar på priserna per användning. För arbetsbelastningar utan förutsägbar tid för slutförande eller resursförbrukning bör du överväga alternativet Betala per användning .

Använd Azure Spot VMs för att köra arbetsuppgifter som kan avbrytas och som inte kräver slutförande inom en förutbestämd tidsram eller ett serviceavtal. Azure distribuerar Spot-VM:er om det finns tillgänglig kapacitet och avvisar dem när Azure behöver kapaciteten tillbaka. Kostnaderna för spot-virtual machines är betydligt lägre. Överväg Spot-VM:er för dessa arbetsbelastningar:

  • Scenarier med högpresterande beräkning, jobb för batchbearbetning eller program med visuell rendering.
  • Testmiljöer, inklusive kontinuerlig integrering och arbetsbelastningar för kontinuerlig leverans.
  • Storskaliga tillståndslösa program.

Använd priskalkylatorn Azure för att beräkna kostnaderna.

Mer information finns i kostnadsavsnittet i Microsoft Azure Well-Architected Framework.

Operativ skicklighet

Operational Excellence omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i Checklista för designgranskning för Operational Excellence.

Använd IaC-mallar (Infrastruktur som kod) för att etablera Azure resurser och deras beroenden. Dessa kan skrivas med hjälp av Bicep, Azure Resource Manager mallar (ARM-mallar) eller Terraform, beroende på dina inställningar och etablerade verktygsalternativ. Dessa mallar tillåter en CI/CD-process (Continuous Integration/Continuous Deployment) som en del av en automatiserad distributionsmetod för att distribuera och konfigurera resurser. Den här metoden möjliggör versionshantering av arkitekturer och säkerställer konsekvens mellan miljöer samt framtvingar reproducerbarhet, säkerhet och efterlevnad.

För att hjälpa till med övervakning och diagnostisering av problem kontrollerar du att diagnostikloggar är aktiverade på dina resurser och görs tillgängliga för Azure Monitor för att hjälpa till med analys och optimering av dina resurser. Dessa loggar kan användas för att implementera aviseringar och meddelanden om kritiska händelser och i vissa fall tillåta automatisk reparation eller loggning av ett ärende i DITT ITSM-system (IT Service Management).

Prestandaeffektivitet

Prestandaeffektivitet fokuserar på att optimera molnarbetsbelastningar för hastighet, svarstider och skalbarhet. Mer information finns i Checklista för designgranskning för prestandaeffektivitet.

Några viktiga mål är att minimera svarstiden, säkerställa skalbara arkitekturer, optimera resursutnyttjande och kontinuerligt förbättra systemprestanda.

Som nämnts ovan kan de beslut som fattas om arbetsbelastningsarkitektur, VM SKU och diskkonfigurationer ha stor inverkan på hur arbetsbelastningen presterar. Att göra rätt val kan förhindra att lösningen måste utformas på nytt i framtiden, vilket ökar flexibiliteten och sparar kostnader.

Tänk på följande när du utvecklar din arkitektur:

  • Använd virtuella maskin skalningsuppsättningar om arbetsbelastningen har en dynamisk arbetslast. Skala till exempel ut i tider med stora mängder trafik och skala sedan in igen när trafiken minskar. Detta säkerställer tillräcklig bearbetningskraft samtidigt som kostnaderna hålls under kontroll.
  • Välj lämpliga virtuella dator- och disk-SKU:er för att uppfylla nödvändig IOPS under bearbetningen. Konfigurera cachelagring för att ytterligare förbättra prestanda.
  • Om din arbetsbelastning är ovanligt svarstidskänslig använder du närhetsplaceringsgrupper (PPG:er) för att säkerställa att flera virtuella datorer finns fysiskt nära varandra för att uppnå bättre prestanda. PPG:er kan också användas tillsammans med tillgänglighetsuppsättningar för att kombinera låg svarstid med hög tillgänglighet i ett enda fysiskt datacenter.
  • Aktivera om möjligt accelererat nätverk för att minimera svarstiden mellan komponenter.
  • Utforma nätverksarkitektur för att minimera onödiga hopp.
  • Använd Azure Monitor, VM Insights och andra verktyg för att kontinuerligt analysera mått och skapa uppdaterade prestandabaslinjer. Använd prestandainformationen för att avgöra var du ska implementera ändringar och testa sedan mot dessa baslinjer.

Contributors

Den här artikeln underhålls av Microsoft. Texten skrevs ursprungligen av följande bidragsgivare.

Huvudförfattare:

Om du vill se linkedin-profiler som inte är offentliga loggar du in på LinkedIn.

Nästa steg