创建使用 Amazon CloudWatch 代理的 EMR 集群 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

创建使用 Amazon CloudWatch 代理的 EMR 集群

本部分中的过程描述了使用 Amazon Web Services 管理控制台 和 Amazon CLI 中的 Amazon CloudWatch 代理在 Amazon EMR 中创建集群的步骤。

CloudWatch 代理所需的 IAM 权限

CloudWatch 代理需要 Amazon EMR 的 Amazon EC2 实例配置文件中的 Amazon Identity and Access Management(IAM)cloudwatch:PutMetricData 权限。Amazon EMR 的默认角色已经拥有此权限。您还可以使用 aws emr create-default-roles 从 Amazon CLI 中创建默认角色。如需了解更多信息,请参阅《Amazon EMR 管理指南》中的集群 EC2 实例的服务角色(EC2 实例配置文件)

以下示例 IAM policy 包括 cloudwatch:PutMetricData 权限:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": [ "*" ], "Sid": "AllowCLOUDWATCHPutmetricdata" } ] }

所需的 CloudWatch 代理端点

要在私有子网中将指标发布到 EMR 集群的 CloudWatch,请创建一个 CloudWatch 代理端点并与私有子网所在的 VPC 关联。

有关每个 Amazon Web Services 区域 的 CloudWatch 端点的更多信息,请参阅《Amazon 一般参考指南》中的 Amazon CloudWatch 端点和配额

创建 EMR 集群

设置了与 CloudWatch 代理结合使用的所需权限和端点后,使用 Amazon Web Services 管理控制台 或 Amazon CLI 在安装了代理的情况下创建新集群。

Console
要通过控制台使用 Amazon CloudWatch 代理创建集群
  1. 导航到 Amazon EMR 控制台。

  2. 选择创建集群

  3. 名称和应用程序下,选择 7.0.0 或更高版本的 Amazon EMR 发行版。

  4. 应用程序捆绑包下,选择要安装到集群中的捆绑包或应用程序,并在您的选择中包含 CloudWatch 代理

  5. 继续创建集群以满足您的应用场景需求。

Amazon CLI

在 Amazon CLI 中,您可以使用 create-cluster--applications 参数将 Amazon CloudWatch 代理添加到集群。

要通过 Amazon CLI 使用 Amazon CloudWatch 代理创建集群
  • 创建集群时,使用类似于以下内容的命令将 Amazon CloudWatch 代理包括在内。将 myKey 替换为您的 EC2 密钥对的名称。

    aws emr create-cluster --name "Spark cluster with CloudWatch agent" \ --release-label emr-7.0.0 \ --applications Name=Spark Name=AmazonCloudWatchAgent \ --ec2-attributes KeyName=myKey --instance-type m7g.2xlarge \ --instance-count 3 --use-default-roles

有关如何将 Amazon EMR 与 Amazon CLI 配合使用的更多详细信息,请参阅《Amazon CLI 命令参考》https://awscli.amazonaws.com/v2/documentation/api/latest/reference/emr/index.html