Как создать запись SRV, совместимую с RFC 2782, с помощью Terraform и AWS Service Discovery? - PullRequest
1 голос
/ 27 марта 2019

Я использую базу данных MySQL в AWS ECS ( не может использовать RDS ), и я хотел бы использовать Обнаружение службы ECS для заполнения записи SRV, которая указываетв эту базу данных.Я использую Terraform для настройки всех сервисов AWS.

Это то, что я работаю до сих пор ...

resource "aws_service_discovery_service" "mysqldb" {
  name = "mysqldb"
  health_check_custom_config {
    failure_threshold = 3
  }
  dns_config {
    namespace_id = "${aws_service_discovery_private_dns_namespace.stack_local.id}"
    dns_records {
      ttl  = "300"
      type = "SRV"
    }
    routing_policy = "MULTIVALUE"
  }
}

resource "aws_service_discovery_private_dns_namespace" "stack_local" {
  name        = "${var.stack_name}.local"
  description = "Testing with AWS Service Discovery"
  vpc         = "${aws_vpc.vpc.id}"
}

Однако, это создает запись SRV (mysqldb.stack_name.local.), котораяне соответствует RFC 2782.Для обеспечения соответствия он должен включать имя службы и протокол, например: _mysql_._tcp.mysqldb.stack_name.local.

Я попытался изменить имя на что-то вроде _mysql._tcp.mysqldb, но это не удалось, поскольку AWS требует, чтобы имя было единичнымметка без ..

Можно ли создать запись SRV, совместимую с RFC 2782, с помощью ECS Service Discovery с Terraform и поставщиком Terraform AWS?

...