У меня есть скрипт terraform, который развертывает микросервис (назовем его myservice здесь), который содержит запись route53.
Этот сценарий работает нормально в районе Токио, потому что этот регион имеет все AWS службы, необходимые для myservice .
Теперь я собираюсь развернуть myservice в cn-norhthwest-1, который является регионом Нинся в Китай.
Поскольку route53 не существует в AWS Китае, в настоящее время мое решение заключается в том, чтобы вручную установить доменное имя myservice в обычной учетной записи AWS (т.е. 1044 * учетная запись, содержащая регионы Токио, Огайо, Орегон ...).
Например, указав www.myservice.com.cn
на запись CNAME myservice-ningxia-elb-1234567890.cn-northwest-1.elb.amazonaws.com.cn
, которая является доменным именем ELB в регионе Нинся.
Как мне автоматизировать этот процесс с помощью terraform?
Это моя структура папок:
.
├── environments
│ ├── ningxia
│ │ ├── main.tf
│ │ └── versions.tf
│ └── tokyo
│ ├── main.tf
│ └── versions.tf
└── modules
├── cloud-init.yaml
├── outputs.tf
├── myservice.tf
└── variables.tf
Я могу создать myservice в районе Токио, запустив
cd environments && \
terraform init && \
terraform apply
Эта запись показывает, что мы можем создать aws_route53_zone
в cn-northwest-1
регионе, используя следующий код
# configure AWS provider for China region.
provider "aws" {
region = "cn-northwest-1"
access_key = AK
secret_key = SK
endpoints {
route53 = "https://api.route53.cn"
}
}
# create a route 53 pub zone
resource "aws_route53_zone" "test" {
name = "bobtest3.cn"
comment = "try to create a pub zone with terraform in China region v2!"
}
Как это возможно?
Я даже не могу найти route53 в AWS консоли в регионе Нинся.