DevOps / Terraform

Terraform介绍与开发环境配置

浅时光博客 · 11月21日 · 2022年 · 本文1708个字,预计阅读5分钟 11539次已读

一、Terraform介绍


概览

HashiCorp Terraform 是一个IT基础架构自动化编排工具,可以用代码来管理维护 IT 资源。Terraform的命令行接口(CLI)提供一种简单机制,用于将配置文件部署到任意支持的云上,并对其进行版本控制。它编写了描述云资源拓扑的配置文件中的基础结构,例如虚拟机、存储帐户和网络接口。

Terraform是一个高度可扩展的工具,通过 Provider 来支持新的基础架构。

官方地址原文链接:https://www.dqzboy.comhttps://www.terraform.io/

优势

  • 将基础结构部署到多个云

Terraform适用于多云方案,将类似的基础结构部署到阿里云、其他云提供商或者本地数据中心。开发人员能够使用相同的工具和相似的配置文件同时管理不同云提供商的资源。

  • 自动化管理基础结构

Terraform能够创建配置文件的模板,以可重复、可预测的方式定义、预配和配置ECS资源,减少因人为因素导致的部署和管理错误。能够多次部署同一模板,创建相同的开发、测试和生产环境。

  • 基础架构即代码(Infrastructure as Code)

可以用代码来管理维护资源。允许保存基础设施状态,从而使您能够跟踪对系统(基础设施即代码)中不同组件所做的更改,并与其他人共享这些配置 。

  • 降低开发成本

您通过按需创建开发和部署环境来降低成本。并文章来源(Source):https://www.dqzboy.com且,您可以在系统更改之前进行评估。

二、基础设施即代码


什么是 Terraform 的基础设施即文章来源(Source):浅时光博客代码?

基础架构即代码 (IaC) 工具允许您使用配置文件而不是通过图形用户界面来管理基础架构。IaC 允许您通过定义可以版本化、重用和共享的资源配置,以安全、一致和可重复的方式构建、更改和管理您的基础架构。

Terraform 是 HashiCorp 的基础设施即代码工具。它允许您在人类可读的声明性配置文件中定义资源和基础设施,并管理您的基础设施的生命周期。与手动管理基础架构相比,使用 Terraform 有几个优势:

  • Terraform 可以管理多个云平台上的基础架构。
    • 人类可读的配置语言可帮助您快速编写基础架构代码。
    • Terraform 的状态允许您在整个部署过程中跟踪资源更改。
    • 您可以将配置提交给版本控制,以安全地在基础架构上进行协作。

管理任何基础设施

Terraform插件让 Terraform 通过其应用程序编程接口 (API) 与云平台和其他服务进行交互。HashiC文章来源(Source):浅时光博客orp 和 Terraform 社区编写了 1000 多个providers来管理 Amazon Web Services (AWS)、Azure、谷歌云平台 (GCP)、Kubernetes、Helm、GitHub、Splunk 和 DataDog 上的资源。

标准化您的部署工作流程

Providers将基础设施的各个单元(例如计算实例或专用网络)定义为资源。您可以将来自不同providers的资源组合成为模块,并可以由Terraform 配置重复使用,并使用一致的语言和工作流程来管理它们。

Terraform 的配置语言是声明式的,这就表示基础设施所需的最终状态,Terraform Providers会自动计算资源之间的依赖关系,并以正确的顺序创建或销毁资源。

三、Terraform安装


  • 这里我将以Windows系统举例进行安装部署Terraform,具体操作如下:

1、首选下载安装包

在Terraform官方网站找到Windows系统对应的安装包文件进行安装

官网:https://www.terraform.io/

2、配置Terraform

Terraform是由Go语言编写的一个程序,所以我们解压之后就是一个可执行的二进制程序文件,我们只需要在PC机上配置好对应的环境变量即可直接使用了。

  • 按快捷键win+R后,输入 sysdm.cpl,然后回车
terraform -version

3、VSCode安装插件

  • 这里我用到是vscode编辑器,然后安装下面的两个插件,用来进行代码补全

今天文章就到这里,如果文章对你有帮助就动动你那发财的小手,点个赞留个言,给本站加点热度。谢谢支持!


本文作者:浅时光博客
原文链接:https://www.dqzboy.com/12398.html
版权声明:知识共享署名-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)协议进行许可,转载时请以超链接形式标明文章原始出处和作者信息
免责声明:本站发布的内容(图片、视频和文字)以及一切破解补丁、注册激活和软件解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。访问和下载本站内容,说明您已同意上述条款!


2 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!

  1. 流年2022-11-23 · 22:05

    感谢博主的技术分享

  2. RickYu2022-11-21 · 17:44

    感谢博主的技术分享