1.6.18.1. state

terraform state命令可以用来进行复杂的状态管理操作。随着你对Terraform的使用越来越深入,有时候你需要对状态文件进行一些修改。由于我们在状态管理章节中提到过的,状态文件的格式属于HashiCorp未公开的私有格式,所以直接修改状态文件是不适合的,我们可以使用terraform state命令来执行修改。

该命令含有数个子命令,我们会一一介绍。

1.6.18.1.1. 用法

terraform state \ [options] [args]

1.6.18.1.2. 远程状态

所有的state子命令都可以搭配本地状态文件以及远程状态使用。使用远程状态时读写操作可能用时稍长,因为读写都要通过网络完成。备份文件仍然会被写入本地磁盘。

1.6.18.1.3. 备份

所有会修改状态文件的terraform state子命令都会生成备份文件。可以通过-backup参数指定备份文件的位置。

只读子命令(例如list)由于不会修改状态,所以不会生成备份文件。

注意修改状态的state子命令无法禁用备份。由于状态文件的敏感性,Terraform强制所有修改状态的子命令都必须生成备份文件。如果你不想保存备份,可以手动删除。

1.6.18.1.4. 命令行友好

state子命令的输出以及命令结构都被设计成易于同Unix下其他命令行工具搭配使用,例如grep、awk等等。同样的,输出结果也可以在Windows上轻松使用PowerShell处理。

对于复杂场景,我们建议使用管道组合state子命令与其他命令行工具一同使用。

1.6.18.1.5. 资源地址

state子命令中大量使用了资源地址,我们在资源地址章节中做了相关的介绍。

results matching ""

    No results matching ""