本文主要介绍火山引擎 EMR Serverless 如何通过配置火山引擎的 NAT 网关(NAT Gateway)和弹性公网 IP(Elastic IP Address, EIP)等网络产品,实现访问公网的需求。当您的EMR Serverless作业需要访问公网资源(例如,外部 API、公网上的数据库服务等)时,可以参考本方案进行配置。
EMR Serverless 默认将作业运行在 EMR 服务侧的托管 VPC 中,默认与公网隔离,无法直接访问互联网。为了实现公网访问,您需要实现两个步骤:
其核心数据流向如下:
整个过程中的网络流量受到 安全组 规则的控制,保障了访问的安全性。
在开始配置前,请确保您已完成以下准备工作:
配置过程主要分为四大步:EMR Serverless 队列/作业网络配置、创建和配置 NAT 网关、(可选)配置外部服务的访问白名单、(可选)配置公网DNS解析。
参考 EMR Serverless 访问 VPC 实践指南,为作业/队列配置VPC参数。
NAT 网关是实现网络地址转换的核心服务,它为 VPC 内的云服务器实例提供访问公网的能力。
登录 NAT 网关控制台,在顶部导航栏选择与您的 EMR Serverless 队列相同的 地域。
单击 创建 NAT 网关 按钮。在创建页面,您需要配置以下关键参数:
参数 | 说明 |
|---|---|
计费类型 | 选择 NAT 网关的计费类型。如需了解 NAT 网关的计费详情,请参见计费概览。 |
名称 | 输入 NAT 网关的名称。 |
地域 | 选择 NAT 网关所在地域,与 EMR Serverless队列地域相同。 |
私有网络 | 选择预先准备的私有网络,与 EMR Serverless队列/任务关联的 VPC 相同。 |
子网 | 选择预先准备的子网, 子网内至少有一个可用的私网 IP。系统自动生成的 NAT 网关网卡将占用该子网一个私网 IP。 |
规格 | 根据预估的公网访问流量选择合适的规格(如小型、中型、大型)。 |
完成配置后,确认订单并完成购买。
为创建好的 NAT 网关 绑定公网 IP。
为 NAT 网关 创建 SNAT 规则。SNAT(源网络地址转换)规则定义了 VPC 内哪些网段的流量可以通过此 NAT 网关访问公网。
为保障网络安全,您还需要检查并配置相关的安全组规则,并在需要时将 EIP 地址添加到外部服务的访问白名单中。
0.0.0.0/0 的 TCP 3306 端口的出站规则。通常,默认的出站规则是允许所有流量(0.0.0.0/0),一般无需修改。EMR Serverless作业默认无法访问公网DNS,如果您需要支持公网域名解析,您需要在任务提交conf里增加参数:
serverless.cross.vpc.dns.resolve.enabled = true