Nätverksbegrepp för Azure Red Hat OpenShift

Den här guiden innehåller en översikt över Azure Red Hat OpenShift-nätverk på OpenShift 4-kluster, tillsammans med ett diagram och en lista över viktiga slutpunkter. Mer information om grundläggande nätverkskoncept för OpenShift finns i nätverksdokumentationen för Azure Red Hat OpenShift 4.

Diagram över Azure Red Hat OpenShift-nätverk.

När du distribuerar Azure Red Hat OpenShift på OpenShift 4 finns hela klustret i ett virtuellt nätverk. I det här virtuella nätverket finns dina kontrollplansnoder och arbetsnoder i sitt eget undernät. Varje undernät använder en intern lastbalanserare och en offentlig lastbalanserare.

Anteckning

Information om de senaste ändringarna i ARO finns i Nyheter med Azure Red Hat OpenShift.

Nätverkskomponenter

I följande lista beskrivs viktiga nätverkskomponenter i ett Azure Red Hat OpenShift-kluster.

  • aro-pls

    • Den här Azure Private Link slutpunkten används av Microsofts och Red Hat-webbplatsens tillförlitlighetstekniker för att hantera klustret.
  • aro-internal

    • Den här slutpunkten balanserar trafik till API-servern och intern tjänsttrafik. Kontrollplansnoder och arbetsnoder finns i serverdelspoolen.
    • Den här lastbalanseraren skapas inte som standard. Den skapas när du har skapat en tjänst av typen LoadBalancer med rätt anteckningar. Till exempel: service.beta.kubernetes.io/azure-load-balancer-internal: "true".
  • Aro

    • Den här slutpunkten används för all offentlig trafik. När du skapar ett program och en väg är den här slutpunkten sökvägen för inkommande trafik.
    • Den här slutpunkten dirigerar och balanserar även trafik till API-servern (om API:et är offentligt). Den här slutpunkten tilldelar en offentlig utgående IP-adress så att kontrollplan kan komma åt Azure Resource Manager och rapportera om klusterhälsa.
    • Den här lastbalanseraren omfattar även utgående Internetanslutning från alla poddar som körs i arbetsnoderna via Azure Load Balancer regler för utgående trafik.
      • Regler för utgående trafik kan för närvarande inte konfigureras. De allokerar 1 024 TCP-portar till varje nod.
      • DisableOutboundSnat har inte konfigurerats i lb-reglerna, så poddar kan hämtas som utgående IP-adress för alla offentliga IP-adresser som konfigurerats i denna ALB.
      • Som en följd av de två föregående punkterna är det enda sättet att lägga till tillfälliga SNAT-portar genom att lägga till offentliga LoadBalancer-tjänster i ARO.
  • aro-nsg

    • När du exponerar en tjänst skapar API:et en regel i den här nätverkssäkerhetsgruppen så att trafiken flödar genom och når kontrollplanet och noderna via port 6443.
    • Som standard tillåter den här nätverkssäkerhetsgruppen all utgående trafik. För närvarande kan utgående trafik endast begränsas till kontrollplanet Azure Red Hat OpenShift.
  • Azure Container Registry

    • Det här containerregistret tillhandahålls och används av Microsoft internt. Den är skrivskyddad och är inte avsedd att användas av Azure Red Hat OpenShift-användare.
      • Det här registret innehåller värdplattformsavbildningar och klusterkomponenter. Till exempel övervaknings- eller loggningscontainrar.
      • Anslutningar till det här registret sker via tjänstslutpunkten (intern anslutning mellan Azure-tjänster).
      • Som standard är det här interna registret inte tillgängligt utanför klustret.
  • Private Link

    • En Private Link tillåter nätverksanslutning från hanteringsplanet till ett kluster. Detta används av Microsofts och Red Hat-webbplatsens tillförlitlighetstekniker för att hantera ditt kluster.

