Serverless for Apache Spark 网络配置

本文档介绍了 Google Cloud 无服务器 Apache Spark 网络配置所需的要求。

虚拟私有云子网要求

本文档介绍了Google Cloud Serverless for Apache Spark 批量工作负载和交互式会话的 Virtual Private Cloud 网络要求。

专用 Google 访问通道

Serverless for Apache Spark 批量工作负载和交互式会话仅在具有内部 IP 地址的虚拟机上运行,并且在区域子网上运行,该子网会自动启用专用 Google 访问通道 (PGA)

如果您未指定子网,则 Apache Spark Serverless 会选择批处理工作负载或会话区域中的 default 子网作为批处理工作负载或会话的子网。

如果您的工作负载需要访问外部网络或互联网(例如从 PyTorch HubHugging Face 下载机器学习模型等资源),您可以设置 Cloud NAT 以允许使用 VPC 网络中的内部 IP 地址的出站流量。

打开子网连接

为 Serverless for Apache Spark 批量工作负载或交互式会话选择的区域所对应的 VPC 子网必须允许虚拟机实例之间在所有端口上进行内部子网通信。

以下 Google Cloud CLI 命令会将网络防火墙连接到子网,以允许虚拟机之间使用所有端口上的所有协议进行内部入站流量通信:

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

注意:

  • SUBNET_RANGES: 请参阅允许虚拟机之间的内部入站连接。 项目中的 default VPC 网络具有 default-allow-internal 防火墙规则,该规则允许在所有端口(tcp:0-65535udp:0-65535icmp protocols:ports)上进行入站通信,因此满足开放子网连接要求。不过,此规则还允许网络上的任何虚拟机实例的入站流量。

Serverless for Apache Spark 和 VPC-SC 网络

借助 VPC Service Controls,网络管理员可以为 Google 托管式服务的资源定义安全边界,以控制与这些服务的通信以及这些服务之间的通信。

请注意,当 VPC-SC 网络与 Serverless for Apache Spark 搭配使用时,存在以下策略:

如需了解详情,请参阅 VPC Service Controls - Apache Spark 专用无服务器 Dataproc