我正在使用Cloud Formation模板创建运行Spark的AWS EMR集群。我正在使用Cloud Formation,因为这就是我们为应用程序创建可重现的环境的方式。
当我从Web仪表板创建群集时,其中一个选项是添加密钥对。为了通过ssh访问集群的节点,这是必要的。 http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EMR_CreateJobFlow.html
使用Cloud Formation模板时,我看不出如何做同样的事情。 模板结构(见下文)没有相同的属性。
Type: "AWS::EMR::Cluster"
Properties:
AdditionalInfo: JSON object
Applications:
- Applications
BootstrapActions:
- Bootstrap Actions
Configurations:
- Configurations
Instances:
JobFlowInstancesConfig
JobFlowRole: String
LogUri: String
Name: String
ReleaseLabel: String
ServiceRole: String
Tags:
- Resource Tag
VisibleToAllUsers: Boolean
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#d0e76479
我对属性JobFlowRole
感兴趣,该属性是对实例个人资料(http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)的引用。再次,没有KeyName
的迹象。
之前有没有人解决过这个问题?
谢谢, 马可
答案 0 :(得分:0)
我解决了这个问题。我只是对Cloud Formation模板中缺少命名一致性感到困惑。
通常称为KeyName
的内容变为Ec2KeyName
JobFlowInstancesConfig
。