Получить конечную точку для Terraform с помощью aws_elasticache_replication_group - PullRequest
0 голосов
/ 29 января 2019

У меня есть, как мне кажется, простая конфигурация Terraform для AWS ElastiCache с Redis:

resource "aws_elasticache_replication_group" "my_replication_group" {
  replication_group_id          = "my-rep-group",
  replication_group_description = "eln00b"

  node_type                     = "cache.m4.large"
  port                          = 6379
  parameter_group_name          = "default.redis5.0.cluster.on"

  snapshot_retention_limit      = 1
  snapshot_window               = "00:00-05:00"

  subnet_group_name             = "${aws_elasticache_subnet_group.my_subnet_group.name}"

  automatic_failover_enabled    = true

  cluster_mode {
    num_node_groups             = 1
    replicas_per_node_group     = 1
  }
}

Я попытался определить выход конечной точки, используя:

output "my_cache" {
  value = "${aws_elasticache_replication_group.my_replication_group.primary_endpoint_address}"
}

Когда я запускаюприменить через terragrunt Я получаю:

Ошибка: Ошибка выполнения плана: произошла 1 ошибка (и):

module.mod.output.my_cache: Ресурс 'aws_elasticache_replication_group.my_replication_group' не имеетиметь атрибут «primary_endpoint_address» для переменной «aws_elasticache_replication_group.my_replication_group.primary_endpoint_address»

Что я здесь не так делаю?

1 Ответ

0 голосов
/ 29 января 2019

Атрибут primary_endpoint_address доступен только для групп репликации Redis без кластерного режима, как указано в документах :

primary_endpoint_address - (только для Redis) Адрес адресаконечная точка для основного узла в группе репликации, если режим кластера отключен.

При использовании режима кластера вместо этого следует использовать configuration_endpoint_address вместо подключения к кластеру Redis.

...