摘要
本文将衔接《腾讯云Terraform应用指南(三)》,将继续向大家介绍Terraform CLI中最后几个常用命令,助力腾讯云Terraform应用。
一、Commands Introduction Episode 3
回顾之前的命令使用指南请点击这里
1、refresh
terraform refresh
通过状态文件协调当前状态与实际的基础设施状态, 用于检测不一致的内容,并更新状态文件。
标准语法:terraform refresh [options] [dir]
options
用来填写refresh
的flagsdir
用来指定要刷新的目录,默认为当前目录
默认情况下refresh
不需要任何标志,并在当前目录中查找要刷新的配置和状态文件
使用terraform refresh
命令,刷新已有资源状态
// Refresh the resource
$ terraform refresh
options
-backup=path
- 设置备份文件的路径,取值-
时,不备份-state=path
- 设置状态文件的路径
有关refresh
指令的更多信息,请点击这里
2、show
terraform show
用于查看已经部署的资源。
标准语法:terraform show [options] [path]
options
用来填写show
的flagspath
用来指定要查看的目录,默认为当前目录
查看当前目录下部署的资源信息
代码语言:txt复制 // Show the resource
$ terraform show
options
-json
- 显示状态的JSON
表示,有关JSON
的输出格式请点击这里
3、taint
terraform taint
用于对资源进行标记,强制被标记的资源在下一次应用中被销毁并重新创建。
标准语法:terraform taint [options] address
options
用来填写taint
的flagsaddress
用来指定被标记资源的地址
对已创建的服务器进行标记,使其在下一次应用中销毁并重新创建。注意:这里的address
填写的是资源的引用格式,如果资源中有count
参数,需要加上索引数
// Taint the resource
$ terraform taint tencentcloud_instance.cvm[0]
再次执行terraform apply
时,会提示被标记的资源销毁后,重新创建
options
-allow-missing
- 允许标记丢失的资源
标记不存在的资源
代码语言:txt复制 // Taint the missing resource
$ terraform taint -allow-missing tencentcloud_instance.cvm[1]
使用-allow-missing
的前后对比
-backup=path
- 设置备份文件的路径,取值-
时,不备份-state=path
- 设置状态文件的路径
有关taint
指令的更多信息,请点击这里
4、validate
terraform validate
用于验证.tf
文件的语法。
标准语法:terraform validate [options] [dir]
options
用来填写validate
的flagsdir
用来指定要验证的目录,默认为当前目录
默认情况下,validate
不需要任何标志,并在当前目录中查找配置
// Validate the resource
$ terraform validate
options
-check-variables=true
- 检查是否制定了所有必需的变量,默认是true
有关validate
指令的更多信息,请点击这里
5、untaint
terraform untaint
取消对已有资源的标记。
标准语法:terraform untaint [options] name
options
用来填写untaint
的flagsname
用来指定资源,同taint
的address
参数
options
-backup=path
- 设置备份文件的路径,取值-
时,不备份-state=path
- 设置状态文件的路径
有关untaint
指令的更多信息,请点击这里
6、workspace
terraform workspace
用于管理工作区,包含一些子命令。
标准语法:terraform workspace <subcommand> [options] [args]
subcommand
用来填写workspace
的子命令options
用来填写workspace
的flagsargs
用来填写参数
terraform workspace new [NAME]
创建一个新的工作区,NAME
用来指定新工作区的名字
创建命名为test
的新工作区
//Create a new workspace
$ terraform workspace new test
terraform workspace list
列出现有的工作区,使用星号*
标记指示当前工作区
// List the workspace
$ terraform workspace list
terraform workspace select [NAME]
选择一个进一步操作的工作区,NAME
用来指定新工作区的名字
// Select the workspace
$ terraform workspace select
将workspace从test
变成default
terraform workspace delete [NAME]
删除已有的工作区
删除test
工作区
// Delete the workspace
$ terraform workspace delete test
terraform workspace show
输出当前工作区的名字
// Show the workspace
$ terraform workspace show
二、写在最后
至此,Terraform可用的指令已经全部介绍完,更多的应用情景还需要用户在实践中体验,后续我们将介绍一些Terraform的高阶应用指南,如模块化等,帮助用户掌握更高级的应用手段。请持续关注腾讯云 社区,生态产品专栏《腾讯云Terraform应用指南》系列,生态产品团队将持续帮助用户快速入门,熟练掌握Terraform应用技巧。
“Write, Plan, and create Infrastructure as Code" 让每一个腾讯云用户高效、快捷的部署资源。