使用 Terraform 佈建 Cloud Storage 資源

HashiCorp Terraform 是一種基礎架構即程式碼 (IaC) 工具,可讓您佈建及管理雲端基礎架構。Terraform 提供稱為「供應商」的外掛程式,可讓您與雲端服務供應商和其他 API 互動。您可以使用 Terraform 供應商 Cloud de Confiance佈建及管理 Cloud de Confiance by S3NS 資源,包括 Cloud Storage。

本頁面將介紹如何搭配使用 Terraform 與 Cloud Storage,包括 Terraform 的運作方式簡介,以及協助您開始搭配使用 Terraform 與 Cloud de Confiance的資源。您也可以找到 Cloud Storage 的 Terraform 參考文件連結、程式碼範例,以及使用 Terraform 佈建 Cloud Storage 資源的指南。

如要瞭解如何開始使用 Terraform 搭配 Cloud de Confiance,請參閱安裝及設定 Terraform 或 Terraform for Cloud de Confiance 快速入門。

Terraform 的運作方式

Terraform 採用宣告式語法,並以設定為導向,可用來描述要在 Cloud de Confiance 專案中佈建的基礎架構。在一個或多個 Terraform 設定檔中撰寫這項設定後,您可以使用 Terraform CLI 將這項設定套用至 Cloud Storage 資源。

以下步驟說明 Terraform 的運作方式:

  1. 您可以在 Terraform 設定檔中,說明要佈建的基礎架構。您不需要編寫程式碼,說明如何佈建基礎架構。Terraform 會為您佈建基礎架構。
  2. 執行 terraform plan 指令,評估設定並產生執行計畫。您可以查看計畫,並視需要進行變更。
  3. 執行 terraform apply 指令,該指令會執行下列動作:

    1. 根據執行計畫,在背景呼叫對應的 Cloud Storage API,佈建基礎架構。
    2. 這會建立 Terraform 狀態檔案,也就是 JSON 檔案,可將設定檔中的資源對應至實際基礎架構中的資源。Terraform 會使用這個檔案記錄基礎架構的最新狀態,並決定何時建立、更新及刪除資源。
    3. 執行 terraform apply 時,Terraform 會使用狀態檔案中的對應項目,比較現有基礎架構與程式碼,並視需要進行更新:

      • 如果設定檔中定義了資源物件,但狀態檔案中沒有,Terraform 就會建立該物件。
      • 如果狀態檔中存在資源物件,但設定與設定檔不同,Terraform 會更新資源,使其與設定檔相符。
      • 如果狀態檔案中的資源物件與設定檔相符,Terraform 就不會變更資源。

Cloud Storage 的 Terraform 資源

資源是 Terraform 語言的基本元素。每個資源區塊都會說明一或多個基礎架構物件,例如虛擬網路或運算執行個體。

下表列出適用於 Cloud Storage 的 Terraform 資源:

服務 Terraform 資源 資料來源

Cloud Storage

Terraform 服務:Cloud Storage

Storage Intelligence

Terraform 服務:Cloud Storage Control

Storage Intelligence 的儲存空間批次作業功能

Terraform 服務:Cloud Storage Batch Operations

-

Storage Intelligence 的儲存空間洞察功能

Terraform 服務:Cloud Storage Insights

Cloud Storage 的 Terraform 相關指南

下表列出 Cloud Storage 的 Terraform 使用指南和教學課程:

指南 詳細資料
快速入門導覽課程:使用 Terraform 建立 bucket 並上傳物件 本快速入門導覽課程說明如何建立 Terraform 設定檔,佈建儲存空間值區,並將範例物件上傳至該值區,藉此開始使用 Terraform。
建立 bucket 本指南說明如何建立 bucket。
取得 bucket 中繼資料 本指南說明如何查看 bucket 的中繼資料。
上傳物件 本指南說明如何從本機檔案系統將物件上傳至 bucket。
取得物件中繼資料 本指南說明如何查看物件的中繼資料。
管理物件生命週期 本指南說明如何設定值區的生命週期設定。
設定 Pub/Sub 通知 本指南說明如何設定 bucket,將物件變更通知傳送至 Pub/Sub 主題。
建立 HMAC 金鑰 本指南說明如何為專案中的服務帳戶建立雜湊式訊息驗證碼 (HMAC) 金鑰。
公開資料 本指南說明如何設定 bucket 中的所有物件,讓公開網路中的所有使用者都能讀取。

Cloud Storage 適用的 Terraform 模組和藍圖

模組和藍圖可協助您自動佈建及管理大量 Cloud de Confiance 資源。模組是一組可重複使用的 Terraform 設定檔,可建立 Terraform 資源的邏輯抽象概念。藍圖是可部署及重複使用的模組套件,也是實作及記錄特定解決方案的政策。

下表列出與 Cloud Storage 相關的模組和藍圖:

模組或藍圖 詳細資料
terraform-google-cloud-storage 這個模組會建立一或多個 Cloud Storage bucket,並將基本權限指派給任意使用者。

後續步驟