kubernetes Terraform apply changes .kubeconfig?

fwzugrvs  于 2023-06-21  发布在  Kubernetes
关注(0)|答案(1)|浏览(143)

我有一个k8s集群与应用程序数据库和一个fastapi应用程序部署到数字海洋。我正在使用terraform创建和修改我的资源。我已经注意到,我总是运行terraform计划或应用除了更改配置,它有时会改变.kubeconfig terraform计划的输出显示类似的东西:

Terraform detected the following changes made outside of Terraform since the last "terraform apply" which may have affected this plan:

  # module.kubernetes_cluster.digitalocean_kubernetes_cluster.kubernetes_cluster has changed
  ~ resource "digitalocean_kubernetes_cluster" "kubernetes_cluster" {
        id                   = "<cluster_id>"
      ~ kube_config          = (sensitive value)
        name                 = "<cluster-name>"
        tags                 = [
            "<tag>",
        ]
        # (14 unchanged attributes hidden)

        # (2 unchanged blocks hidden)
    }

然后再更改资源。
我比较了terraform apply命令前后的.kubeconfig,它改变了一个管理用户令牌和一个集群服务器。

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: no-change
    server: change!
  name: no-change
contexts:
- context:
    cluster: no-change
    user: no-change
  name: no-change
current-context:  no-change
kind: Config
preferences: {}
users:
- name: no-change
  user:
    token: change!

两个值都在变化正常吗?什么时候会发生?每次发生这种情况时,本地和存储库管道上的所有上下文都需要更新吗?

ruyhziif

ruyhziif1#

这正常吗?是的,我想是的。
数字海洋可能使用短暂的令牌,因此这是正常的。
关键是每次要连接到集群时都要调用auth端点来获取新令牌。
参见https://kubernetes.io/docs/reference/access-authn-authz/authentication/了解各种验证方法。
数字海洋文档告诉你如何在这里获得令牌:https://docs.digitalocean.com/products/kubernetes/how-to/connect-to-cluster/
它归结为:

doctl kubernetes cluster kubeconfig save use_your_cluster_name

相关问题