首页 > 解决方案 > AWS Data Pipeline EmrCluster 的安全配置字段

问题描述

我通过 AWS 管理控制台上的常规 EMR 集群向导创建了一个 AWS EMR 集群,并且我能够选择一个安全配置,例如,当您导出 CLI 命令时它是--security-configuration 'mySecurityConfigurationValue'.

我现在需要通过 AWS Data Pipeline 创建一个类似的 EMR,但我没有看到任何可以指定此安全配置字段的选项。

我看到的唯一类似的字段是 EmrManagedSlaveSecurityGroup、EmrManagedMasterSecurityGroup、AdditionalSlaveSecurityGroups、AdditionalMasterSecurityGroups 和 SubnetId。我已经在我的管道配置中填写了所有这些内容,但我只需要指定安全配置。有什么想法吗?

标签: amazon-web-servicesamazon-emramazon-data-pipeline

解决方案


不幸的是,DataPipeline 不支持安全配置功能(以及在 EMR 5.x 版本中引入的其他功能,例如使用自定义 AMI)。

一种解决方案是:

  1. 用 EC2 资源替换EmrCluster管道中的
  2. 在 EC2 资源上使用 aShellCommandActivity运行aws emr create-clusterCLI 命令
  3. 使用引导步骤在集群上安装TaskRunner
  4. runsOn将管道中的所有属性替换为,workerGroup以便任务在您在步骤 2 中创建的 EMR 集群上运行
  5. ShellCommandActivity在管道末尾添加 final以使用 CLI 终止集群

现在,由于您正在使用 CLI 启动集群,因此您可以访问各种功能,例如安全配置、自定义 AMI、实例队列等,并且您仍然可以使用 DataPipeline 编排任务。


推荐阅读