Ошибка выдачи Terraform для новых регионов AWS (af-south-1, eu-south-1)

Я столкнулся с проблемой при создании ресурсов в учетной записи aws с помощью скрипта terraform (версия 0.11)

изменения в файле main.tf =>

provider "aws" {
alias = "af-south-1"
region = "af-south-1"
}

module "af-south-1-module" {
  source = "./modules"
  providers = {
    aws = "aws.af-south-1"
  }
 aws_region= "af-south-1"
 should_run= "${contains(var.region_list, "af-south-1")}"
 customer_id= "${var.customer_id}"
 dns_prefix= "${var.dns_prefix_flowlogs}"
 iam_for_lambda_arn= "${aws_iam_role.iam_for_lambda.arn}"
 aws_account_id= "${local.aws_account_id}"
 iam_for_vpc_flow_arn= "${aws_iam_role.avid_vpc_flow_role.arn}"
 }

изменения в файле vars.tf =>

    variable "region_list" {
    type = "list"
    default = ["us-west-1",
    "us-west-2",
    "us-east-1",
    "eu-north-1",
    "af-south-1"]
   }

Я получаю следующую ошибку при выполнении команды "terraform apply"

Ошибка: ошибка обновления состояния: 2 ошибки:

  • provider.aws.eu-south-1: недопустимый регион AWS: eu-south-1
  • provider.aws.af-south-1: недопустимый регион AWS: af-south-1

Примечание.

  1. Регион включен в аккаунте AWS
  2. Тот же код работает для других регионов в region_list.

person user0509    schedule 05.06.2020    source источник
comment
Обновлена ​​ли ваша версия Terraform до самой последней версии?   -  person Chris Williams    schedule 05.06.2020
comment
@ mokugo-DevOps Требуется поддержка создания ресурсов с использованием версий 0.11 и 0.12. Работает для 0.12, но не работает для 0.11.   -  person user0509    schedule 05.06.2020
comment
Вы проверяли, что все сервисы, которые вы используете в Terraform, доступны в этих регионах?   -  person Uberhumus    schedule 05.06.2020


Ответы (1)


Вы получаете сообщение об ошибке для региона "eu-south-1", которого я не заметил в вашем коде. Я предлагаю вам проверить регион, указанный в вашем файле .aws / credentials в вашей системе. Также проверьте свою версию поставщика aws, terraform 0.11 не поддерживает более поздние версии, так как поддерживается в версии 0.12. Иногда разница в версии шаблона также создает проблемы для работы terraform.

person Khalid Waseem    schedule 05.06.2020
comment
Waseem Что касается версии поставщика aws при выполнении команды terraform init, я получаю следующее сообщение У следующих поставщиков нет ограничений по версии в конфигурации, поэтому была установлена ​​последняя версия. Чтобы предотвратить автоматическое обновление до новых основных версий, которые могут содержать критические изменения, рекомендуется добавить ограничения version = ... в соответствующие блоки провайдера в конфигурации с указанными ниже строками ограничений. * provider.aws: version = ~ ›2.43 - person user0509; 09.06.2020
comment
Вы можете добавить provider "aws" { region = var.region version = "~> 1.52.0" } - person Khalid Waseem; 10.06.2020