Vad är Azure Container Storage?
Azure Container Storage är en molnbaserad tjänst för volymhantering, distribution och orkestrering som skapats internt för containrar. Det är integrerat med Kubernetes så att du dynamiskt och automatiskt kan etablera beständiga volymer för att lagra data för tillståndskänsliga program som körs i Kubernetes-kluster.
Viktigt!
Azure Container Storage är inte tillgängligt i alla Azure-regioner. Visa regional tillgänglighet. Azure Container Storage är nu allmänt tillgängligt (GA) från och med version 1.1.0. Ga-versionen rekommenderas för produktionsarbetsbelastningar. Om du tidigare har installerat förhandsversionen av Azure Container Storage och inte har aktiverat automatisk uppgradering bör du uppdatera till ga-versionen.
Information om hur du kommer igång med Azure Container Storage finns i Använda Azure Container Storage med Azure Kubernetes Service eller titta på videon.
Den här videon ger en introduktion till Azure Container Storage, en lagringshanterings- och orkestreringstjänst från slutpunkt till slutpunkt för tillståndskänsliga program. Lär dig hur du optimerar prestanda för tillståndskänsliga arbetsbelastningar på Azure Kubernetes Service (AKS) för att effektivt skala över lagringstjänster samtidigt som du ger en kostnadseffektiv, containerbaserad upplevelse.
Lagringstyper som stöds
Azure Container Storage använder befintliga Azure Storage-erbjudanden för faktisk datalagring och erbjuder en volymorkestrerings- och hanteringslösning som är specialbyggd för containrar. Du kan välja något av de lagringsalternativ som stöds för att skapa en lagringspool för dina beständiga volymer.
Azure Container Storage erbjuder beständigt volymstöd med ReadWriteOnce-åtkomstläge till Linux-baserade AKS-kluster (Azure Kubernetes Service). Stöd för lagringsalternativ som stöds omfattar endast blocklagringserbjudanden: Azure-diskar, tillfälliga diskar (lokal NVMe eller temporär SSD) och Azure Elastic SAN (förhandsversion). I följande tabell sammanfattas de lagringstyper som stöds, rekommenderade arbetsbelastningar och etableringsmodeller.
Lagringstyp | Beskrivning | Arbetsbelastningar | Offergåvor | Etableringsmodell |
---|---|---|---|---|
Azure Elastic SAN (förhandsversion) | Etablera på begäran, fullständigt hanterad resurs | Allmänna databaser, strömnings- och meddelandetjänster, CD/CI-miljöer och andra arbetsbelastningar på nivå 1/nivå 2. | Azure Elastic SAN | Etablerad på begäran per skapad volym- och volymögonblicksbild. Flera kluster kan komma åt ett enda SAN samtidigt, men beständiga volymer kan bara kopplas av en konsument i taget. |
Azure-diskar | Detaljerad kontroll över lagrings-SKU:er och konfigurationer | Azure-diskar passar bra för databaser på nivå 1 och allmänna ändamål som MySQL, MongoDB och PostgreSQL. | Premium SSD, Premium SSD v2, Standard SSD, Ultra Disk | Etablerad per målstorlek för containerlagringspoolen och maximal volymstorlek. |
Tillfälliga diskar | Använder lokala lagringsresurser på AKS-noder (NVMe eller temp SSD) | Tillfälliga diskar är extremt svarstidskänsliga (låg svarstid under ms), så det är bäst för program utan krav på datahållbarhet eller med inbyggt stöd för datareplikering, till exempel Cassandra. | NVMe är tillgängligt på lagringsoptimerade VM-SKU:er | Distribueras som en del av de virtuella datorer som är värdar för ett AKS-kluster. AKS identifierar den tillgängliga tillfälliga lagringen på AKS-noder och hämtar dem för volymdistribution. |
Funktionsstöd för olika lagringstyper
Funktionsstöd beror på vilket alternativ för lagring som du väljer. I följande tabell visas viktiga funktioner i Azure Container Storage och anger vilka lagringsalternativ som stöder dem.
Funktion | Lokal NVMe | Lokal SSD | Azure-diskar | Azure Elastic SAN (förhandsversion) |
---|---|---|---|---|
Expansion/storleksändring för lagringspool | Stöds | Stöds | Stöds | Stöds inte |
Replikering | Stöds | Stöds inte | Internt stöd | Förhandsversion |
Resursförbrukning | Stöds | Stöds | Stöds | Förhandsversion |
SSE/CMK | Stöds inte | Stöds inte | Stöds | Förhandsversion |
Alternativet Exponera ZRS | Saknas | Saknas | Stöds | Förhandsversion |
Beständiga volymer | Stöds1 | Stöds1 | Stöds | Förhandsversion |
Tillfälliga volymer | Stöds | Stöds | Stöds | Förhandsversion |
Ögonblicksbilder | Stöds | Stöds | Stöds | Stöds inte |
1 För lokal NVMe och lokal SSD använder Azure Container Storage allmänna tillfälliga volymer som standard, där data inte är beständiga. Du kan dock uppdatera din Azure Container Storage-installation för att stödja skapandet av beständiga volymer från tillfälliga disklagringspooler.
Regional tillgänglighet
Azure Container Storage är endast tillgängligt för en delmängd av Azure-regioner:
- (Afrika) Sydafrika, norra
- (Asien och stillahavsområdet) Australien, östra
- (Asien och Stillahavsområdet) Asien, östra
- (Asien och stillahavsområdet) Japan, östra
- (Asien och Stillahavsområdet) Korea, centrala
- (Asien och Stillahavsområdet) Sydostasien
- (Asien och stillahavsområdet) Indien, centrala
- (Europa) Frankrike, centrala
- (Europa) Tyskland, västra centrala
- (Europa) Europa, norra
- (Europa) Europa, västra
- (Europa) Storbritannien, södra
- (Europa) Sverige, centrala
- (Europa) Schweiz, norra
- (Mellanöstern) Förenade Arabemiraten, norra
- (Nordamerika) USA, östra
- (Nordamerika) USA, östra 2
- (Nordamerika) USA, västra
- (Nordamerika) USA, västra 2
- (Nordamerika) USA, västra 3
- (Nordamerika) USA, centrala
- (Nordamerika) USA, norra centrala
- (Nordamerika) USA, södra centrala
- (Nordamerika) USA, västra centrala
- (Nordamerika) Kanada, centrala
- (Nordamerika) Kanada, östra
- (Sydamerika) Brasilien, södra
Nyheter i Azure Container Storage
Våra senaste uppdateringar förbättrar återhämtning och prestanda för tillståndskänsliga containrar. Vi erbjuder nu lagringspooler i flera zoner och volymreplikering för lokala NVMe-lagringspooler, vilket säkerställer tillgänglighet vid fel med en nod. Stöd för ögonblicksbilder är tillgängligt för alla lagringsalternativ för säkerhetskopiering och haveriberedskap. Dessutom innehåller ephemeral Disk-portföljen nu tillfälligt SSD-stöd, vilket ger kostnadseffektiva lösningar för användningsfall som utnyttjar direktansluten lokal lagring:
- Förbättra motståndskraften för dina beständiga volymer som finns på lokal NVMe-lagring (tillfälliga L-seriens diskar) med replikeringsstöd.
- Förbättrad beständig volymåterställning efter en omstart av ett AKS-kluster (Azure Kubernetes Service).
- Anpassa prestanda för din lokala NVMe-lagring med nya prestandanivåalternativ.
Om du vill ha mer information om dessa funktioner kan du skicka ett e-postmeddelande till Azure Container Storage-teamet på containerstoragepm@microsoft.com.
Varför Azure Container Storage är användbart
Hittills har tillhandahållande av molnlagring för containrar som krävs med hjälp av enskilda CSI-drivrutiner (Container Storage Interface) för att använda lagringstjänster som är avsedda för IaaS-centrera arbetsbelastningar och få dem att fungera för containrar. Detta skapar driftkostnader och ökar risken för problem med programtillgänglighet, skalbarhet, prestanda, användbarhet och kostnad.
Azure Container Storage härleds från OpenEBS, en lösning med öppen källkod som tillhandahåller containerlagringsfunktioner för Kubernetes. Genom att erbjuda en hanterad volymorkestreringslösning via mikrotjänstbaserade lagringsstyrenheter i en Kubernetes-miljö möjliggör Azure Container Storage sann containerbaserad lagring.
Du kan använda Azure Container Storage för att:
Påskynda initiativ för vm-till-container: Azure Container Storage visar hela spektrumet av Azure-blocklagringserbjudanden som tidigare endast var tillgängliga för virtuella datorer och gör dem tillgängliga för containrar. Detta omfattar tillfälliga diskar som ger extremt låg svarstid för arbetsbelastningar som Cassandra, samt Azure Elastic SAN (förhandsversion) som tillhandahåller interna iSCSI- och delade etablerade mål.
Förenkla volymhanteringen med Kubernetes: Genom att tillhandahålla volymorkestrering via Kubernetes-kontrollplanet gör Azure Container Storage det enkelt att distribuera och hantera volymer i Kubernetes – utan att behöva flytta fram och tillbaka mellan olika kontrollplan.
Minska den totala ägandekostnaden (TCO): Förbättra kostnadseffektiviteten genom att öka skalan för beständiga volymer som stöds per podd eller nod. Minska de lagringsresurser som behövs för etablering genom att dynamiskt dela lagringsresurser. Observera att uppskalningsstöd för själva lagringspoolen inte stöds.
Viktiga fördelar
Snabb utskalning av tillståndskänsliga poddar: Azure Container Storage monterar beständiga volymer över protokoll för lagring av nätverksblock (NVMe-oF eller iSCSI), vilket ger snabb koppling och frånkoppling av beständiga volymer. Du kan starta små och distribuera resurser efter behov samtidigt som du ser till att dina program inte är utsvultna eller störda, antingen under initieringen eller i produktion. Programåterhämtningen förbättras med podd-respawns i klustret, vilket kräver snabb förflyttning av beständiga volymer. Med hjälp av fjärrnätverksprotokoll är Azure Container Storage nära kopplat till poddlivscykeln för att stödja mycket motståndskraftiga, högskaliga tillståndskänsliga program i AKS.
Förbättrad prestanda för tillståndskänsliga arbetsbelastningar: Azure Container Storage ger överlägsen läsprestanda och ger skrivprestanda nära disk med hjälp av NVMe-oF över TCP. På så sätt kan kunderna kostnadseffektivt uppfylla prestandakraven för olika containerarbetsbelastningar, inklusive nivå 1-I/O-intensiv, generell användning, dataflödeskänslig och utvecklings-/test. Påskynda anslutnings-/frånkopplingstiden för beständiga volymer och minimera redundanstiden för poddar.
Kubernetes-intern volymorkestrering: Skapa lagringspooler och beständiga volymer, avbilda ögonblicksbilder och hantera hela livscykeln för volymer med hjälp
kubectl
av kommandon utan att växla mellan verktygsuppsättningar för olika kontrollplansåtgärder.
Ordlista
Det är bra att förstå några viktiga termer som rör Azure Container Storage och Kubernetes:
Skapande av behållare
Paketera programkod med endast operativsystemet och nödvändiga beroenden för att skapa en enda körbar fil.
Kubernetes
Kubernetes är ett system med öppen källkod för att automatisera distribution, skalning och hantering av containerbaserade program.
Kluster
Ett Kubernetes-kluster är en uppsättning beräkningsnoder (VM) som kör containerbaserade program. Varje nod hanteras av kontrollplanet och innehåller de tjänster som krävs för att köra poddar.
Balja
En podd är en grupp med en eller flera containrar med delade lagrings- och nätverksresurser och en specifikation för hur containrarna ska köras. En podd är den minsta distributionsbara enheten i ett Kubernetes-kluster.
Azure Kubernetes Service (AKS)
Azure Kubernetes Service är en värdbaserad Kubernetes-tjänst som förenklar distributionen av ett hanterat Kubernetes-kluster i Azure genom att avlasta driftkostnaderna till Azure. Azure hanterar kritiska uppgifter, till exempel hälsoövervakning och underhåll.
Lagringspool
Azure Container Storage-stacken försöker förena objektmodellen mellan klusterägda resurser och plattformsabstraktioner. För att åstadkomma den enhetliga representationen aggregeras den tillgängliga lagringskapaciteten till ett lagringspoolobjekt. Lagringskapaciteten i en lagringspool anses vara homogen. Ett AKS-kluster kan ha flera lagringspooler. Lagringspooler fungerar också som autentiserings- och etableringsgräns. De tillhandahåller en logisk konstruktion för operatörer för att hantera lagringsinfrastrukturen samtidigt som volymskapande och hantering för programutvecklare förenklas.
Lagringsklass
En Kubernetes-lagringsklass definierar hur en lagringsenhet skapas dynamiskt med en beständig volym. Mer information finns i Kubernetes Storage-klasser.
Volume
En Kubernetes-volym är en katalog som innehåller data som är tillgängliga för containrar i en viss podd. Volymer kan vara beständiga eller tillfälliga. Volymer etableras tunt i en lagringspool och delar lagringspoolens prestandaegenskaper (IOPS, bandbredd och kapacitet).
Beständiga volymer
Beständiga volymer är som diskar på en virtuell dator. De representerar en raw-blockenhet som du kan använda för att montera valfritt filsystem. Programutvecklare skapar beständiga volymer tillsammans med sina program- eller podddefinitioner, och volymerna är ofta knutna till livscykeln för det tillståndskänsliga programmet. Mer information finns i Beständiga volymer.
Beständiga volymanspråk (PVC)
Ett beständiga volymanspråk används för att automatiskt etablera lagring baserat på en lagringsklass.