Nätverksprinciper

  • Inkommande: Principen för inkommande nätverk stöds som en del av OpenShift SDN. Den här nätverksprincipen är aktiverad som standard och framtvingandet utförs av användarna. Även om ingressnätverksprincipen är V1 NetworkPolicy-kompatibel stöds inte typerna Egress och IPBlock.

  • Utgående: Principerna för utgående nätverk stöds med hjälp av funktionen för utgående brandvägg i OpenShift. Det finns bara en utgående princip per namnområde/projekt. Utgående principer stöds inte i namnområdet "standard" och utvärderas i ordning (först till sist).

Grunderna om nätverk i OpenShift

OpenShift Software Defined Networking (SDN) används för att konfigurera ett överläggsnätverk med hjälp av Open vSwitch (OVS), en OpenFlow-implementering baserat på CNI-specifikationen (Container Network Interface). SDN stöder olika plugin-program. Network Policy är plugin-programmet som används i Azure Red Hat på OpenShift 4. All nätverkskommunikation hanteras av SDN, så inga extra vägar behövs på dina virtuella nätverk för att uppnå podd-till-pod-kommunikation.

Nätverk för Azure Red Hat OpenShift

Följande nätverksfunktioner är specifika för Azure Red Hat OpenShift:

  • Användare kan skapa sina Azure Red Hat OpenShift-kluster i ett befintligt virtuellt nätverk eller skapa ett nytt virtuellt nätverk när de skapar sitt kluster.
  • Podd- och tjänstnätverks-CIDR kan konfigureras.
  • Noder och kontrollplan finns i olika undernät.
  • Noder och kontrollplanets virtuella nätverksundernät bör vara minst /27.
  • Standard-Pod CIDR är 10.128.0.0/14.
  • Standardtjänst-CIDR är 172.30.0.0/16.
  • Podd- och tjänstnätverks-CIDR får inte överlappa med andra adressintervall som används i nätverket. De får inte ligga inom ip-adressintervallet för det virtuella nätverket i klustret.
  • Podd-CIDR bör vara minst /18 i storlek. (Poddnätverket är icke-dirigerbara IP-adresser och används endast i OpenShift SDN.)
  • Varje nod tilldelas /23 undernät (512 IP-adresser) för sina poddar. Det går inte att ändra det här värdet.
  • Du kan inte koppla en podd till flera nätverk.
  • Du kan inte konfigurera en statisk IP-adress för utgående trafik. (Den här begränsningen är en OpenShift-funktion. Mer information finns i konfigurera utgående IP-adresser).

Nätverksinställningar

Följande nätverksinställningar är tillgängliga för Azure Red Hat OpenShift 4-kluster:

  • API-synlighet – Ange API-synlighet när du kör kommandot az aro create.
    • "Offentlig" – API Server är tillgänglig för externa nätverk.
    • "Privat" – API-servern tilldelade en privat IP-adress från kontrollplanets undernät, som endast är tillgängligt med anslutna nätverk (peerkopplade virtuella nätverk och andra undernät i klustret).
  • Ingående synlighet – Ange API-synligheten när du kör kommandot az aro create.
    • "Offentliga" vägar är som standard offentliga Standard Load Balancer. (Standardvärdet kan ändras.)
    • "Privata" vägar är som standard en intern lastbalanserare. (Standardvärdet kan ändras.)

Nätverkssäkerhetsgrupper

Nätverkssäkerhetsgrupper skapas i nodens resursgrupp, som är låst för användarna. Nätverkssäkerhetsgrupperna tilldelas direkt till undernäten, inte på nodens nätverkskort. Nätverkssäkerhetsgrupperna är oföränderliga. Användarna har inte behörighet att ändra dem.

Med en offentligt synlig API-server kan du inte skapa nätverkssäkerhetsgrupper och tilldela dem till nätverkskorten.

Vidarebefordran av domän

Azure Red Hat OpenShift använder CoreDNS. Vidarebefordran av domäner kan konfigureras. Du kan inte ta med din egen DNS till dina virtuella nätverk. Mer information finns i dokumentationen om hur du använder DNS-vidarebefordring.

Nästa steg

Mer information om utgående trafik och vad Azure Red Hat OpenShift stöder för utgående trafik finns i dokumentationen om supportprinciper .