首页 > 解决方案 > 无法通过 Terraform 对 Digital Ocean Kubernetes 进行身份验证

问题描述

我正在开发一个分布在 Digital Ocean 和 AWS 上的系统。他们的 Node.js 实例位于 Digital Ocean 上的 Kubernetes 集群上,他们的数据库和 S3 空间托管在 AWS 上。我能够使用 kubectl 连接到 Kubernetes 集群。然后,我能够毫无问题地进行“terraform init”。但是,当我试图做一个“地形计划”时,我得到了这个错误。

错误:检索 Kubernetes 集群时出错:GET https://api.digitalocean.com/v2/kubernetes/clusters/1234:401无法对您进行身份验证。

我是 Kubernetes 和 Terraform 的新手。Terraform 是否期望 Kubernetes 配置信息与 kubectl 期望的位置不同?

标签: amazon-web-serviceskubernetesterraformdigital-ocean

解决方案


您需要一个令牌,以便 Digital Ocean 的服务器知道您有权访问您的帐户。按照说明中的步骤创建访问令牌并将令牌复制到剪贴板。记住将其存储为环境变量: export TF_VAR_do_token=your-token.

设置环境变量:

export TF_VAR_do_token=your_digital_ocean_token

export TF_VAR_do_cluster_name=your_cluster_name

否则问题出在 API 令牌上。创建一个新的令牌,然后操作将成功。

关于使用 Digital Ocena 和 Terraform 设置 Kuberenetes 集群的有用博客文章” kubernetes-digitalocean-terraform


推荐阅读