Dela via


Grundläggande begrepp för Azure Kubernetes Service (AKS)

I den här artikeln beskrivs grundläggande begrepp för Azure Kubernetes Service (AKS), en hanterad Kubernetes-tjänst som du kan använda för att distribuera och använda containerbaserade program i stor skala i Azure.

Vad är Kubernetes?

Kubernetes är en containerorkestreringsplattform med öppen källkod för att automatisera distribution, skalning och hantering av containerbaserade program. Mer information finns i den officiella Kubernetes-dokumentationen.

Vad är AKS?

AKS är en hanterad Kubernetes-tjänst som förenklar distribution, hantering och skalning av containerbaserade program med Kubernetes. Mer information finns i Vad är Azure Kubernetes Service (AKS)?

Klusterkomponenter

Ett AKS-kluster är indelat i två huvudkomponenter:

  • Kontrollplan: Kontrollplanet tillhandahåller kubernetes-kärntjänster och orkestrering av programarbetsbelastningar.
  • Noder: Noder är de underliggande virtuella datorerna som kör dina program.

Skärmbild av Kubernetes-kontrollplans- och nodkomponenter

Kontrollplan

Det hanterade Kontrollplanet i Azure består av flera komponenter som hjälper dig att hantera klustret:

Komponent beskrivning
kube-apiserver API-servern (kube-apiserver) exponerar Kubernetes API för att aktivera begäranden till klustret inifrån och utanför klustret.
etcd etcd är ett nyckelvärdesarkiv med hög tillgänglighet som hjälper till att upprätthålla tillståndet för ditt Kubernetes-kluster och din konfiguration.
kube-scheduler Schemaläggaren (kube-scheduler) hjälper till att fatta schemaläggningsbeslut, letar efter nya poddar utan tilldelad nod och väljer en nod som de ska köras på.
kube-controller-manager Kontrollanthanteraren (kube-controller-manager) kör kontrollantprocesser, till exempel att märka och svara när noderna slutar fungera.
cloud-controller-manager Cloud Controller Manager (cloud-controller-manager) bäddar in molnspecifik kontrolllogik för att köra styrenheter som är specifika för molnleverantören.

Noder

Varje AKS-kluster har minst en nod, vilket är en virtuell Azure-dator (VM) som kör Kubernetes-nodkomponenter. Följande komponenter körs på varje nod:

Komponent beskrivning
kubelet Kubelet säkerställer att containrar körs i en podd.
kube-proxy Kube-proxy är en nätverksproxy som upprätthåller nätverksregler på noder.
containerkörning Containerkörningen hanterar körning och livscykel för containrar.

Skärmbild av en virtuell Azure-dator och stödresurser för en Kubernetes-nod

Nodkonfiguration

VM-storlek och avbildning

Storleken den virtuella Azure-datorn för dina noder definierar processorer, minne, storlek och den tillgängliga lagringstypen, till exempel högpresterande SSD eller vanlig hårddisk. Vilken vm-storlek du väljer beror på arbetsbelastningskraven och antalet poddar som du planerar att köra på varje nod. Mer information finns i VM-storlekar som stöds i Azure Kubernetes Service (AKS).

I AKS baseras VM-avbildningen för klustrets noder på Ubuntu Linux, Azure Linux eller Windows Server 2022. När du skapar ett AKS-kluster eller skalar ut antalet noder skapar och konfigurerar Azure-plattformen automatiskt det begärda antalet virtuella datorer. Agentnoder faktureras som vanliga virtuella datorer, så eventuella vm-storleksrabatter, inklusive Azure-reservationer, tillämpas automatiskt.

OS-diskar

Standardstorleken för OS-diskar används endast i nya kluster eller nodpooler när tillfälliga OS-diskar inte stöds och ingen standardstorlek för OS-disken anges. Mer information finns i Standard os-diskstorlek och tillfälliga OS-diskar.

Resursreservationer

AKS använder nodresurser för att hjälpa noderna att fungera som en del av klustret. Den här användningen kan orsaka en avvikelse mellan nodens totala resurser och de allokerbara resurserna i AKS. För att upprätthålla nodprestanda och -funktioner reserverar AKS två typer av resurser, CPU och minne, på varje nod. Mer information finns i Resursreservationer i AKS.

OS

