中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Terraform主要特點有哪些

發布時間:2022-01-07 17:01:38 來源:億速云 閱讀:197 作者:iii 欄目:云計算

本文小編為大家詳細介紹“Terraform主要特點有哪些”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Terraform主要特點有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

Terraform 是什么

如果兩年前問 Terraform 是什么,國內熟悉它的人可能并不是很多,畢竟它是2014年的新生兒,提到資源編排,大家能優先想到的也是 AWS 的 CloudFormation,Azure 的 ARM 以及阿里云的 ROS。但是如果今天再問“Terraform 是什么”,相信很大一部分人對它不再陌生,并且一些公司或者感興趣的開發者已經開始使用 Terraform 來管理他們的基礎設施。不論是 Hashicorp 的官方宣傳,還是阿里云云棲社區的布道;不論是 Devops的持續發展,還是云原生的火熱傳播;不論是國內最初只有阿里云支持,還是后來國內其他云廠商的陸續支持,Terraform 近兩年在國內被越來越多的提及。

在此之前,不止一篇云棲文章介紹過Terraform是什么,本文將結合Terraform的官方文檔,對這些文章中的介紹做一個整理和總結。

2014年,Hashicorp 公司推出了一款產品 Terraform
Terraform主要特點有哪些

Terraform 官方的定義如下:

Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.

Configuration files describe to Terraform the components needed to run a single application or your entire datacenter. Terraform generates an execution plan describing what it will do to reach the desired state, and then executes it to build the described infrastructure. As the configuration changes, Terraform is able to determine what changed and create incremental execution plans which can be applied.

The infrastructure Terraform can manage includes low-level components such as compute instances, storage, and networking, as well as high-level components such as DNS entries, SaaS features, etc.

總結起來,三句話:

  • Terraform 是一個可以安全、高效地建立,變更以及版本化管理基礎設施的工具,并可在主流的服務提供商上提供自定義的解決方案。

  • Terraform 以配置文件為驅動,在文件中定義所要管理的組件(基礎設施資源),以此生成一個可執行的計劃(如果不可執行,會提示報錯),通過執行這個計劃來完成所定義組件的創建,增量式的變更和持續的管理。

  • Terraform不僅可以管理IaaS層的資源,如計算實例,網絡實例,存儲實例等,也可以管理更上層的服務,如DNS 域名和解析記錄,SaaS 應用的功能等

更通俗的講,Terraform 就是運行在客戶端的一個開源的,用于資源編排的自動化運維工具。以代碼的形式將所要管理的資源定義在模板中,通過解析并執行模板來自動化完成所定義資源的創建,變更和管理,進而達到自動化運維的目標。

Terraform 主要特點

Terraform 具備以下幾個主要特點:

  • 基礎設施即代碼(IaC, Infrastructure as Code)
    Terraform 基于一種特定的配置語言(HCL, Hashicorp Configuration Language)來描述基礎設施資源。由此,可以像對待任何其他代碼一樣,實現對所描述的解決方案或者基礎架構的版本控制和管理。同時,通用的解決方案和基礎架構可以以模板的形式進行便捷的共享和重用。

resource "alicloud_instance">
  • 執行計劃(Execution Plans)
    Terraform 在執行模板前,運行 terraform plan 命令會先通過解析模板生成一個可執行的計劃,這個計劃展示了當前模板所要創建或變更的資源及其屬性。操作人員可以預覽這個計劃,在確認無誤后執行 terraform apply 命令,即可完成對所定義資源的快速創建和變更,以免發生一些超預期的問題。

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # alicloud_instance.instance[0] will be created
  + resource "alicloud_instance" "instance" {
      + availability_zone          = (known after apply)
      + id                         = (known after apply)
      + image_id                   = "ubuntu_140405_64_40G_cloudinit_20161115.vhd"
      + instance_name              = "my-first-tf-vm"
      + instance_type              = "ecs.sn1ne.small"
      + security_groups            = [
          + "sg-abc12345",
        ]
      + tags                       = {
          + "from" = "terraform"
        }
      + vswitch_id                 = "vsw-abc12345"
            ...
    }

  # alicloud_instance.instance[1] will be created
  + resource "alicloud_instance" "instance" {
      ...
  }
  # alicloud_instance.instance[2] will be created
  + resource "alicloud_instance" "instance" {
      ...
  }
    ...

Plan: 5 to add, 0 to change, 0 to destroy.
  • 資源拓撲圖(Resource Graph)
    Terraform 會根據模板中的定義,構建所有資源的圖形,并且以并行的方式創建和修改那些沒有任何依賴資源的資源,以保證執行的高效性。對于有依賴資源的資源,被依賴的資源優先執行。

  • 自動化變更(Change Automation)
    不論多復雜的資源,當模板中定義的資源內容發生變更時,Terraform 都會基于新的資源拓撲圖將變更的內容plan 出來,在確認無誤后,只需一個命令即可完成數個變更操作,避免了人為操作帶來的錯誤。

讀到這里,這篇“Terraform主要特點有哪些”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阳新县| 三门峡市| 泽库县| 民权县| 通河县| 四平市| 天津市| 章丘市| 怀柔区| 黄浦区| 临颍县| 宜良县| 饶河县| 平昌县| 宝兴县| 卓尼县| 房产| 苏尼特右旗| 罗田县| 安康市| 静乐县| 巴彦淖尔市| 柳河县| 通化市| 阜康市| 蓬安县| 南召县| 额济纳旗| 榆树市| 麟游县| 仁化县| 东台市| 兴义市| 北票市| 枝江市| 石柱| 沂源县| 察隅县| 沧源| 建宁县| 清远市|