Terraform中azurerm_lb_nat_rule参数不支持报错排查求助
报错原因分析
1. 混淆了NAT规则与NAT端口池的资源类型
frontend_port_start和frontend_port_end是azurerm_lb_nat_pool(NAT端口池)的专属参数,用于定义一段前端端口范围,批量映射到后端地址池中VM的同一端口。而你使用的azurerm_lb_nat_rule是单个NAT规则,仅支持通过frontend_port指定单个端口,不支持端口范围类参数。
2. 单个NAT规则不支持绑定后端地址池
backend_address_pool_id参数仅适用于负载均衡规则(azurerm_lb_rule)或NAT端口池(azurerm_lb_nat_pool)。单个NAT规则是一对一的端口映射,需要绑定到具体VM的网络接口IP配置,应使用backend_ip_configuration_id参数,而非后端地址池ID。
3. 官方文档版本与本地Provider版本不匹配
你参考的官方文档可能对应了较新版本的AzureRM Provider,或者误查看了azurerm_lb_nat_pool的文档。不同版本的Terraform AzureRM Provider参数会有差异,建议执行terraform version查看本地使用的Provider版本,再对应查看同版本的官方文档。
内容的提问来源于stack exchange,提问作者MMagurean
相关产品推荐
相关产品推荐

