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