Terraform 了解~和之间的区别-

Terraform 了解~和之间的区别-,terraform,Terraform,我正在将我们的一个rds实例导入terraform 地形图显示~和- ~ maintenance_window = "sat:06:10-sat:06:40" -> (known after apply) - max_allocated_storage = 0 -> null 这两个值都没有在配置中定义,我想理解,为什么会显示这些值?我们是否也在模块中配置空变量 使用Terraform

我正在将我们的一个rds实例导入terraform

地形图显示~和-

  ~ maintenance_window                    = "sat:06:10-sat:06:40" -> (known after apply)
  - max_allocated_storage                 = 0 -> null
这两个值都没有在配置中定义,我想理解,为什么会显示这些值?我们是否也在模块中配置空变量

使用Terraform 0.12.28基本上:

  • ~
    该值处于状态,并且在计划完成后正在更改
  • -
    该值处于状态,您正在尝试删除它(
    null
    value)
maintenance\u窗口
正在显示
~
,因为它的值将要更改,在您的特定情况下,它的值是计算出来的,因此在应用更改后才知道。从文档中:

维护窗口-(可选)在其中执行维护的窗口。语法:“ddd:hh24:mi ddd:hh24:mi”。例如:“周一:00:00-周一:03:00”。详见RDS维护窗口文档

如果该窗口适合您,您可以将其指定为参数,或者让Terraform将其更改为默认值

max\u allocated\u storage
正在显示
-
,因为当您在状态中导入资源时,它导入了所有地形已知参数,但您没有指定该参数。特别是从文件中:

max_allocated_storage-(可选)配置时,Amazon RDS可以自动扩展DB实例存储的上限。配置此选项将自动忽略分配给存储的差异。必须大于或等于已分配的_存储或0才能禁用存储自动缩放

在这种情况下,您可以设置
max\u allocated\u storage=0
,以便不显示该参数的计划中的任何更改

基本上:

  • ~
    该值处于状态,并且在计划完成后正在更改
  • -
    该值处于状态,您正在尝试删除它(
    null
    value)
maintenance\u窗口
正在显示
~
,因为它的值将要更改,在您的特定情况下,它的值是计算出来的,因此在应用更改后才知道。从文档中:

维护窗口-(可选)在其中执行维护的窗口。语法:“ddd:hh24:mi ddd:hh24:mi”。例如:“周一:00:00-周一:03:00”。详见RDS维护窗口文档

如果该窗口适合您,您可以将其指定为参数,或者让Terraform将其更改为默认值

max\u allocated\u storage
正在显示
-
,因为当您在状态中导入资源时,它导入了所有地形已知参数,但您没有指定该参数。特别是从文件中:

max_allocated_storage-(可选)配置时,Amazon RDS可以自动扩展DB实例存储的上限。配置此选项将自动忽略分配给存储的差异。必须大于或等于已分配的_存储或0才能禁用存储自动缩放


在这种情况下,您可以将
max\u allocated\u storage=0
设置为不显示该参数计划中的任何更改

符号的说明为。符号的说明为。