Terraform概述
云计算概述
- 企业上云: 可以提高资源配置效率,降低信息化建设成本(说白了就是用上云计算了)
- 企业上云之前: 需要内部局域网,还要搭建机房,购买服务器,防火墙,增设设备维护岗位
云计算概述
- 什么是云计算
- 与计算主要提供计算服务,例如服务器,存储,数据库,网络等
- 对于云服务通常只需使用多少支付多少,从而降低运营成本
- 可以使基础设施更有效的运行,根据业务需求的变化调整对服务的使用
- 云计算类型
- 公有云: 多租户面向个人或企业,由第三方云服务商托管和运营。
- 私有云: 专供一个企业或组织使用的云计算资源。私有云可以位于公司的数据中心。(自建或云供应商)
- 混合云: 组合公有云和私有云,通过云之间进行共享数据。
基础设施资源管理-控制台
- 通过云供应商提供的控制页面,管理各种资源
- 当然会存在如下的问题
IaC基础设施即代码
- 通过以代码的方式来管理(定义、部署、更新和销毁)基础设施。
什么是terraform
- 基础设施即代码
- Terraform 是一个开源基础设施即代码工具,它提供一致的 CLI 工作流来管理数百个云服务。
- Terraform 通过编写声明式配置文件来操作API接口。
为什么选择terraform
- 可以管理大多数基础设施
- 对基础设施版本管理并跟踪
- 无需考虑底层逻辑,仅需声明配置
- 多云架构基础设施部署
- 创建可重用的基础架构
- 高效地基础架构扩展和部署
Terraform工作流
-
HashiCorp Terraform 是一种基础架构即代码工具,可在可读的配置文件中定义云和本地资源,可以对其进行版本控制、重用和共享。
-
还可以使用一致的工作流程在整个生命周期内配置和管理所有基础架构。Terraform 可以管理,以及 DNS 条目和 SaaS 功能等高级组件。计算、存储和网络资源等低级组件
-
Terraform 通过其应用程序编程接口 (API) 在云平台和其他服务上创建和管理资源。
-
Provider使 Terraform 能够通过可访问的 API 与几乎任何平台或服务一起工作。
- terraform registry: https://registry.terraform.io/
Terraform 核心工作流程-write
Write阶段,即定义所需要的资源。这些资源可以是跨越多个云提供商和服务。
例如: 定义一个具有安全组和负载均衡器的ECS机器,并部署应用。
Terraform 核心工作流程-plan
Plan阶段,Terraform 创建一个执行计划。将根据配置文件创建、更新或销毁基础架构。
例如: 可以查看当前基础设施与期望状态对比,便于对TF配置进行预览。
Terraform 核心工作流程-apply
Apply阶段,在批准后Terraform 会按照资源依赖关系顺序执行。
例如: 更新 VPC 的属性并更改该 VPC 中的虚拟机数量,Terraform 将在扩展虚拟机之前重新创建 VPC。
Terraform的安装
- 下载连接: https://www.terraform.io/downloads