Konfigurera nätverksisolering för Azure Kubernetes Service (AKS)

Slutförd

När du hanterar kluster i Azure Kubernetes Service (AKS) måste du ofta isolera team och arbetsbelastningar. AKS ger flexibilitet i hur du kör kluster med flera klientorganisationer och isolerar resurser. För att maximera din investering i Kubernetes är det viktigt att du förstår AKS funktioner för multitenans och isolering.

Utforma kluster för multitenans

Med Kubernetes kan du logiskt isolera team och arbetsbelastningar i samma kluster. Målet är att ge minst antal behörigheter som är begränsade till de resurser som varje team behöver. Ett Kubernetes-namnområde skapar en logisk isoleringsgräns. Andra Kubernetes-funktioner och överväganden för isolering och flera innehavare omfattar följande områden:

  • Metodtips för klusterisolering i Azure Kubernetes Service (AKS)
    • Utforma kluster för multitenans
      • Schemaläggning
      • Nätverkande
      • Autentisering och auktorisering
      • Behållare
  • Logiskt isolerade kluster
  • Fysiskt isolerade kluster

Schemaläggning

Schemaläggning använder grundläggande funktioner som kvoter för resurser och budgetar för avbrott i poddar.

Mer avancerade scheduler-funktioner är:

  • Taints och toleranser.
  • Nodväljare.
  • Nod- och poddtillhörighet eller antitillhörighet.

Nätverkande

Networking använder nätverksprinciper för att styra flödet av trafik in och ut ur poddar.

Autentisering och auktorisering

Användningsområden för autentisering och auktorisering:

  • Rollbaserad åtkomstkontroll (RBAC).
  • Microsoft Entraintegrering.
  • Poddidentiteter.
  • Hemligheter i Azure Key Vault.

Behållare

Behållare inkluderar:

  • Azure Policy-tillägget för AKS för att genomdriva poddsäkerhet.
  • Podsäkerhetskontroll
  • Genomsöker bilder och körmiljö efter sårbarheter.
  • Använda App Armor eller Seccomp (Säker databehandling) för att begränsa containeråtkomsten till den underliggande noden.

Logiskt isolerade kluster

Vägledning för bästa praxis: Avgränsa team och projekt med logisk isolering. Minimera antalet fysiska AKS-kluster som du distribuerar för att isolera team eller program.

Med logisk isolering kan du använda ett enda AKS-kluster för flera arbetsbelastningar, team eller miljöer. Kubernetes-namnområden utgör den logiska isoleringsgränsen för arbetsbelastningar och resurser.

diagram som visar ett exempel på logiskt isolerade kluster.

Logisk separation av kluster ger vanligtvis en högre podddensitet än fysiskt isolerade kluster, med mindre överskott av beräkningskapacitet som ligger inaktiv i klustret. I kombination med Kubernetes-klustrets autoskalare kan du skala upp eller ned antalet noder för att möta behoven. Den här bästa metoden minimerar kostnaderna genom att bara köra det antal noder som krävs.

Kubernetes-miljöer är inte helt säkra för fientlig användning i en multitenant-miljö. I en miljö med flera klienter arbetar flera klienter med en delad infrastruktur. Om alla hyresgäster inte kan vara betrodda behöver du extra planering för att förhindra att hyresgäster påverkar andras säkerhet och tjänster.

Andra säkerhetsfunktioner, till exempel Kubernetes RBAC för noder, blockerar effektivt kryphål. För sann säkerhet när du kör fientliga multitenantarbetsbelastningar bör du bara lita på ett hypervisor-program. Säkerhetsdomänen för Kubernetes blir hela klustret och inte en enskild nod.

För dessa typer av fientliga multitenantarbetsbelastningar bör du använda fysiskt isolerade kluster.

Fysiskt isolerade kluster

Riktlinjer för bästa praxis: Minimera användningen av fysisk isolering för varje separat team- eller programdistribution och använd logisk isolering i stället.

Fysiskt avgränsande AKS-kluster är en vanlig metod för klusterisolering. I den här isoleringsmodellen tilldelas team eller arbetsbelastningar ett eget AKS-kluster. Fysisk isolering kan se ut som det enklaste sättet att isolera arbetsbelastningar eller team, men den lägger till hantering och ekonomiska omkostnader. Med fysiskt isolerade kluster måste du underhålla flera kluster och individuellt ge åtkomst och tilldela behörigheter. Du debiteras också för varje enskild nod.

diagram som visar ett exempel på fysiskt isolerade kluster.

Fysiskt isolerade kluster har vanligtvis låg podddensitet. Eftersom varje team eller arbetsbelastning har sitt eget AKS-kluster, överskattas ofta klustret med beräkningsresurser. Ofta schemaläggs några poddar på dessa noder. Nodkapacitet som inte har tagits i anspråk kan inte användas för program eller tjänster som utvecklas av andra team. Dessa överskottsresurser bidrar till de extra kostnaderna i fysiskt isolerade kluster.