gpt4 book ai didi

terraform aws_elasticsearch_domain - 如果 zone_awareness_enabled 为 false - 为什么要考虑而不是忽略 zone_awareness_config?

转载 作者:行者123 更新时间:2023-12-05 05:08:56 26 4
gpt4 key购买 nike

我正在使用 terraform 在 AWS 中创建许多 Elasticsearch 集群。每个集群可以有不同数量的实例。如果有一个实例 - 应该有一个可用区。如果有两个实例 - 应该有两个可用区。如果我的 terraform aws_elasticsearch_domain 资源中有一个实例,我将 zone_awareness_enabled 设置为 false。问题是 zone_awareness_config 没有像我假设的那样被忽略。因此,如果我有两个可用区 - 我需要将 zone_awareness_config 添加到 tf 文件中。我必须管理两个文件。

这是 cluster_config:

cluster_config {
instance_type = "c5.large.elasticsearch"
instance_count = var.es_instance_count
dedicated_master_enabled = var.dedicated_master_enabled
dedicated_master_count = var.es_instance_count
zone_awareness_enabled = var.es_instance_count > 1 ? true : false
zone_awareness_config {
availability_zone_count = var.es_instance_count
}
}

cluster_config 应该适用于 2 或 3 个实例,但也适用于 1 个 AZ 中的 1 个实例。但事实并非如此。如果我有 1 个 AZ - 我必须从文件中删除 zone_awareness_config。如果我有 1 个可用区,如何忽略 zone_awareness_config?

最佳答案

你可以试着做一个 dynamic block仅在您的实例数大于 1 时添加 zone_awareness_config block

dynamic "zone_awareness_config" {
for_each = var.es_instance_count > 1 ? [var.es_instance_count] : []
content {
availability_zone_count = var.es_instance_count
}
}

关于terraform aws_elasticsearch_domain - 如果 zone_awareness_enabled 为 false - 为什么要考虑而不是忽略 zone_awareness_config?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57942577/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com