AKS stöder Ubuntu 22.04 och Azure Linux 2.0 som nodoperativsystem för Linux-nodpooler. För Windows-nodpooler stöder AKS Windows Server 2022 som standardoperativsystem. Windows Server 2019 dras tillbaka när Kubernetes version 1.32 når slutet av livslängden och stöds inte i framtida versioner. Om du behöver uppgradera din Windows OS-version läser du Uppgradera från Windows Server 2019 till Windows Server 2022. Mer information om hur du använder Windows Server på AKS finns i Överväganden för Windows-container i Azure Kubernetes Service (AKS).

Containerkörning

En containerkörning är programvara som kör containrar och hanterar containeravbildningar på en nod. Körningen hjälper till att abstrahera sys-anrop eller OS-specifika funktioner för att köra containrar i Linux eller Windows. För Linux-nodpooler containerd används på Kubernetes version 1.19 och senare. För Windows Server 2019- och 2022-nodpooler containerd är det allmänt tillgängligt och är det enda körningsalternativet i Kubernetes version 1.23 och senare.

Poddar

En podd är en grupp med en eller flera containrar som delar samma nätverks- och lagringsresurser och en specifikation för hur containrarna ska köras. Poddar har vanligtvis en 1:1-mappning med en container, men du kan köra flera containrar i en podd.

Nodpooler

I AKS grupperas noder med samma konfiguration i nodpooler. Dessa nodpooler innehåller de underliggande VM-skalningsuppsättningarna och virtuella datorer som kör dina program. När du skapar ett AKS-kluster definierar du det inledande antalet noder och deras storlek (SKU), som skapar en systemnodpool. Systemnodpooler har det primära syftet att vara värd för kritiska systempoddar, till exempel CoreDNS och konnectivity. För att stödja program som har olika beräknings- eller lagringskrav kan du skapa användarnodpooler. Användarnodpooler har det primära syftet att vara värd för dina programpoddar.

Mer information finns i Skapa nodpooler i AKS och Hantera nodpooler i AKS.

Nodresursgrupp

När du skapar ett AKS-kluster i en Azure-resursgrupp skapar AKS-resursprovidern automatiskt en andra resursgrupp som kallas nodresursgruppen. Den här resursgruppen innehåller alla infrastrukturresurser som är associerade med klustret, inklusive virtuella datorer (VM), vm-skalningsuppsättningar och lagring.

Mer information finns i följande resurser:

Namnrymder

Kubernetes-resurser, till exempel poddar och distributioner, grupperas logiskt i namnområden för att dela upp ett AKS-kluster och skapa, visa eller hantera åtkomst till resurser.

Följande namnområden skapas som standard i ett AKS-kluster:

Namnområde beskrivning
standard Med standardnamnområdet kan du börja använda klusterresurser utan att skapa ett nytt namnområde.
kube-node-lease Kube-node-lease-namnområdet gör det möjligt för noder att kommunicera sin tillgänglighet till kontrollplanet.
kube-public Det kube-offentliga namnområdet används vanligtvis inte, men kan användas för att resurser ska kunna visas i hela klustret av alla användare.
kube-system Kube-system-namnområdet används av Kubernetes för att hantera klusterresurser, till exempel coredns, konnectivity-agentoch metrics-server.

Skärmbild av Kubernetes-namnområden för att logiskt dela upp resurser och program

Klusterlägen

I AKS kan du skapa ett kluster med läget Automatisk (förhandsversion) eller Standard . AKS Automatic ger en mer fullständigt hanterad upplevelse, hantering av klusterkonfiguration, inklusive noder, skalning, säkerhet och andra förkonfigurerade inställningar. AKS Standard ger mer kontroll över klusterkonfigurationen, inklusive möjligheten att hantera nodpooler, skalning och andra inställningar.

Mer information finns i aks automatisk och standard funktion jämförelse.

Prisnivåer

AKS erbjuder tre prisnivåer för klusterhantering: Kostnadsfri, Standard och Premium. Vilken prisnivå du väljer avgör vilka funktioner som är tillgängliga för att hantera klustret.

Mer information finns i Prisnivåer för AKS-klusterhantering.

Kubernetes-versioner som stöds

Mer information finns i Kubernetes-versioner som stöds i AKS.

Nästa steg

Mer information om fler grundläggande begrepp för AKS finns i följande resurser: