Terraform配置AWS OpenSearch时multi_az_with_standby_enabled参数报错
关于Terraform配置AWS OpenSearch的multi_az_with_standby_enabled参数问题
问题描述
我正在使用Terraform配置AWS OpenSearch,尝试启用multi_az_with_standby_enabled设置时遇到错误。我的Terraform配置代码如下:
resource "aws_opensearch_domain" "main" { ... multi_az_with_standby_enabled = true ... }
执行terraform apply时出现如下错误:
Error: Unsupported argument on opensearch/main.tf line 73, in resource "aws_opensearch_domain" "main": multi_az_with_standby_enabled = true An argument named "multi_az_with_standby_enabled" is not expected here.
我感到困惑的是,该配置选项存在于AWS Terraform Provider的代码库中,但在官方文档中却找不到相关说明。
问题解答
1. 该参数是否为有效参数?
目前在正式发布的AWS Terraform Provider版本中,multi_az_with_standby_enabled并不是aws_opensearch_domain资源的有效配置参数。
2. 为什么代码库中存在该选项?
你看到的代码来自AWS Terraform Provider仓库的主分支,这部分属于开发中的未发布代码。主分支通常包含正在迭代的新特性、Bug修复,只有当官方发布新版本时,这些代码才会被整合到稳定分支,并同步到Terraform Registry的文档中。你当前使用的Provider版本(5.34.0)还没有包含这个参数的正式支持。
3. 报错原因
你使用的Provider版本(5.34.0)未集成该参数的支持逻辑,Terraform无法识别这个未定义的参数,因此抛出"Unsupported argument"错误。
4. 解决办法
- 等待官方版本发布:如果需要使用
multi_az_with_standby_enabled特性,只能等待AWS Terraform Provider发布包含该参数的新版本,届时文档也会同步更新。 - 使用现有官方支持参数:当前正式版本中,若要配置多AZ高可用,可以使用
multi_az_enabled = true参数,这是官方稳定支持的多AZ配置方式。 - 风险方案(不推荐生产环境):手动从Provider仓库主分支编译最新代码,替换本地的Provider版本,但这种方式可能存在兼容性问题,且没有官方技术支持。
内容的提问来源于stack exchange,提问作者Sarangan
相关产品推荐
相关产品推荐

