Terraform 里最核心的单位,是 resource。
它可以理解成:
蓝图上的一个具体建设对象。
比如:
- 一台 ECS / EC2
- 一个 VPC
- 一个子网
- 一个数据库实例
- 一个 S3 bucket
- 一条 DNS 记录
- 一个 Kubernetes Deployment
例如:
resource "aws_instance" "api" {
ami = "ami-0123456789abcdef0"
instance_type = "t3.small"
tags = {
Name = "software-city-api"
Env = "prod"
}
}这张图纸的意思就是:
生产城市里应该有一台叫 software-city-api 的服务机。
这里要记住一个很重要的结构:
resource "资源类型" "局部名字" {
...
}例如:
aws_instance:资源类型api:你在当前蓝图里的本地标识
也就是说:
aws_instance.api像是在总工局档案里的一条登记号。