首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GKE w/ Terraform集autoscaling_profile

GKE w/ Terraform集autoscaling_profile
EN

Stack Overflow用户
提问于 2020-08-31 15:56:44
回答 1查看 1.2K关注 0票数 5

我已经缩小了我的GKE集群的问题,并找到了正确的配置,我可以解决这个问题。

作为terraform 文档,我可以使用autoscaling_profile并将其设置为OPTIMIZE_UTILIZATION

就像这样:

代码语言:javascript
复制
resource "google_container_cluster" "k8s_cluster" {
  
[...]
  
  cluster_autoscaling {
    enabled = true
    autoscaling_profile = "OPTIMIZE_UTILIZATION"
    resource_limits {
      resource_type = "cpu"
      minimum = 1
      maximum = 4
    }
    resource_limits {
      resource_type = "memory"
      minimum = 4
      maximum = 16
    }
  }
}

但我发现了一个错误:

错误:资源"google_container_cluster“"k8s_cluster":70 : autoscaling_profile = "OPTIMIZE_UTILIZATION”中/gke/main.tf第70行上不支持的参数 这里不需要一个名为"autoscaling_profile“的参数。

我不明白?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-01 08:50:08

TL;博士

在资源定义中添加以下参数(顶部):

  • provider = google-beta

更多解释:

如文档所示,autoscaling_profilebeta特性。这意味着它需要使用不同的提供者:google-beta

您可以通过以下正式文档来阅读更多有关它的信息:

重点关注上述文档中最重要的部分:

如何使用:

要使用google提供程序,只需在要使用google的每个资源上设置provider字段即可。 资源"google_compute_instance“”beta-实例“{ provider =google#.}

关于googlegoogle-beta使用的免责声明

如果忽略provider字段,Terraform默认情况下将隐式使用google,即使您只定义了google提供程序块

添加到整个解释中,您的GKE集群定义应该如下所示:

代码语言:javascript
复制
resource "google_container_cluster" "k8s_cluster" {
  
[...]

  provider = google-beta # <- HERE IT IS
  
  cluster_autoscaling {
    enabled = true
    autoscaling_profile = "OPTIMIZE_UTILIZATION"
    resource_limits {
      resource_type = "cpu"
      minimum = 1
      maximum = 4
    }
    resource_limits {
      resource_type = "memory"
      minimum = 4
      maximum = 16
    }
  }
}

您还需要运行:

  • $ terraform init
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63674153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档