En este documento se describen los requisitos necesarios para la configuración de red de Google Cloud sin servidor para Apache Spark.
Requisitos de las subredes de nube privada virtual
En este documento se explican los requisitos de la red de nube privada virtual para las cargas de trabajo por lotes y las sesiones interactivas deGoogle Cloud Serverless para Apache Spark.
Acceso privado de Google
Las cargas de trabajo por lotes y las sesiones interactivas de Serverless para Apache Spark se ejecutan en VMs que solo tienen direcciones IP internas y en una subred regional con Acceso privado de Google (PGA) habilitado automáticamente en la subred.
Si no especificas ninguna subred, Serverless para Apache Spark seleccionará la subred default
de la región de la carga de trabajo por lotes o de la sesión como subred de la carga de trabajo por lotes o de la sesión.
Si tu carga de trabajo requiere acceso a una red externa o a Internet (por ejemplo, para descargar recursos como modelos de aprendizaje automático de PyTorch Hub o Hugging Face), puedes configurar Cloud NAT para permitir el tráfico saliente mediante IPs internas en tu red de VPC.
Abrir conectividad de subred
La subred de VPC de 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 de la subred en todos los puertos entre las instancias de VM.
El siguiente comando de la CLI de Google Cloud asocia un cortafuegos de red a una subred que permite las comunicaciones internas entrantes entre máquinas virtuales mediante 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 Permitir conexiones de entrada internas entre máquinas virtuales. La red VPC
default
de un proyecto con la regla de cortafuegosdefault-allow-internal
, que permite la comunicación entrante en todos los puertos (tcp:0-65535
,udp:0-65535
yicmp protocols:ports
), cumple el requisito de conectividad de subred abierta. Sin embargo, esta regla también permite el acceso de cualquier instancia de VM de la red.
Sin servidor para Apache Spark y redes de seguridad de red virtual privada
Con Controles de Servicio de VPC, los administradores de redes pueden definir un perímetro de seguridad alrededor de los recursos de los servicios gestionados por Google para controlar la comunicación entre dichos servicios.
Ten en cuenta las siguientes estrategias al usar redes de VPC-SC con Serverless para Apache Spark:
Crea una imagen de contenedor personalizada que preinstale las dependencias fuera del perímetro de los Controles de Servicio de VPC y, a continuación, envía una carga de trabajo por lotes de Spark que utilice tu imagen de contenedor personalizada.
Para obtener más información, consulta Controles de Servicio de VPC: Serverless para Apache Spark.