快速入门:使用适用于 Terraform 的 Azure 导出来导出第一个资源
本文介绍如何使用适用于 Terraform 的 Azure 导出将 Azure 资源导出到本地状态文件中。
- 使用 Azure CLI 或 Azure PowerShell 创建测试 Azure 资源组。
- 使用 Azure CLI 或 Azure PowerShell 创建测试 Linux 虚拟机。
- 将资源组和虚拟机的状态从 Azure 导出到本地状态文件。
- 测试本地状态是否与 Azure 中的资源状态匹配。
先决条件
创建测试 Azure 资源
创建 Linux VM。
运行 az group create 以创建 Azure 资源组。
az group create --name myResourceGroup --location eastus
运行 az vm create 以创建虚拟机。
az vm create \ --resource-group myResourceGroup \ --name myVM \ --image Debian11 \ --admin-username azureadmin \ --generate-ssh-keys \ --public-ip-sku Standard
导出 Azure 资源
可以在以下两种模式之一中运行 aztfexport
工具:交互式和非交互式。 对于此演示,你将使用交互式模式。
创建要在其中进行测试的目录。
打开命令提示符,并导航到新目录。
执行
aztfexport resource-group
,导出名为myResourceGroup
的资源组。aztfexport resource-group myResourceGroup
工具初始化后,将显示要导出的资源列表。 每行都有一个与相应 AzureRM 资源类型匹配的 Azure 资源 ID。 可用命令列表显示在显示器底部。 使用其中一个命令,滚动到底部,并验证预期的 Azure 资源是否已正确映射到各自的 Terraform 资源类型。
按
w
运行导出。要点:
- 对于非交互式资源,请添加
--non-interactive
标志:aztfexport rg --non-interactive myResourceGroup
。
- 对于非交互式资源,请添加
注意
运行适用于 Terraform 的 Azure 导出可能需要几分钟才能完成。
验证结果
工具导出完 Azure 资源后,在包含生成的文件的同一目录中运行以下命令。
运行 terraform init。
terraform init --upgrade
运行 terraform plan。
terraform plan
如果终端输出不需要更改,那么恭喜你!
基础结构及其相应的状态已成功导出到 Terraform。
清理资源
不再需要本文中创建的资源时,请执行以下步骤:
导航到包含本文的 Terraform 文件的目录。
-
terraform destroy