Terraform入门 – 3. 变更基础设施

47次阅读

共计 1155 个字符,预计需要花费 3 分钟才能阅读完成。

在上个页面,你使用 Terraform 创建了你第一个基础设施:一个 EC2 实例。在本页,我们将变更那个资源,并了解 Terraform 如何处理变更。
基础设施在持续发展,Terraform 的创建就是为了管理和实施这些变更。当你修改配置文件时,Terraform 构建一个变更必要的执行计划来达到你的期望状态。
使用 Terraform 变更基础设施,你不仅可以版本控制你的配置也可以版本控制你的状态,所以你可以看到你的基础设施时如何随着时间发展变化。
配置
让我们修改实例的 ami。在你的配置文件中编辑 aws_instance.example 资源,将它改成如下所示:
resource “aws_instance” “example” {
ami = “ami-b374d5a5”
instance_type = “t2.micro”
}
注意:EC2 经典用户请使用 ami-656be372 AMI 和 t1.micro 类型。
我们将 AMI 从 Ubuntu 16.04 LTS 改成了 Ubuntu 16.10。Terraform 配置意味着做如此变更。你也可以删除该资源,Terraform 知道将要销毁老资源。
应用变更
改完配置以后,再次执行 terraform apply 来查看 Terraform 将如何应用该变更到当前资源。
$ terraform apply
# …

-/+ aws_instance.example
ami: “ami-2757f631” => “ami-b374d5a5” (forces new resource)
availability_zone: “us-east-1a” => “<computed>”
ebs_block_device.#: “0” => “<computed>”
ephemeral_block_device.#: “0” => “<computed>”
instance_state: “running” => “<computed>”
instance_type: “t2.micro” => “t2.micro”
private_dns: “ip-172-31-17-94.ec2.internal” => “<computed>”
private_ip: “172.31.17.94” => “<computed>”
public_dns: “ec2-54-82-183-4.compute-1.amazonaws.com” => “<computed>”
public_ip: “54.82.183.4” => “<computed>”
subnet_id: “subnet-1497024d” => “<computed>”
vpc_security_group_ids.#: “1” => “<computed>”
下一步
<!– more –>
<!–// 硬啃官方文档产物,若有不妥之处,欢迎指正,请以官方文档为准!//–>

正文完
 0