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 virtuell Linux-dator på Azure.
Arkitektur
Ladda ned en Visio-fil med den här arkitekturen.
Arbetsflöde
Resursgrupp
En resursgrupp ä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.
Placera nära associerade resurser som delar samma livscykel i 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 Rekommenderade namnkonventioner för Azure-resurser.
Virtuell maskin
Du kan etablera en virtuell dator från en lista över publicerade avbildningar, eller från en anpassad hanterad avbildning eller en virtuell hårddiskfil (VHD) som du överfört till Azure blobblagring. Azure Support kör olika populära Linux-distributioner, inklusive Debian, Red Hat Enterprise Linux (RHEL) och Ubuntu. Mer information finns i Azure och Linux.
Azure erbjuder virtuella datorer i många olika storlekar. Mer information finns i Storlekar för virtuella datorer i Azure. 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.
Välj vanligtvis 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 virtuell datoravbildning finns i informationen om hur du hittar virtuella Linux-datoravbildningar.
Diskar
För bästa i/o-diskprestanda rekommenderar vi Premium Storage, som lagrar data på SSD-enheter. Kostnaden baseras på kapaciteten hos den etablerade disken. IOPS och dataflöde (dataöverföringshastighet) beror också på diskstorleken, så när du etablerar en disk bör du fundera över alla tre faktorer (kapacitet, IOPS och dataflöde). Premium Storage har också kostnadsfria burst-funktioner, i kombination med en förståelse av arbetsbelastningsmönster, erbjuder en effektiv SKU-urvals- och kostnadsoptimeringsstrategi för IaaS-infrastruktur, vilket möjliggör höga prestanda utan överdriven överetablering och minimerar kostnaden för outnyttjad kapacitet.
Hanterade diskar förenklar diskhanteringen genom att hantera lagringen åt dig. Hanterade diskar kräver inget lagringskonto. Du anger storlek och typ av disk och distribueras som en resurs med hög tillgänglighet. Hanterade diskar 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 en virtuell hårddisk som lagras i Azure Storage, så att den finns kvar även när värddatorn ligger nere. Den virtuella hårddisken kan vara lokalt ansluten NVMe eller liknande enheter som är tillgängliga på många VM-SKU:er.
Tillfälliga diskar ger bra prestanda utan extra kostnad, men kommer med de betydande nackdelarna med att vara icke-beständig, ha begränsad kapacitet och begränsas till endast operativsystem och temporär diskanvändning. För virtuella Linux-datorer är OS-disken /dev/sda1
. Vi rekommenderar också att du skapar en eller flera datadiskar, som är beständiga virtuella hårddiskar som används för programdata.
När du skapar en virtuell hårddisk är den oformaterad. Logga in på den virtuella datorn om du vill formatera disken. I Linux-gränssnittet visas datadiskar som /dev/sdc
, /dev/sdd
och så vidare. Du kan köra lsblk
för att visa blockenheterna, inklusive diskarna, i listan. Skapa en partition och ett filsystem och montera disken om du vill använda en datadisk. Till exempel:
# Create a partition.
sudo fdisk /dev/sdc # Enter 'n' to partition, 'w' to write the change.
# Create a file system.
sudo mkfs -t ext3 /dev/sdc1
# Mount the drive.
sudo mkdir /data1
sudo mount /dev/sdc1 /data1
När du lägger till en datadisk tilldelas disken ett logiskt enhetsnummer-ID (LUN-ID). Du kan också ange LUN-ID: t. Ex. om du ersätter en disk och vill behålla samma LUN-ID, eller om du har ett program som söker efter ett specifikt LUN-ID. Tänk dock på att LUN-ID:na måste vara unika för varje disk.
Du kanske vill ändra I/O-schemaläggaren för att optimera SSD:ernas prestanda, eftersom diskarna för virtuella datorer med Premium Storage-konton är SSD:er. En vanlig rekommendation är att använda NOOP-schemaläggaren för SSD:er, men du bör använda ett verktyg som iostat för att övervaka diskens I/O-prestanda för din arbetsbelastning.
Den virtuella datorn skapas med en tillfällig disk. Den här disken lagras på en fysisk enhet på värddatorn. Den sparas inte i Azure Storage och kan raderas under omstarter och andra livscykelhändelser för virtuella datorer. Använd enbart den här disken för tillfälliga data, till exempel växlingsfiler. För virtuella Linux-datorer är den tillfälliga disken /dev/disk/azure/resource-part1
och den är monterad på /mnt/resource
eller /mnt
.
Nätverk
Nätverkskomponenterna innehåller följande resurser:
Virtuellt nätverk. Varje virtuell dator distribueras till ett virtuellt nätverk som segmenteras i undernät.
Nätverksgränssnitt. Nätverkskortet som 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 krävs för att kommunicera med den virtuella datorn, till exempel via Remote Desktop Protocol (RDP). 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å det fullständiga domännamnet. Mer information finns i Skapa ett fullständigt domännamn i Azure Portal.
Nätverkssäkerhetsgrupp (NSG). Nätverkssäkerhetsgrupper används för att tillåta eller neka nätverkstrafik till virtuella datorer. NSG:er kan associeras antingen med undernät eller med enskilda VM-instanser.
- Alla nätverkssäkerhetsgrupper innehåller en uppsättning standardregler, 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 80 för HTTP. Om du vill aktivera Secure Shell (SSH) lägger du till en NSG-regel som tillåter inkommande trafik till TCP-port 22.
Azure NAT Gateway. Nat-gatewayer (Network Address Translation) tillåter att alla instanser i ett privat undernät ansluter utgående 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.
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 tillhandahåller säker RDP- eller SSH-anslutning till dina virtuella datorer direkt via TLS (Transport Layer Security) via olika metoder, inklusive Azure Portal eller interna SSH- eller RDP-klienter.
Operations
SSH. Innan du skapar en virtuell Linux-dator skapar du ett 2 048-bitars offentligt/privat RSA-nyckelpar. Använd fil för offentlig nyckel när du skapar den virtuella datorn. Mer information finns i Använd SSH med Linux och Mac på Azure.
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 standardkonto för lokalt redundant lagring (LRS) är tillräckligt för diagnostikloggar. 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 omstartsloggarna för virtuella datorer för att bedöma om en omstart av en virtuell dator orsakades av planerat underhåll. För högre tillgänglighet distribuerar du flera virtuella datorer i en tillgänglighetsuppsättning eller mellan tillgänglighetszoner i en region. Båda dessa konfigurationer ger ett serviceavtal (SLA) på högre servicenivå.
Säkerhetskopior För att skydda mot oavsiktlig dataförlust använder du Azure Backup-tjänsten för att säkerhetskopiera dina virtuella datorer till geo-redundant lagring. Azure Backup innehåller programkonsekventa säkerhetskopior.
Stoppa en virtuell dator. Azure gör skillnad mellan tillståndet ”stoppad” och tillståndet ”frigjord”. Du debiteras när den virtuella datorns status stoppas, men inte när den virtuella datorn frigörs. I Azure-portalen tar knappen Stoppa bort 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 virtuell dator. 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-resurser. 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.
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.
Kostnadsoptimering
Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Översikt över kostnadsoptimeringspelare.
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 maskininlärning. Information om tillgängliga alternativ finns i Prissättning för virtuella Azure Linux-datorer.
För förutsägbara arbetsbelastningar använder du Azure-reservationer och Azure-sparplan för beräkning med ett ettårs- eller treårskontrakt och får betydande besparingar av betala per användning-priser. 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 virtuella Azure Spot-datorer för att köra arbetsbelastningar som kan avbrytas och kräver inte slutförande inom en fördefinierad tidsram eller ett serviceavtal. Azure distribuerar virtuella datorer med oanvänd kapacitet om det finns tillgänglig kapacitet och borttagning när den behöver kapaciteten tillbaka. Kostnaderna för virtuella spotdatorer är betydligt lägre. Överväg virtuella datorer med oanvänd kapacitet 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 för Azure för att beräkna kostnaderna.
Mer information finns i kostnadsavsnittet i Microsoft Azures välstrukturerade ramverk.
Säkerhet
Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i Översikt över säkerhetspelare.
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 Publicera din Azure-prenumeration för att Defender för molnet Standard. 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.
Programvara 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 program mot skadlig kod inifrån Azure Portal.
Åtkomstkontroll. Använd rollbaserad åtkomstkontroll i Azure (Azure RBAC) för att styra åtkomsten till Azure-resurser. Med Azure RBAC kan du tilldela auktoriseringsroller till medlemmar i ditt DevOps-team. Till exempel kan den som har rollen Läsare visa Azure-resurser, men inte skapa, hantera eller ta bort dem. Vissa behörigheter är specifika för en Azure-resurstyp. Exempelvis kan rollen Virtuell datordeltagare starta om eller frigöra en virtuell dator, återställa administratörslösenordet, skapa en ny virtuell dator och så vidare. Andra inbyggda roller som kan vara användbara för den här arkitekturen är DevTest Labs-användare och nätverksdeltagare.
Kommentar
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. Använd Azure Disk Encryption om du behöver kryptera operativsystemet och datadiskarna.
Driftsäkerhet
Driftskvalitet omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i Översikt över grundpelare för driftskvalitet.
Använd en enda Azure Resource Manager-mall för att etablera Azure-resurserna och dess beroenden. Eftersom alla resurser finns i samma virtuella nätverk isoleras de i samma grundläggande arbetsbelastning. Det gör det enklare att associera arbetsbelastningens specifika resurser med ett DevOps-team, så att teamet oberoende kan hantera alla aspekter av dessa resurser. Den här isoleringen gör det möjligt för DevOps-teamet att utföra kontinuerlig integrering och kontinuerlig leverans (CI/CD).
Du kan också använda olika Azure Resource Manager-mallar och integrera dem med Azure DevOps Services för att etablera olika miljöer på några minuter, till exempel för att replikera produktion som scenarier eller belastningstestningsmiljöer endast när det behövs, vilket sparar kostnader.
Arkitektur för högre tillgänglighet finns i Linux N-nivåprogram i Azure med Apache Cassandra, referensarkitekturen innehåller mer än en virtuell dator och varje virtuell dator ingår i en tillgänglighetsuppsättning.
Överväg att använda Azure Monitor för att analysera och optimera prestanda för din infrastruktur samt övervaka och diagnostisera nätverksproblem utan att logga in på dina virtuella datorer.
Nästa steg
- Information om hur du skapar en virtuell Linux-dator finns i Snabbstart: Skapa en virtuell Linux-dator i Azure Portal
- Information om hur du installerar en NVIDIA-drivrutin på en virtuell Linux-dator finns i Installera NVIDIA GPU-drivrutiner på virtuella datorer i N-serien som kör Linux
- Information om hur du etablerar en virtuell Linux-dator finns i Skapa och hantera virtuella Linux-datorer med Azure CLI
- Standardåtkomst för utgående trafik i Azure