Azure 上的 Terraform 概觀 - 什麼是 Terraform?

Hashicorp Terraform 是開放原始碼 IaC(基礎結構即程式代碼)工具,可用來設定及部署雲端基礎結構。 它會在描述拓撲所需狀態的組態檔中制訂基礎結構。 Terraform 可讓您使用 Terraform 提供者來管理任何基礎結構,例如公用雲端、私人雲端和 SaaS 服務。

適用於 Azure 基礎結構的 Terraform 提供者

有數個 Terraform 提供者可讓您管理 Azure 基礎結構:

  • AzureRM:管理穩定的 Azure 資源和功能,例如虛擬機、記憶體帳戶和網路介面。
  • AzureAD:管理 Microsoft Entra 資源,例如群組、使用者、服務主體和應用程式。
  • AzureDevops:管理 Azure DevOps 資源,例如代理程式、存放庫、專案、管線和查詢。
  • AzAPI:直接使用 Azure Resource Manager API 管理 Azure 資源和功能。 此提供者藉由啟用未發行的 Azure 資源管理,來補充 AzureRM 提供者。 如需 AzAPI 提供者的詳細資訊,請參閱 Terraform AzAPI 提供者
  • AzureStack:管理 Azure Stack Hub 資源,例如虛擬機、DNS、虛擬網路和記憶體。

使用 Azure 的 Terraform 優點

本節說明使用 Terraform 來管理 Azure 基礎結構的優點。

通用 IaC 工具

Terraform Azure 提供者可讓您使用相同的宣告式語法和工具來管理所有 Azure 基礎結構。 使用這些提供者,您可以:

  1. 設定核心平臺功能,例如管理群組、原則、使用者、群組和原則。 如需詳細資訊,請參閱 雲端採用架構 Enterprise-scale 的 Terraform 實作。
  2. 設定 Azure DevOps 專案和管線,以將一般基礎結構和應用程式部署自動化。
  3. 部署應用程式所需的 Azure 資源。

自動基礎結構管理

以 Terraform 樣本為基礎的組態檔語法可讓您以可重複且可預測的方式設定 Azure 資源。 自動化基礎結構包含下列優點:

  • 它可在部署和管理基礎結構時,降低人為錯誤的可能性。
  • 多次部署相同的範本,以建立相同的開發、測試和實際執行環境。
  • 藉由視需要建立開發和測試環境來降低成本。

在套用基礎結構變更之前先瞭解基礎結構變更

當資源拓撲變得複雜時,瞭解基礎結構變更的意義和影響可能會很困難。

Terraform CLI 可讓使用者先驗證和預覽基礎結構變更,再套用方案。 以安全的方式預覽基礎結構變更有數個優點:

  • 小組成員可以藉由瞭解建議的變更及其影響,更有效率地共同作業。
  • 在開發過程中,可能會發現非預期的變更。

下一步

根據您的環境,安裝和設定 Terraform: