Compartir a través de


Traiga su propio grupo de seguridad de red (NSG) a un clúster de Red Hat OpenShift (ARO) de Azure

Normalmente, al configurar un clúster de ARO, debe designar un grupo de recursos para implementar el objeto de clúster de ARO (denominado Grupo de recursos base en el diagrama siguiente). En estos escenarios, puede usar el mismo grupo de recursos para la red virtual (VNET) y el clúster, o puede optar por un grupo de recursos independiente únicamente para la red virtual. Ninguno de estos grupos de recursos corresponde directamente a un único clúster de ARO, lo que le concede un control completo sobre ellos. Esto significa que puede crear, modificar o eliminar recursos libremente dentro de estos grupos de recursos.

Durante el proceso de creación del clúster, el proveedor de recursos de ARO (RP) establece un grupo de recursos dedicado específico de las necesidades del clúster. Este grupo alberga varios recursos específicos del clúster, como máquinas virtuales de nodo, equilibradores de carga y grupos de seguridad de red (NSG), como se muestra en el grupo de recursos administrados en el diagrama siguiente. El grupo de recursos administrados está estrechamente protegido, lo que prohíbe cualquier modificación en su contenido, incluido el grupo de seguridad de red vinculado a las subredes de red virtual especificadas durante la creación del clúster. En algunas situaciones, el grupo de seguridad de red generado por el RP de ARO podría no cumplir las directivas de seguridad de determinadas organizaciones.

Diagrama que muestra información general sobre cómo funcionan los grupos de seguridad de red en un clúster de ARO típico.

En este artículo se muestra cómo usar la característica "traiga su propio" grupo de seguridad de red (NSG) para adjuntar su propio grupo de seguridad de red preconfigurado que resida en el grupo de recursos Base/VNET (RG) (que se muestra en el diagrama siguiente como BYO-NSG) a las subredes del clúster de ARO. Dado que posee este NSG preconfigurado, puede agregar o quitar reglas durante la vida útil del clúster de ARO.

Diagrama que muestra información general sobre cómo funciona traer su propio grupo de seguridad de red en Red Hat OpenShift en Azure.

Funcionalidades y limitaciones generales

  • Debe adjuntar los NSGs preconfigurados tanto a las subredes principales como a las de trabajo antes de crear el clúster. Si no se adjuntan los NSG preconfigurados a ambas subredes, se producirá un error.

  • Puede optar por usar los grupos de seguridad de red preconfigurados, ya sean los mismos o diferentes, para las subredes principales y de trabajo.

  • Al usar su propio grupo de seguridad de red (NSG), el RP de ARO todavía crea un NSG en el grupo de recursos administrado (NSG predeterminado), pero ese NSG no está asociado a las subredes de trabajo ni de gestión.

  • No se puede habilitar la característica de NSG preconfigurada en un clúster de ARO existente. Actualmente, esta característica solo se puede habilitar en el momento de la creación del clúster.

  • La opción NSG preconfigurada no se puede configurar desde Azure Portal.

  • Si usó esta característica durante la versión preliminar, los clústeres preconfigurados existentes ahora son totalmente compatibles.

Nota:

Si usa la característica "proporcione su propio" grupo de seguridad de red y desea utilizar registros de flujo de NSG, consulte la documentación Registro de flujo para grupos de seguridad de red en Azure Network Watcher, en lugar de la documentación del registro de flujo específico de ARO (que no funcionará con la característica de proporcionar su propio NSG).

Uso de reglas

Advertencia

Los NSG preconfigurados no se actualizan automáticamente con reglas al crear servicios de tipo LoadBalancer de Kubernetes o rutas de OpenShift dentro del clúster de ARO. Por lo tanto, debe actualizar estas reglas manualmente, según sea necesario. Este comportamiento es diferente del comportamiento de ARO original, donde el NSG predeterminado se actualiza mediante programación en tales situaciones.

  • El grupo de seguridad de red (NSG) del clúster ARO predeterminado (no asociado a ninguna subred cuando se utiliza esta característica) seguirá actualizándose con reglas al crear servicios de tipo LoadBalancer para Kubernetes o rutas de OpenShift en el clúster de ARO.

  • Puede desasociar los NSG preconfigurados de las subredes del clúster creados con esta característica. Da como resultado un clúster con subredes que no tienen NSG. A continuación, puede adjuntar un conjunto diferente de grupos de seguridad de red preconfigurados al clúster. Como alternativa, puede adjuntar el grupo de seguridad de red predeterminado de ARO a las subredes del clúster (en cuyo punto el clúster se convierte como cualquier otro clúster que no use esta característica).

  • Tus NSG preconfigurados no deben tener reglas INBOUND/OUTBOUND DENY de los siguientes tipos, ya que pueden interferir con el funcionamiento del clúster o impedir que los equipos de soporte/SRE de ARO proporcionen soporte o gestión. (Aquí, la subred indica cualquiera o todas las direcciones IP de la subred y todos los puertos correspondientes a esa subred):

    • Subred Maestra ←→ Subred Maestra

    • Subred de trabajo ←→ subred de trabajo

    • Subred maestra ←→ subred de trabajo

    • Las reglas mal configuradas dan lugar a una señal usada por Azure Monitor para ayudar a solucionar problemas de NSG preconfigurados.

  • Para permitir el tráfico entrante al clúster público de ARO, establezca las siguientes reglas INBOUND ALLOW (o equivalentes) en el grupo de seguridad de red. Consulte el grupo de seguridad de red predeterminado del clúster para obtener detalles específicos y el grupo de seguridad de red de ejemplo que se muestra en Implementación. Puede crear un clúster incluso sin reglas de este tipo en el NSG.

    • Para el acceso del servidor de API → Desde Internet (o las direcciones IP de origen preferidas) al puerto 6443 en la subred maestra.
    • Para acceder al enrutador de OpenShift (y, por lo tanto, a la consola de OpenShift y a las rutas de OpenShift) → Desde Internet (o las direcciones IP de origen preferidas) a los puertos 80 y 443 en la dirección IP pública predeterminada v4 en el equilibrador de carga público del clúster.
    • Para acceder a cualquier servicio de tipo equilibrador de carga de Kubernetes → Desde Internet (o tus direcciones IP de origen preferidas) hasta los puertos del servicio en la dirección IP pública correspondiente al servicio en el equilibrador de carga público del clúster.

Despliegue

Crear una red virtual y crear y configurar un NSG preconfigurado

  1. Cree una red virtual y, a continuación, cree subredes maestras y de trabajo dentro de ella.

  2. Cree grupos de seguridad de red preconfigurados con reglas predeterminadas (o ninguna regla) y adjunte a las subredes maestras y de trabajo.

Crea un clúster de ARO y actualiza NSGs preconfiguradas

  1. Cree el clúster.

    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. Actualice los NSG preconfigurados con reglas según sus requisitos, a la vez que tenga en cuenta los puntos mencionados en Funcionalidades y limitaciones.

    En el ejemplo siguiente se incluye el equilibrador de carga público del clúster, como se muestra en la captura de pantalla o salida de la CLI:

    Captura de pantalla del equilibrador de carga público del clúster, tal como se muestra con la salida del comando .

    $ 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
    

    Captura de pantalla que muestra las reglas de seguridad entrantes y salientes.