Terraform – Import的使用
Terraform Import的作用是,我们可以把原本已经手动创建的云资源导入到 terraform来,然后使用terraform来管理云资源。

以下的使用案例是编写import文件,如果想要使用命令行import的话需要查看官方文档。
【命令行import云资源】
terraform import aws_instance.example i-abcd1234
使用案例
导入原有已经创建的Security group,然后更改description
- 编写import.tf
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = ">=5.0"
}
}
}
provider "aws" {
region = "ap-southeast-1"
}
import {
id = "sg-053b7190b6901db91"
to = aws_security_group.mysg
}
2.执行init
terraform init
3. 执行生成云资源tf文件 , 生成文件名是generated.tf
terraform plan -generate-config-out=generated.tf

4. 生成云资源的tfstate文件
terraform apply -auto-approve

5. 尝试更改已经导入的Security group的description

更改之后就执行以下命令
terraform apply -auto-approve
结果:是成功更改了description, 但是由于Security group description是创建之后就无法更改了,如果想要更改的话,terraform就会destroy了再重新创建一个,所以Security group id 会不一样。
更改前的ID: sg-053b7190b6901db91
更改后的ID: sg-0e3aa8c2c80391c89


Facebook评论