You need to enable JavaScript to run this app.
导航

在自定义DNS的VPC下创建EMR集群

最近更新时间2024.01.11 20:10:04

首次发布时间2024.01.11 20:10:04

本文重点介绍火山引擎 E-MapReduce(EMR)集群使用自定义DNS的转发配置,该文档仅支持自建 DNS 能够访问通火山 Name Server 的场景(100.96.0.2,100.96.0.3),否则需要按 此文档 修改。

EMR使用了PrivateZone来管理集群内的节点域名,具体的规则见 域名规则,当您在指定了自定义的DNS服务器(VPC概览页面的DNS字段)的VPC下创建集群时,需要给自建的DNS服务器配置相应的转发规则,否则会影响集群的创建。此外,在集群创建后修改VPC的DNS属性也会影响集群的扩容和集群内各组件的通信。

因此当使用自定义 DNS 服务器,需要配置相应的转发规则将特定域名的解析转发到火山 DNS,以下以CoreDNS 为例进行相应的配置。

1 DNS 转发配置

首先需要根据您要创建的集群版本确定对应的域名(见域名规则

  • 如您要创建的是EMR 3.4.0/2.3.0 及之前版本, VPC 的 id 是 vpc-123456,那么相应的需要转发的域名是emr-123456.internal

  • EMR 3.5.0/2.4.0 及之后版本, 那么需要转发的域名是emr-volces.com

下面以 emr-volces.com 为例的基础配置,其余配置可以按需添加调整。
为了否定缓存不影响集群的创建和扩容,这边直接禁用了否定缓存,如果您要开启否定缓存的话,建议您缓存时间不超过 10秒。

emr-volces.com {
    forward . 100.96.0.2 100.96.0.3
    cache {
        disable denial
    }
}

相关火山服务会在私网访问ivolces.com,建议也同步设置下。

ivolces.com {
    forward . 100.96.0.2 100.96.0.3
}

2 Kerberos 集群的额外配置

此外如果您创建的集群开启了 Kerberos,那么需要额外配置反向域名解析,其余配置可以按需添加调整。
同样的原因这边也禁用了否定缓存,此外由于频繁的扩缩容可能会使用同一个 IP,这边将正向缓存时间设置了5秒,如果您要调整的话建议不超过 10 秒。

反解域名的确定

  1. 如果和您已有的域名不冲突的话,可以直接使用in-addr.arpa

  2. 如果需要更细粒度的域名的话,可以查看您 VPC 的 CIDR,EMR 会尽可能使用被 8 整除的网络前缀的 IP 块来构建反解域名

    1. 如您的 VPC 的 CIDR 是192.168.0.0/16,那么构建的反解域名是168.192.in-addr.arpa

    2. 如您的 VPC 的 CIDR 是192.168.0.0/17,那么构建的反解域名是168.192.in-addr.arpa

    3. 如您的 VPC 的 CIDR 是192.168.1.0/25,那么构建的反解域名是1.168.192.in-addr.arpa

下面以1.168.192.in-addr.arpa为例

1.168.192.in-addr.arpa {
    forward . 100.96.0.2 100.96.0.3
    cache {
        success 5000 5
        disable denial
    }
}