Delen via


Breng uw eigen netwerkbeveiligingsgroep (NSG) naar een Azure Red Hat OpenShift-cluster (ARO)

Normaal gesproken moet u bij het instellen van een ARO-cluster een resourcegroep aanwijzen voor het implementeren van het ARO-clusterobject (in het volgende diagram de basisresourcegroep genoemd). In dergelijke scenario's kunt u dezelfde resourcegroep gebruiken voor zowel het virtuele netwerk (VNET) als het cluster, of u kunt kiezen voor een afzonderlijke resourcegroep alleen voor het VNET. Geen van deze resourcegroepen komt rechtstreeks overeen met één ARO-cluster, waardoor u volledige controle over deze groepen krijgt. Dit betekent dat u resources in deze resourcegroepen vrij kunt maken, wijzigen of verwijderen.

Tijdens het maken van het cluster stelt de ARO-resourceprovider (RP) een toegewezen resourcegroep in die specifiek is voor de behoeften van het cluster. Deze groep bevat verschillende clusterspecifieke resources, zoals knooppunt-VM's, load balancers en netwerkbeveiligingsgroepen (NSG's), zoals weergegeven door de beheerde resourcegroep in het volgende diagram. De beheerde resourcegroep is nauw beveiligd en verbiedt wijzigingen in de inhoud ervan, inclusief de NSG die is gekoppeld aan de VNET-subnetten die zijn opgegeven tijdens het maken van het cluster. In sommige situaties voldoet de NSG die is gegenereerd door de ARO-RP mogelijk niet aan het beveiligingsbeleid van bepaalde organisaties.

Diagram met een overzicht van de werking van netwerkbeveiligingsgroepen in een typisch ARO-cluster.

In dit artikel wordt beschreven hoe u de functie Bring Your Own Network Security Group (NSG) kunt gebruiken om uw eigen vooraf geconfigureerde NSG te koppelen die zich in de Base/VNET-resourcegroep (RG) bevindt (weergegeven in het volgende diagram als BYO-NSG) aan de ARO-clustersubnetten. Omdat u eigenaar bent van deze vooraf geconfigureerde NSG, kunt u regels toevoegen/verwijderen tijdens de levensduur van het ARO-cluster.

Diagram met een overzicht van hoe u uw eigen netwerkbeveiligingsgroep kunt gebruiken in Azure Red Hat OpenShift.

Algemene mogelijkheden en beperkingen

  • U moet uw vooraf geconfigureerde NSG's koppelen aan zowel hoofd- als werksubnetten voordat u het cluster maakt. Als u uw vooraf geconfigureerde NSG's niet aan beide subnetten koppelt, treedt er een fout op.

  • U kunt ervoor kiezen om dezelfde of verschillende vooraf geconfigureerde NSG's te gebruiken voor hoofd- en werksubnetten.

  • Wanneer u uw eigen NSG gebruikt, maakt de ARO-RP nog steeds een NSG in de beheerde resourcegroep (standaard-NSG), maar die NSG is niet gekoppeld aan de werkrol- of hoofdsubnetten.

  • U kunt de vooraf geconfigureerde NSG-functie niet inschakelen op een bestaand ARO-cluster. Deze functie kan momenteel alleen worden ingeschakeld op het moment dat het cluster wordt gemaakt.

  • De vooraf geconfigureerde NSG-optie kan niet worden geconfigureerd vanuit Azure Portal.

  • Als u deze functie tijdens de preview-versie hebt gebruikt, worden uw bestaande vooraf geconfigureerde clusters nu volledig ondersteund.

Notitie

Als u de functie Bring Your Own NSG gebruikt en NSG-stroomlogboeken wilt gebruiken, raadpleegt u Stroomlogboekregistratie voor netwerkbeveiligingsgroepen in de Documentatie van Azure Network Watcher, in plaats van de documentatie voor specifieke ARO-stroomlogboeken (die niet werken met de functie Bring Your Own NSG).

Regels gebruiken

Waarschuwing

