Configuration du réseau Serverless pour Apache Spark

Ce document décrit les exigences concernant la configuration réseau de Google Cloud Serverless pour Apache Spark.

Exigences concernant les sous-réseaux de cloud privé virtuel

Ce document décrit les exigences du réseau de cloud privé virtuel pour les charges de travail par lot et les sessions interactives Google Cloud Serverless pour Apache Spark.

Accès privé à Google

Les charges de travail par lot et les sessions interactives Serverless pour Apache Spark s'exécutent sur des VM avec des adresses IP internes uniquement et sur un sous-réseau régional avec l' accès privé à Google activé automatiquement sur le sous-réseau.

Si vous ne spécifiez pas de sous-réseau, Serverless pour Apache Spark sélectionne le sous-réseau default dans la région de la charge de travail par lot ou de la session comme sous-réseau pour une charge de travail par lot ou une session.

Si votre charge de travail nécessite un accès à un réseau externe ou à Internet (par exemple, pour télécharger des ressources telles que des modèles de ML à partir de PyTorch Hub ou Hugging Face), vous pouvez configurer Cloud NAT pour autoriser le trafic sortant à l'aide d'adresses IP internes sur votre réseau VPC.

Ouvrir la connectivité du sous-réseau

Le sous-réseau VPC de la région sélectionnée pour la charge de travail par lot ou la session interactive Serverless pour Apache Spark doit autoriser la communication interne sur tous les ports entre les instances de VM du sous-réseau.

Pour éviter que des scripts malveillants dans une charge de travail n'affectent d'autres charges de travail, Serverless pour Apache Spark déploie des mesures de sécurité par défaut.

La commande Google Cloud CLI suivante associe un pare-feu réseau à un sous-réseau qui autorise les communications entrantes internes entre les VM à l'aide de tous les protocoles sur tous les ports :

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

Remarques :

  • SUBNET_RANGES: Consultez Autoriser les connexions d'entrée internes entre les VM. Le réseau VPC default d'un projet avec la règle de pare-feu default-allow-internal, qui autorise la communication entrante sur tous les ports (tcp:0-65535, udp:0-65535 et icmp protocols:ports), répond à l'exigence de connectivité des sous-réseaux ouverts. Toutefois, cette règle autorise également l'entrée de toute instance de VM sur le réseau.

Stratégie de pare-feu système régionale créée automatiquement

Pour répondre à l'exigence de connectivité des sous-réseaux ouverts, les charges de travail par lot et les sessions interactives Serverless pour Apache Spark qui utilisent la version 3.0 ou ultérieure du runtime créent automatiquement une règle de pare-feu système régionale dataproc-firewall-policy-[network-id]-region ou dataproc-fw-[network-id]-region sur le sous-réseau VPC du lot ou de la session. Cette règle contient les règles d'entrée et de sortie suivantes.

Nom Objectif Priorité Sens Action Source et destination Protocole et ports
dataproc-allow-internal-ingress-rule-[subnetworkId] Autorise toutes les communications internes nécessaires uniquement à partir d'autres VM Serverless pour Apache Spark taguées au sein du même sous-réseau. 4 INGRESS AUTORISER
  • srcSecureTag : valeur de tag sécurisée pour ce sous-réseau.
  • targetSecureTags : valeur du tag sécurisé pour ce sous-réseau.
  • Protocoles et ports tcp:0-65535, udp:0-65535, icmp
    dataproc-allow-internal-egress-rule-[subnetworkId] Permet aux VM Serverless pour Apache Spark de télécharger des packages, par exemple pip et apt-get, et d'accéder aux API Google à l'aide de l'accès privé à Google. 5 EGRESS AUTORISER
  • destIpRanges : 0.0.0.0/0.
  • targetSecureTags : valeur du tag sécurisé pour ce sous-réseau.
  • Protocoles et ports tcp:0-65535, udp:0-65535, icmp

    Remarques :

    • Serverless pour Apache Spark provisionne un projet locataire associé au projet utilisateur pour stocker les tags sécurisés. Serverless pour Apache Spark crée un tag sécurisé pour le sous-réseau dans le projet locataire et l'associe aux VM Serverless pour Apache Spark. Cela garantit que la règle de pare-feu système créée ne s'applique qu'aux VM Serverless pour Apache Spark.

    • La stratégie de pare-feu système créée automatiquement n'est pas compatible avec le VPC partagé.

    Serverless pour Apache Spark et les réseaux VPC-SC

    VPC Service Controls permet aux administrateurs réseau de définir un périmètre de sécurité autour des ressources des services gérés par Google afin de contrôler les communications avec et entre ces services.

    Tenez compte des stratégies suivantes lorsque vous utilisez des réseaux VPC-SC avec Serverless pour Apache Spark :

    Pour en savoir plus, consultez VPC Service Controls : Serverless pour Apache Spark.