gpt4 book ai didi

kubernetes - Terraform data.google_container_cluster.cluster.endpoint 为空

转载 作者:行者123 更新时间:2023-12-05 02:38:32 24 4
gpt4 key购买 nike

我想管理使用 terraform 的服务配置到使用外部 terraform 脚本定义的 GKE 集群。

我使用 kubernetes_secret 创建了配置.

类似下面的内容

resource "kubernetes_secret" "service_secret" {
metadata {
name = "my-secret"
namespace = "my-namespace"
}

data = {
username = "admin"
password = "P4ssw0rd"
}
}

而且我还把这个 google 客户端配置用于配置 kubernetes 提供程序。

data "google_client_config" "current" {

}

data "google_container_cluster" "cluster" {
name = "my-container"
location = "asia-southeast1"
zone = "asia-southeast1-a"
}

provider "kubernetes" {
host = "https://${data.google_container_cluster.cluster.endpoint}"
token = data.google_client_config.current.access_token
cluster_ca_certificate = base64decode(data.google_container_cluster.cluster.master_auth[0].cluster_ca_certificate)
}

当我应用 terraform 时,它会在下面显示错误消息

error

data.google_container_cluster.cluster.endpoint 为空

我是否遗漏了一些步骤?

最佳答案

我在尝试从 google_container_cluster 数据源初始化 kubernetes 提供程序时遇到了相同/类似的问题。 terraform show 仅显示数据源属性的所有空值。我的解决方法是在数据源中指定项目,例如,

data "google_container_cluster" "cluster" {
name = "my-container"
location = "asia-southeast1"
zone = "asia-southeast1-a"
project = "my-project"
}

https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/container_cluster#project

project - (Optional) The project in which the resource belongs. If it is not provided, the provider project is used.

在我的例子中,谷歌提供商指向的项目与包含我想要获取信息的集群的项目不同。

此外,您应该能够从该 block 中删除 zone 属性。 location 如果是区域集群,则应指区域;如果是区域集群,则应指区域。

关于kubernetes - Terraform data.google_container_cluster.cluster.endpoint 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69521179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com