Terraform AWS EMR HBase 集群创建 - 应用程序配置超时

Terraform AWS EMR HBase cluster creation - application provisioning timed out

我使用 terraform 在 AWS 中创建 HBase 集群。 当我使用这些设置时,集群配置成功:

resource "aws_emr_cluster" "hbase" {
  name          = "hbase"
  release_label = "emr-6.3.1"
  applications  = ["HBase"]


  termination_protection            = false
  keep_job_flow_alive_when_no_steps = true

  ec2_attributes {
    key_name  = <removed>
    subnet_id = <removed>
    
   instance_profile = aws_iam_instance_profile.emr_profile.arn
  }

  master_instance_group {
    instance_type  = "m1.medium"
    instance_count = "1"
  }

  core_instance_group {
    instance_type  = "m1.medium"
    instance_count = 4

    ebs_config {
      size                 = "20"
      type                 = "gp2"
      volumes_per_instance = 1
    }
  }

  ebs_root_volume_size = 10

当我将主节点的数量增加到三个时,集群创建失败并显示错误消息:

Error: Error waiting for EMR Cluster state to be “WAITING” or “RUNNING”: TERMINATING: BOOTSTRAP_FAILURE: On the master instance (i-), application provisioning timed out

我检查了 aws_emr_cluster 的文档,但找不到任何设置超时的内容。

我也检查了 IAM 角色的超时设置,但默认设置是一小时,这绝对足够了。 https://docs.aws.amazon.com/en_en/IAM/latest/UserGuide/id_roles_use.html

每当集群创建时间超过 16 分钟(根据 Terraform 输出为 16 分 20 秒)时,我都会收到上述错误消息。

我还在同一项目中创建了一个 AWS MSK 资源,该资源耗时超过 17 分钟。这毫无怨言地顺利完成了。所以它看起来不像是一个全局超时值。

如有任何想法,我们将不胜感激。

顺便说一句:

terraform version
Terraform v1.1.2
on darwin_amd64
+ provider registry.terraform.io/hashicorp/aws v3.60.0

最佳,
丹尼

问题现已解决。为了降低此(测试)设置的成本,我选择了实例类型“m1.medium”,事实证明这就是问题所在。 使用更大的实例类型解决了它。