

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 配置示例
<a name="emr-kerberos-config-examples"></a>

以下示例演示了常见场景的安全配置和集群配置。 Amazon CLI 为了简洁起见，显示了命令。

## 本地 KDC
<a name="emr-kerberos-example-local-kdc"></a>

以下命令创建在主节点上运行集群专用 KDC 的集群。集群上需要额外的配置。有关更多信息，请参阅[为经过 Kerberos 身份验证的 HDFS 用户和 SSH 连接配置 Amazon EMR 集群](emr-kerberos-configuration-users.md)。

**创建安全配置**

```
aws emr create-security-configuration --name {{LocalKDCSecurityConfig}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ClusterDedicatedKdc",\
"ClusterDedicatedKdcConfiguration": {"TicketLifetimeInHours": {{24}} }}}}'
```

**创建集群**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count 3 --instance-type {{m5.xlarge}} \
--applications Name={{Hadoop}} Name={{Hive}} --ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole \
--security-configuration {{LocalKDCSecurityConfig}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{MyPassword}}
```

## 集群专用 KDC 与 Active Directory 跨领域信任
<a name="emr-kerberos-example-crossrealm"></a>

以下命令创建在主节点上运行集群专用 KDC 的集群，并与 Active Directory 域具有跨领域信任关系。在集群上和 Active Directory 中需要额外的设置。有关更多信息，请参阅[教程：配置与 Active Directory 域的跨领域信任](emr-kerberos-cross-realm.md)。

**创建安全配置**

```
aws emr create-security-configuration --name {{LocalKDCWithADTrustSecurityConfig}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ClusterDedicatedKdc", \
"ClusterDedicatedKdcConfiguration": {"TicketLifetimeInHours": {{24}}, \
"CrossRealmTrustConfiguration": {"Realm":"{{AD.DOMAIN.COM}}", \
"Domain":"{{ad.domain.com}}", "AdminServer":"{{ad.domain.com}}", \
"KdcServer":"{{ad.domain.com}}"}}}}}'
```

**创建集群**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} --applications Name={{Hadoop}} Name={{Hive}} \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{KDCWithADTrustSecurityConfig}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{MyClusterKDCAdminPassword}},\
ADDomainJoinUser={{ADUserLogonName}},ADDomainJoinPassword={{ADUserPassword}},\
CrossRealmTrustPrincipalPassword={{MatchADTrustPassword}}
```

## 不同集群上的外部 KDC
<a name="emr-kerberos-example-extkdc-cluster"></a>

以下命令创建引用其它集群的主节点上集群专用 KDC 的集群，用于对主体进行身份验证。集群上需要额外的配置。有关更多信息，请参阅[为经过 Kerberos 身份验证的 HDFS 用户和 SSH 连接配置 Amazon EMR 集群](emr-kerberos-configuration-users.md)。

**创建安全配置**

```
aws emr create-security-configuration --name {{ExtKDCOnDifferentCluster}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ExternalKdc", \
"ExternalKdcConfiguration": {"KdcServerType": "Single", \
"AdminServer": "{{MasterDNSOfKDCMaster:749}}", \
"KdcServer": "{{MasterDNSOfKDCMaster:88}}"}}}}'
```

**创建集群**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} \
--applications Name=Hadoop Name=Hive \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{ExtKDCOnDifferentCluster}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{KDCOnMasterPassword}}
```

## 外部集群 KDC 与 Active Directory 跨领域信任
<a name="emr-kerberos-example-extkdc-ad-trust"></a>

以下命令创建没有 KDC 的集群。集群引用运行在其它集群的主节点上的集群专用 KDC，用于对主体进行身份验证。该 KDC 具有与 Active Directory 域控制器的跨领域信任关系。具有 KDC 的主节点上需要额外的配置。有关更多信息，请参阅 [教程：配置与 Active Directory 域的跨领域信任](emr-kerberos-cross-realm.md)。

**创建安全配置**

```
aws emr create-security-configuration --name {{ExtKDCWithADIntegration}} \
--security-configuration '{"AuthenticationConfiguration": \
{"KerberosConfiguration": {"Provider": "ExternalKdc", \
"ExternalKdcConfiguration": {"KdcServerType": "Single", \
"AdminServer": "{{MasterDNSofClusterKDC}}:749", \
"KdcServer": "{{MasterDNSofClusterKDC}}.com:88", \
"AdIntegrationConfiguration": {"AdRealm":"{{AD.DOMAIN.COM}}", \
"AdDomain":"{{ad.domain.com}}", \
"AdServer":"{{ad.domain.com}}"}}}}}'
```

**创建集群**

```
aws emr create-cluster --release-label {{emr-7.13.0}} \
--instance-count {{3}} --instance-type {{m5.xlarge}} --applications Name={{Hadoop}} Name={{Hive}} \
--ec2-attributes InstanceProfile=EMR_EC2_DefaultRole,KeyName={{MyEC2Key}} \
--service-role EMR_DefaultRole --security-configuration {{ExtKDCWithADIntegration}} \
--kerberos-attributes Realm={{EC2.INTERNAL}},KdcAdminPassword={{KDCOnMasterPassword}},\
ADDomainJoinUser={{MyPrivilegedADUserName}},ADDomainJoinPassword={{PasswordForADDomainJoinUser}}
```