Hantera flera AKS-kluster med Azure Kubernetes Fleet Manager

Varför fleraklusterhantering är viktigt

När organisationer mognar i sin Kubernetes-användning visar sig enskilda kluster snabbt ha sina begränsningar. Team behöver flera kluster för geografisk distribution för att betjäna användare närmare deras plats, för arbetsbelastningsisolering för att separera produktion från staging och utveckling, och för att skala bortom resursgränserna för ett enda kluster. Vissa branscher kräver kluster i specifika regioner för regelefterlevnad kring datalagring, medan andra behöver separata kluster för olika affärsenheter eller team.

Att hantera dessa kluster individuellt blir en operativ börda. Varje kluster behöver sin egen uppgraderingscykel, sin egen övervakningskonfiguration och sin egen uppsättning policyer. Utan ett enhetligt kontrollplan är konfigurationsavdrift oundviklig, och en rutinuppdatering kan bli en flerdagars samordningsinsats mellan team.

Det är precis det här problemet som Azure Kubernetes Fleet Manager är byggt för att lösa.

Vad är Azure Kubernetes Fleet Manager

Azure Kubernetes Fleet Manager är en fleraklusterhanteringstjänst som ger ett enda kontrollplan för att orkestrera operationer över flera AKS-kluster. Istället för att behandla varje kluster som en oberoende enhet introducerar Fleet Manager en flottabstraktion som låter dig hantera grupper av kluster som en sammanhängande enhet.

Arkitekturen centreras kring tre nyckelkoncept. Hubbklustret är det centrala kontrollplanet som Fleet Manager tillhandahåller och hanterar. Det lagrar flottresurser och koordinerar operationer över alla medlemskluster. Medlemskluster är dina befintliga AKS-kluster som du ansluter till flottan. De fortsätter att köra dina arbetsbelastningar som förut, men tar nu emot koordinerade uppdateringar och policyer från hubben. Flottresurser är Kubernetes-objekt som du definierar en gång på hubben och låter Fleet Manager sprida till lämpliga medlemskluster.

Du kan skapa en flotta med eller utan ett hubbkluster. En flotta utan hubb är tillräcklig om du bara behöver uppdateringsorkestrering. En flotta med hubbkluster låser upp arbetsbelastningspropagering och flerakluster-nätverksfunktioner.

Uppdateringsorkestrering: Kontrollerade utrullningar över kluster

En av Fleet Managers mest värdefulla funktioner är koordinerad uppdateringshantering. Istället för att manuellt uppgradera varje kluster och hoppas att inget går sönder definierar du uppdateringsstrategier som styr hur uppdateringar rullas ut över din flotta.

En uppdateringsstrategi består av steg, där varje steg innehåller en eller flera grupper av kluster. Fleet Manager bearbetar steg sekventiellt men kan uppdatera kluster inom en grupp parallellt. Mellan stegen kan du konfigurera vänteperioder som ger dig tid att validera att föregående steg slutfördes framgångsrikt innan du fortsätter.

Till exempel kan du definiera en trestegsstrategi: först uppdatera dina utvecklingskluster, vänta på validering, sedan uppdatera staging-kluster, vänta igen, och slutligen uppdatera produktionskluster. Om ett problem upptäcks i något steg kan du stoppa utrullningen innan den når produktion.

Uppdateringskörningar är det faktiska utförandet av en uppdateringsstrategi. Varje körning riktar sig mot en specifik Kubernetes-version eller nodavbildningsversion och tillämpar den enligt strategin du definierat. Du kan övervaka framstegen för varje körning och se vilka kluster som har uppdaterats, vilka som pågår och vilka som väntar.

Detta stegvisa tillvägagångssätt minskar dramatiskt risken för flottövergripande avbrott från en problematisk uppdatering och tillämpar samma progressiva leveransprinciper som team använder för applikationsdriftsättningar på infrastrukturhantering.

Flerakluster-lastbalansering med serviceexport