Vooraf geconfigureerde NSG's worden niet automatisch bijgewerkt met regels wanneer u Services van het type Kubernetes LoadBalancer of OpenShift-routes in het ARO-cluster maakt. Daarom moet u deze regels handmatig bijwerken, indien nodig. Dit gedrag verschilt van het oorspronkelijke ARO-gedrag waarbij de standaard-NSG programmatisch wordt bijgewerkt in dergelijke situaties.

  • De standaard-ARO-cluster-NSG (niet gekoppeld aan een subnet tijdens het gebruik van deze functie) wordt nog steeds bijgewerkt met regels wanneer u Kubernetes LoadBalancer-typeservices of OpenShift-routes binnen het ARO-cluster maakt.

  • U kunt vooraf geconfigureerde NSG's loskoppelen van de subnetten van het cluster dat met deze functie is gemaakt. Dit resulteert in een cluster met subnetten zonder NSG's. Vervolgens kunt u een andere set vooraf geconfigureerde NSG's aan het cluster koppelen. U kunt de standaard-ARO-NSG ook koppelen aan de clustersubnetten (op dat moment wordt uw cluster net als elk ander cluster dat deze functie niet gebruikt).

  • Uw vooraf geconfigureerde NSG's mogen geen REGELS voor INKOMEND/UITGAAND WEIGEREN van de volgende typen hebben, omdat deze de werking van het cluster kunnen verstoren en/of de ARO-ondersteuning/SRE-teams geen ondersteuning/beheer kunnen bieden. (Hier geeft het subnet een of alle IP-adressen in het subnet en alle poorten aan die overeenkomen met dat subnet):

    • Hoofdsubnet ←→ hoofdsubnet

    • Worker Subnet ←→ Worker Subnet

    • Hoofdsubnet ←→ Worker-subnet

    • Onjuist geconfigureerde regels resulteren in een signaal dat door Azure Monitor wordt gebruikt om problemen met vooraf geconfigureerde NSG's op te lossen.

  • Als u inkomend verkeer naar uw openbare ARO-cluster wilt toestaan, stelt u de volgende REGELS voor INKOMEND TOESTAAN (of gelijkwaardig) in uw NSG in. Raadpleeg de standaard-NSG van het cluster voor specifieke details en de voorbeeld-NSG die wordt weergegeven in Implementatie. U kunt een cluster maken, zelfs zonder dergelijke regels in de NSG.

    • Voor api-servertoegang → van internet (of de bron-IP's van uw voorkeur) naar poort 6443 op het hoofdsubnet.
    • Voor toegang tot OpenShift-router (en dus naar OpenShift-console en OpenShift-routes) → Van internet (of de bron-IP's van uw voorkeur) naar poorten 80 en 443 op het openbare IP-adres van de standaard-v4 op de openbare load balancer van het cluster.
    • Voor toegang tot een Load Balancer-type Kubernetes-service → Van internet (of de bron-IP's van uw voorkeur) naar servicepoorten op openbaar IP-adres dat overeenkomt met de service op de openbare load balancer van het cluster.

Implementatie

VNET maken en vooraf geconfigureerde NSG maken en configureren

  1. Maak een VNET en maak vervolgens hoofd- en werksubnetten hierin.

  2. Maak vooraf geconfigureerde NSG's met standaardregels (of helemaal geen regels) en koppel deze aan de hoofd- en werkrolsubnetten.

Een ARO-cluster maken en vooraf geconfigureerde NSG's bijwerken

  1. Het cluster maken.

    az aro create \
    --resource-group BASE_RESOURCE_GROUP_NAME \
    --name CLUSTER_NAME \
    --vnet VNET_NAME \
    --master-subnet MASTER_SUBNET_NAME \
    --worker-subnet WORKER_SUBNET_NAME \
    --client-id CLUSTER_SERVICE_PRINCIPAL_ID \
    --client-secret CLUSTER_SERVICE_PRINCIPAL_SECRET \
    --enable-preconfigured-nsg
    
  2. Werk de vooraf geconfigureerde NSG's bij met regels op basis van uw vereisten, terwijl u ook rekening houdt met de punten die worden vermeld in Mogelijkheden en beperkingen.

    In het volgende voorbeeld ziet u de openbare load balancer van het cluster, zoals wordt weergegeven in de schermopname/CLI-uitvoer:

    Schermopname van de openbare load balancer van het cluster, zoals weergegeven met de uitvoer van de opdracht.

    $ oc get svc | grep tools
    tools LoadBalancer 172.30.182.7 20.141.176.3 80:30520/TCP 143m
    $ $ oc get svc -n openshift-ingress | grep Load
    router-default LoadBalancer 172.30.105.218 20.159.139.208 80:31157/TCP,443:31177/TCP 
    5d20
    

    Schermopname van beveiligingsregels voor binnenkomend en uitgaand verkeer.