Terraform init │ 错误:配置 S3 后端时出错:找不到 S3 后端的有效凭证源

Posted

技术标签:

【中文标题】Terraform init │ 错误:配置 S3 后端时出错:找不到 S3 后端的有效凭证源【英文标题】:Terraform init │ Error: error configuring S3 Backend: no valid credential sources for S3 Backend found 【发布时间】:2021-12-23 06:41:29 【问题描述】:

我是 terraform 的新手,我正在尝试使用 github/terraform 将 CI/CD 配置到 AWS EC2 实例中。

我正在使用这个视频教程:https://www.youtube.com/watch?v=JwTP3wZHYnU

这是我在运行“terraform init”时收到的错误消息

这是我根据教程创建的 terraform 文件(请参阅 7:50 开始)

这是我对 S3 存储桶的加密设置

非常感谢任何帮助

【问题讨论】:

【参考方案1】:

我认为您的 AWS 凭证配置不正确。请参阅下面的示例:

##############################
## Terraform default config ##
##############################
terraform 
  required_version = ">= v0.13"

  required_providers 
    aws = 
      source  = "hashicorp/aws"
      version = "~> 3.0"
    
  

  // TF state file
  backend "s3" 
    bucket                  = "terraform-prod"
    key                     = "terraform-prod.tfstate"
    region                  = "eu-central-1"
    shared_credentials_file = "../.aws/credentials"
    profile                 = "production"
  

我的 AWS credentials 文件(不要忘记将其添加到 .gitignore!):

[production]
aws_access_key_id = 123456789
aws_secret_access_key = 123456789

[staging]
aws_access_key_id = 987654321
aws_secret_access_key = 987654321

【讨论】:

以上是关于Terraform init │ 错误:配置 S3 后端时出错:找不到 S3 后端的有效凭证源的主要内容,如果未能解决你的问题,请参考以下文章

Terraform 配置 LB 属性失败

Terraform 和 AWS:未找到配置文件错误

获取对象时发生 AWS S3 错误。 S3 错误代码:带有 Terraform 的 NoSuchKey

Terraform:尝试销毁 EKS 集群时出现“错误:删除 S3 存储桶时出错”

terraform/aws lambda 函数访问在 s3 上被拒绝

Terraform 错误:运行 terraform init 时模块的无关标签