Configuración de red de Managed Service para Apache Spark

Configurar una red de nube privada virtual (VPC) para Managed Service para Apache Spark te permite conectar de forma segura las cargas de trabajo a los recursos internos del proyecto y a las APIs de Google. Esta configuración de subred y firewall ayuda a que los controladores y ejecutores de Spark se comuniquen directamente y, al mismo tiempo, cumplan con las políticas de seguridad de tu organización.

Requisitos de la red de VPC

En este documento, se describen los requisitos de red de VPC para las cargas de trabajo por lotes y las sesiones interactivas de Managed Service para Apache Spark.

Acceso privado a Google

Las cargas de trabajo por lotes y las sesiones interactivas de Managed Service para Apache Spark se ejecutan en VMs solo con direcciones IP internas y en una subred regional con el Acceso privado a Google (PGA) habilitado automáticamente en la subred.

Si no especificas una subred, Managed Service para Apache Spark selecciona la subred default en la región de la carga de trabajo por lotes o de la sesión como la subred para una carga de trabajo por lotes o una sesión.

Si tu carga de trabajo requiere acceso a Internet o a una red externa, por ejemplo, para descargar recursos como modelos de AA de PyTorch Hub o Hugging Face, puedes configurar Cloud NAT para permitir el tráfico saliente con IP internas en tu red de VPC.

Conectividad de subred abierta

La subred de VPC de la región seleccionada para la carga de trabajo por lotes o la sesión interactiva de Managed Service para Apache Spark debe permitir la comunicación interna en todos los puertos entre las instancias de VM dentro de la subred.

Para evitar que las secuencias de comandos maliciosas en una carga de trabajo afecten a otras, Managed Service para Apache Spark implementa medidas de seguridad predeterminadas.

El siguiente comando de Google Cloud CLI conecta un firewall de red a una subred que permite las comunicaciones de entrada internas entre las VMs con todos los protocolos en todos los puertos:

gcloud compute firewall-rules create allow-internal-ingress \
    --network=NETWORK_NAME \
    --source-ranges=SUBNET_RANGES \
    --destination-ranges=SUBNET_RANGES \
    --direction=ingress \
    --action=allow \
    --rules=all

Notas:

  • SUBNET_RANGES: Consulta Permite conexiones de entrada internas entre VMs. La red de VPC default en un proyecto con la regla de firewall default-allow-internal, que permite la comunicación de entrada en todos los puertos (tcp:0-65535, udp:0-65535 y icmp protocols:ports), cumple con el requisito de conectividad de subred abierta. Sin embargo, esta regla también permite la entrada de cualquier instancia de VM en la red.

Política de firewall del sistema regional creada automáticamente

Para cumplir con el requisito de conectividad de subred abierta, las cargas de trabajo por lotes y las sesiones interactivas de Managed Service para Apache Spark que usan la versión del entorno de ejecución 3.0 o posterior crean automáticamente una política de firewall del sistema regional dataproc-firewall-policy-[network-id]-region o dataproc-fw-[network-id]-region en la subred de VPC por lotes o de sesión. Esta política contiene las siguientes reglas de entrada y salida.

Nombre Objetivo Prioridad Dirección Acción Origen y destino Protocolo y puertos
dataproc-allow-internal-ingress-rule-[subnetworkId] Permite toda la comunicación interna necesaria solo desde otras VMs de Managed Service para Apache Spark etiquetadas dentro de la misma subred. 4 ENTRADA PERMITIR
  • srcSecureTag: Es el valor de la etiqueta segura para esta subred.
  • targetSecureTags:Es el valor de la etiqueta segura para esta subred.
  • tcp:0-65535, udp:0-65535, icmp protocolos:puertos
    dataproc-allow-internal-egress-rule-[subnetworkId] Permite que las VMs de Managed Service para Apache Spark descarguen paquetes, por ejemplo, pip y apt-get, y accedan a las APIs de Google con el Acceso privado a Google. 5 SALIDA PERMITIR
  • destIpRanges: 0.0.0.0/0.
  • targetSecureTags:Es el valor de la etiqueta segura para esta subred.
  • tcp:0-65535, udp:0-65535, icmp protocolos:puertos

    Notas:

    • Managed Service para Apache Spark aprovisiona un proyecto de usuario asociado con el proyecto del usuario para almacenar etiquetas seguras. Managed Service para Apache Spark crea una etiqueta segura para la subred en el proyecto de usuario y la adjunta a las VMs de Managed Service para Apache Spark, lo que garantiza que la política de firewall del sistema creada solo se aplique a las VMs de Managed Service para Apache Spark.

    • La política de firewall del sistema creada automáticamente no es compatible con la VPC compartida.

    Managed Service para Apache Spark y redes de VPC-SC

    Con los Controles del servicio de VPC, los administradores de red pueden definir un perímetro de seguridad alrededor de los recursos de los servicios administrados por Google para controlar la comunicación hacia esos servicios y entre ellos.

    Considera las siguientes estrategias cuando uses redes de VPC-SC con Managed Service para Apache Spark:

    Para obtener más información, consulta Controles del servicio de VPC: Managed Service para Apache Spark.