Hoppa till innehållet
Stackship-dokumentation English

BoundariesAdministratörerMaskinöversatt

Boundary-nätverk för driften

Hur plattformen håller boundaryns nätverksregler på plats, modulinställningarna som formar dem, och hur du slår på trafikuppgifterna bakom fliken Nätverk.

Vad reglerna tillåter och blockerar beskrivs för användare i Nätverksisolering och, regel för regel, i Nätverksregler och orsaker. Den här sidan handlar om hur de hålls på plats.

Hur reglerna hålls på plats

Boundaries-modulen räknar fram reglerna för varje projektion — en boundary på ett kluster — och tillämpar dem på namnrymderna för boundaryns resursgrupper på det klustret. Det sker när modulen startar och sedan i en genomgång var femte minut. En ny resursgrupps namnrymd får sina regler vid nästa genomgång: att resursgruppen skapas startar ingen genomgång, och tills den körs begränsar ingen boundary-regel namnrymdens trafik. Varje projektion hanteras för sig, så ett kluster som inte går att nå håller inte upp de andra. En ny projektion vars genomgång misslyckas rapporteras som Failed tills en genomgång lyckas; en projektion som redan är Active förblir Active och prövas igen vid nästa genomgång.

Reglerna är vanliga Kubernetes NetworkPolicies, märkta med app.kubernetes.io/managed-by=stackship-boundary och, med sitt syfte, platform.stackship.se/netpol-type (default-deny, allow-same-boundary, allow-runtime-egress och så vidare).

Plattformen är den enda författaren

Som standard tar modulen bort varje NetworkPolicy i en boundarys resursgruppsnamnrymder som den inte själv har skrivit, så att ingen med åtkomst till en namnrymd kan luckra upp dess isolering. Den rör aldrig andra namnrymder. Inställningen Boundaries__NetpolReconciler__PruneUnmanagedPolicies=false begränsar städningen till modulens egna policyer, för när en annan betrodd kontroller också måste skriva policyer där.

Inställningar som formar reglerna

Inställning Standard Vad den avgör
Boundaries__NetpolReconciler__IngressNamespace sätts av installationsprogrammet Namnrymden för ingress-kontrollern, som får nå varje arbetslast.
Boundaries__NetpolReconciler__ApiServerCidrs__0 (och fler index) 0.0.0.0/0 Var arbetslaster får nå Kubernetes API-server. Standardvärdet låter varje arbetslast öppna API-serverns port mot vilken adress som helst; begränsa det till kontrollplanets adresser.
Boundaries__NetpolReconciler__ApiServerPort 6443 API-serverns port bakom tjänsten kubernetes.
Boundaries__NetpolReconciler__DatabaseOperatorNamespace cnpg-system Var databasoperatorn körs.
Boundaries__NetpolReconciler__DatabaseOperatorIngressPorts__0 8000 De portar databasoperatorn får nå på databaser.
Boundaries__NetpolReconciler__SweepInterval 00:05:00 Hur ofta reglerna tillämpas på nytt.

Trafikuppgifter för fliken Nätverk

Nåbarhetskontrollen på fliken Nätverk fungerar på alla kluster. Uppgifterna om vad som faktiskt blockerades, och trafikdiagrammet, kräver Calicos flödesloggar, som Calico 3.30 och senare tillhandahåller när det är installerat med Tigera-operatorn.

  • Före installationen rapporterar installationsprogrammets steg Prerequisites Network Flow Visibility: om Calico finns, dess version och om flödesloggar kan slås på. Det är bara rådgivande och stoppar aldrig en installation.
  • Slå på dem. Livscykelmodulen slår själv på Calicos flödesloggar när den renderar modulkonfiguration vid en utrullning eller en modulinstallation, om klustret kör en Calico som stöder dem och de inte redan är på. Lifecycle__NetworkFlows__AutoEnable=false på livscykelmodulen stänger av det. När livscykelmodulens konto saknar behörigheten loggar den en varning som nämner stackship-module-network-flows och lämnar flödesloggarna avstängda; lägg då i stället till Calicos resurser Goldmane och Whisker, båda med namnet default, för hand.
  • Peka boundaries-modulen mot dem. Boundaries-modulen läser uppgifterna från adressen i Boundaries__Flows__BaseUrl; tomt betyder avstängt, vilket är så en ny installation börjar. Nästa utrullning som renderar boundaries-modulens konfiguration efter att flödesloggarna slagits på fyller i adressen den hittar i klustret där plattformen körs.

Uppgifterna läses var 30:e sekund. Blockerade anslutningar sparas i 14 dagar och tillåten trafik i 7 dagar.