## 安装Terraform ##
1. https://www.terraform.io/downloads.html
2. 设置path=D:\tools\tf\terraform
3. cmd 运行terraform --version
```
D:\>terraform --version
Terraform v0.14.5
```
4. 下载: https://docs.aws.amazon.com/cli/latest/userguide/install-windows.html AWSCLI64.msi 并安装
```
aws configure --profile course
输入access_key和secret_key和resion
```
## 用一个最简单的例子创建一个linux主机 ##
1. main.tf
```
provider "aws" {
profile = "course"
region = "ap-southeast-1"
}
resource "aws_vpc" "my_vpc" {
cidr_block = "10.0.0.0/16"
}
resource "aws_subnet" "my_subnet" {
vpc_id = aws_vpc.my_vpc.id
cidr_block = "10.0.1.0/24"
availability_zone_id = "apse1-az1"
}
resource "aws_instance" "my_instance" {
ami = "ami-0adfdaea54d40922b"
instance_type = "t2.micro"
associate_public_ip_address = true
subnet_id = aws_subnet.my_subnet.id
private_ip = "10.0.1.100"
credit_specification {
cpu_credits = "unlimited"
}
}
```
2. 运行terraform init /plan /apply 输入yes
D:\course\example\1.02>terraform init
3. 查看AWS后台,发现一台EC2主机已经被创建
4. 执行terraform destroy 输入yes 销毁主机以及关联资源
5. 查看当前terraform生成的文件
```
D:\course\example\1.02>dir
Volume in drive D is UserProfile
Volume Serial Number is 8A16-AC57
Directory of D:\course\example\1.02
2021/05/06 16:29 <DIR> .
2021/05/06 16:29 <DIR> ..
2021/05/06 14:26 <DIR> .terraform
2021/05/06 16:17 1,083 .terraform.lock.hcl
2021/05/06 16:10 1,341 main.tf
2021/05/06 16:29 157 terraform.tfstate
2021/05/06 16:28 7,463 terraform.tfstate.backup
4 File(s) 10,044 bytes
3 Dir(s) 97,182,687,232 bytes free
```
- 【概要简介】1.001-简介-本课程体系简介
- 【概要简介】1.002-简介-云的发展趋势
- 【概要简介】1.003-简介-国内主流的云服务平台
- 【概要简介】1.004-简介-Terraform云平台devops的瑞士军刀
- 【快速入门】2.000-快速入门-云后台创建主机
- 【快速入门】2.001-快速入门-创建主机-先查询资源
- 【快速入门】2.002-快速入门-创建主机-阿里云
- 【快速入门】2.003-快速入门-创建主机-亚马逊aws
- 【快速入门】2.100-快速入门-官方网站学习资料
- 【快速入门】2.101-快速入门-Terraform主要的文件.
- 【快速入门】2.102-快速入门-创建虚拟网络
- 【快速入门】1.103-快速入门-创建安全和规则
- 【快速入门】2.104-快速入门-创建云盘
- 【快速入门】2.105-快速入门-创建Ecs主机服务
- 【快速入门】2.200-快速入门-搭建Nginx
- 【快速入门】2.201-快速入门-搭建Nginx-分拆main文件
- 【快速入门】2.203-快速入门-购买固定IP并绑定到主机
- 【快速入门】2.204-快速入门-绑定域名到自己的主页
- 【快速入门】2.205-快速入门-申请免费的https证书并绑定TODO
- 【快速入门】2.300-快速入门-创建Oss存储并搭建静态网站
- 【快速入门】2.300-快速入门-Cdn-TODO
- 【中级进阶】3.101-中级进阶-用Packer创建Wordpress的主机镜像
- 【中级进阶】3.102-中级进阶-利用自己的镜像创建Ecs主机
- 【中级进阶】3.104-中级进阶-用自己镜像搭建负载均衡的Wordpress网站
- 【中级进阶】3.105-中级进阶-利用弹性伸缩ESS创建SLB对应的动态数量的ECS服务器
- 【中级进阶】3.106-中级进阶-自定义Module搭建多个负载均衡的Wordpress网站
- 【中级进阶】3.200-中级进阶-备份多个Wordpress服务器的日志到ossTODO
- 【中级进阶】3.300-中级进阶-创建Ecs快照服务
- 【中级进阶】3.400-中级进阶-Datasource查询
- 【中级进阶】3.500-中级进阶-保存Terraform的state文件
- 【中级进阶】3.600-中级进阶-Variables and environment variables
- 【中级进阶】3.700-中级进阶-Terraform命令解析
- 【高级深入】4.000-高级深入-创建容器镜像服务
- 【高级深入】4.001-高级深入-编译自己的docker镜像并上传到Aliyun cr
- 【高级深入】4.002-高级深入-Terraform创建Kubernetes集群
- 【高级深入】4.003-高级深入-Terraform在Kubernetes集群中部署Wordpress应用
- 【高级深入】4.100-高级深入-使用云服务平台提供的module来创建服务资源
- 【高级深入】4.200-高级深入-同步Terraform的状态.到terraform cloud
- 【高级深入】4.300-高级深入-Terraform的语法
- 【高级深入】4.400-高级深入-Terraform与其Ansible一起使用
- 【高级深入】4.500-高级深入-Terraform的provisioner
- 【高级深入】4.600-高级深入-Snat
- 【高级深入】4.601-高级深入-Dnat
- 4.602-高级深入-Vpc-vpc通信
- 【高级深入】4.603-高级深入-Switch与switch-通信