För organisationer som behöver trafikdistribution över kluster i olika regioner erbjuder Fleet Manager flerakluster L4-lastbalansering genom serviceexport. Denna funktion gör det möjligt att exponera en Kubernetes-tjänst från flera medlemskluster bakom en enda Azure Load Balancer-slutpunkt.

När en tjänst exporteras från flera kluster hanterar Fleet Manager automatiskt trafikdirigeringen. Om ett kluster blir ohälsosamt omdirigeras trafiken till friska kluster utan manuell åtgärd. Detta skapar en motståndskraftig, flerregional tjänstearkitektur utan att kräva extern lastbalanseringsinfrastruktur eller komplexa DNS-failoverkonfigurationer.

Serviceexportmekanismen använder standard Kubernetes-resurstyper utökade med flottsemantik, vilket håller den operativa modellen bekant för team som redan arbetar med Kubernetes.

Egenskapsbaserad schemaläggning för arbetsbelastningsplacering

En betydande funktion som för närvarande är i förhandsversion är egenskapsbaserad schemaläggning, som gör det möjligt att definiera placeringspolicyer för arbetsbelastningar baserat på klusteregenskaper. Istället för att manuellt bestämma vilka arbetsbelastningar som körs på vilka kluster uttrycker du din avsikt genom begränsningar och preferenser, och Fleet Manager hanterar placeringen.

Till exempel kan du ange att en arbetsbelastning bara ska köras på kluster i EU-regioner för regelefterlevnad kring datalagring, eller att den ska föredra kluster med GPU-nodpooler för maskininlärningsarbetsbelastningar. Du kan kombinera kostnadsoptimering med tillgänglighetskrav genom att sprida arbetsbelastningar över det minsta antal kluster som behövs för att uppfylla dina redundansmål.

Detta deklarativa tillvägagångssätt för arbetsbelastningsplacering tar bort den manuella samordningsoverheaden och säkerställer att placeringsbeslut konsekvent tillämpas när kluster ansluter till eller lämnar flottan.

När ska man använda Fleet Manager jämfört med individuell klusterhantering

Fleet Manager är inte nödvändigt för varje AKS-driftsättning. Om du driver ett enda kluster eller ett litet antal kluster som sällan ändras kanske overheaden med att sätta upp en flotta inte är motiverad. De direkta AKS-hanteringsverktygen och Infrastructure as Code-metoder fungerar bra för dessa scenarier.

Fleet Manager blir värdefullt när du har fem eller fler kluster som behöver koordinerade uppdateringar, när du driver kluster i flera regioner och behöver trafikhantering mellan dem, eller när din organisation har flera team som hanterar sina egna kluster men kräver konsekventa policyer och uppgraderingsscheman.

Tjänsten är också särskilt användbar för organisationer som antar en modell med kluster-per-miljö eller kluster-per-team, där antalet kluster växer proportionellt med organisationen.

Kom igång

Fleet Manager är allmänt tillgängligt och ingår i din Azure-prenumeration utan extra kostnad för själva flottresursen. Du betalar bara för de underliggande AKS-klustren och eventuella hubbklusterresurser.

För att utforska alla funktioner och sätta upp din första flotta, se den officiella Azure Kubernetes Fleet Manager-dokumentationen. För detaljer om de senaste allmänt tillgängliga funktionerna för arbetsbelastningsorkestrering, kolla Azure-uppdateringsmeddelandet.

För organisationer som redan kör flera AKS-kluster erbjuder Fleet Manager en meningsfull minskning av operativ komplexitet. Investeringen i att sätta upp en flotta betalar sig själv första gången en koordinerad uppdatering löper smidigt över alla dina kluster medan du fokuserar på annat arbete.

Daniel Moquist

Författare

maj 20, 2025

Daniel Moquist

Cloud Architect & DevOps Expert

Hantera flera AKS-kluster med Azure Kubernetes Fleet Manager | MADIT