Terraform gcp上的节点池在每个区域中创建3个实例,而我每个区域只需要一个实例
因此,我正在尝试创建两个节点池,ingress nodepool和web nodepool,ingress在区域us-west1-a中必须只有1个实例,web必须有3个实例分布在其他区域。然而,当我运行terraform代码时,结果是入口池在webpool上的3个区域和3个实例上有3个入口 这就是我的集群区域和位置的定义方式,我知道,通过不在location参数中定义区域,它会在整个区域中创建所有内容,并将其分布到该区域的各个区域,但如果在集群模块上放置location=“us-west1-a”,它会创建我想要的内容(4个实例),但所有这些内容都在us-west1-a区域中,当我真正需要它时,我首先提到:Terraform gcp上的节点池在每个区域中创建3个实例,而我每个区域只需要一个实例,terraform,google-kubernetes-engine,terraform-provider-gcp,Terraform,Google Kubernetes Engine,Terraform Provider Gcp,因此,我正在尝试创建两个节点池,ingress nodepool和web nodepool,ingress在区域us-west1-a中必须只有1个实例,web必须有3个实例分布在其他区域。然而,当我运行terraform代码时,结果是入口池在webpool上的3个区域和3个实例上有3个入口 这就是我的集群区域和位置的定义方式,我知道,通过不在location参数中定义区域,它会在整个区域中创建所有内容,并将其分布到该区域的各个区域,但如果在集群模块上放置location=“us-west1-a”
module "cluster" {
project = local.project
source = "./gke"
region = "us-west1"
location = "us-west1"
resource "google_container_node_pool" "web_nodepool" {
depends_on = [google_container_cluster.dev-k8s, google_service_account.devcluster]
name = "dev-web-pool"
project = var.project
location = var.location
cluster = var.cluster_name
initial_node_count = var.node_pools["web-pool"].initial_node_count
management {
auto_repair = true
auto_upgrade = true
}
node_config {
machine_type = "g1-small"
disk_size_gb = 20
disk_type = "pd-standard"
image_type = "COS"
preemptible = true
service_account = "devcluster-serviceaccount@bamboo-host-289213.iam.gserviceaccount.com"
oauth_scopes = var.node_pools_oauth_scopes["urls-autorizacao"]
}
}
resource "google_container_node_pool" "ingress_nodepool" {
depends_on = [google_container_cluster.dev-k8s, google_service_account.devcluster]
name = "dev-ingress-pool"
project = var.project
location = "us-west1-a"
cluster = var.cluster_name
node_count = 1
management {
auto_repair = true
auto_upgrade = true
}
node_config {
machine_type = "g1-small"
disk_size_gb = 10
disk_type = "pd-standard"
image_type = "COS"
preemptible = false
service_account = "devcluster-serviceaccount@bamboo-host-289213.iam.gserviceaccount.com"
oauth_scopes = var.node_pools_oauth_scopes["urls-autorizacao"]
}
}
'''
如果我试图在“google\u container\u node\u pool”“web\u nodepool”字段中直接定义位置,我会收到以下错误消息:错误:创建nodepool时出错:googleapi:错误403:对“locations/us-west1-a,us-west1-b,us-west1-c”的权限被拒绝(或者它可能不存在),在资源中的gke\node\u pool.tf第1行被禁止“google\u容器\u节点\u池”“web\u节点池”:1:资源“google\u容器\u节点\u池”“web\u节点池”{