Configuración de red de Serverless para Apache Spark

En este documento, se describen los requisitos para la configuración de red de Google Cloud Serverless para Apache Spark.

Requisitos de la subred de la nube privada virtual

En este documento, se describen los requisitos de la red de la nube privada virtual para Google Cloud Serverless para Apache Spark cargas de trabajo por lotes y sesiones interactivas.

Acceso privado a Google

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

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

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 IPs internas en tu red de VPC.

Conectividad de subred abierta

La subred de VPC para la región seleccionada para la carga de trabajo por lotes o la sesión interactiva de Serverless 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 cargas de trabajo, Serverless para Apache Spark implementa medidas de seguridad predeterminadas.

El siguiente comando de Google Cloud CLI adjunta 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 satisfacer el requisito de conectividad de subred abierta, las cargas de trabajo por lotes y las sesiones interactivas de Serverless para Apache Spark que usan la versión de 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 de la sesión o el lote. 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 Serverless 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 protocols:ports
    dataproc-allow-internal-egress-rule-[subnetworkId] Permite que las VMs de Serverless para Apache Spark descarguen paquetes, por ejemplo, pip y apt-get, y accedan a las APIs de Google con 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 protocols:ports

    Notas:

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

    • No se admite la política de firewall del sistema creada automáticamente para la VPC compartida.

    Serverless 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 entre esos servicios.

    Ten en cuenta las siguientes estrategias cuando uses redes de VPC-SC con Serverless para Apache Spark:

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