从AWS模板lambda指定AWS EMR安全配置

时间:2017-04-18 20:02:10

标签: amazon-web-services aws-lambda emr amazon-cloudformation

我正在通过云形成创建一个EMR集群。 我已经从AWS管理控制台创建了安全配置。 我无法找到任何方法可以在从云形成创建EMR时添加此安全配置。

或者我可以利用lambda函数,但是如何在创建集群后添加EMR安全配置?

任何帮助将不胜感激......

2 个答案:

答案 0 :(得分:0)

不幸的是,这还不可能通过cloudformation进行。安全配置于去年9月发布,Cloudformation尚未支持它。此时,唯一的方法是在创建后通过lambda或其他方法手动完成。

答案 1 :(得分:0)

截至今天,这只能使用Lambda支持的自定义资源。这是您需要在高级别上执行的操作:

  1. 使用支持CloudFormation的AWS::EMR::Cluster资源类型创建EMR集群。
  2. 定义Lambda支持的自定义资源,例如资源类型Custom::EMRSecurityConfiguration
  3. 定义一个Lambda函数,该函数将在步骤#2中使用并通过使用AWS SDK(例如 boto3,如果您使用Python编写Lambda)来实现需要根据EventType的类型创建/更新/删除安全配置(CloudFormation将其值传递给您的函数)。
  4. 每次创建/更新/删除#2中定义的自定义资源时,CloudFormation都会触发#3中定义的Lambda函数。我建议查看Lambda-backed custom resourcessecurity configuration的AWS文档。