透過 Google Cloud Marketplace 提供的虛擬機器 (VM) 產品是自訂 VM 執行個體,可在 Compute Engine 上執行。如要瞭解 Compute Engine 概念總覽,請參閱 Compute Engine 說明文件。
Google Cloud Marketplace 上的部分 VM 產品支援透過指令列介面 (CLI) 使用 Terraform 部署,這是一項用於佈建及管理基礎架構的開放原始碼工具。如要進一步瞭解 Terraform,請參閱「開始使用 Terraform」一文。
總覽
本頁說明如何使用 Terraform 透過 CLI 部署 VM 產品。大致來說,您需要:
選用:選取或建立服務帳戶,用於命令列部署作業。
視需要設定服務帳戶模擬。
下載 Terraform 模組或程式碼片段,透過 CLI 部署 VM 產品。
使用模組或程式碼片段部署 VM 產品。
前往指令列部署分頁
如要透過 CLI 開始部署 VM 產品,請按照下列步驟操作:
在 Cloud Marketplace 中,前往要透過 CLI 部署的 VM 產品的產品資訊頁面。
按一下「啟動」按鈕,或按一下「使用 CLI 部署」前往「指令列部署」分頁。
(選用) 選取或建立服務帳戶
在「Command-line deployment」(指令列部署) 分頁中,您可以選擇要選取或建立用於指令列部署作業的服務帳戶。如果您在產生程式碼片段時,尚未在「Command-line deployment」(命令列部署) 分頁中選取或建立服務帳戶,則必須先手動編輯產生的 Terraform 片段,加入服務帳戶,才能使用該片段。如要進一步瞭解服務帳戶,請參閱「建立及管理服務帳戶」。
如要透過 CLI 部署 Cloud Marketplace VM 產品,您使用的服務帳戶必須具備Compute Admin (roles/compute.admin) Identity and Access Management (IAM) 角色。如果您從「Command-line deployment」(指令列部署) 分頁建立新的服務帳戶,Google Cloud Marketplace 會自動將這個角色授予新的服務帳戶。如果您從「指令列部署」分頁選取現有服務帳戶,請務必確認該服務帳戶具備這個角色。
如要選取或建立服務帳戶,請按照下列步驟操作:
在 VM 產品的 Google Cloud Marketplace 資訊中,前往「指令列部署」分頁,然後在「設定服務帳戶 (選用)」下方,按一下「設定」按鈕。
在「Service account requesting permissions」(要求權限的服務帳戶) 下方,您可以按一下「Select an existing service account」(選取現有服務帳戶) 或「Create a new service account」(建立新的服務帳戶)。
選取現有的服務帳戶
如要選取現有的服務帳戶,請按照下列步驟操作:
在「選取服務帳戶」下方,選取要使用的服務帳戶。清單會列出所有具備 Compute 管理員 (
roles/compute.admin) 角色的現有服務帳戶。如果現有的服務帳戶都沒有 Compute 管理員 (
roles/compute.admin) 角色,清單就會空白。如果清單空白,您可以將這個角色授予現有的其中一個服務帳戶,然後返回這個分頁,也可以選擇建立新的服務帳戶。點選「提交」按鈕。
建立新的服務帳戶
如要建立新的服務帳戶,請執行下列操作:
選擇服務帳戶的名稱,並在「Service account name」(服務帳戶名稱) 欄位中新增。
選擇服務帳戶的 ID,並在「服務帳戶 ID」欄位中新增。
在「Service account description」(服務帳戶說明) 欄位中新增服務帳戶說明。
按一下「建立服務帳戶」按鈕。
建立服務帳戶後,您可以使用 IAM 繼續管理服務帳戶的存取控管。
(選用) 設定服務帳戶模擬
建議您使用服務帳戶模擬功能,管理指令列部署作業的存取權。如果您使用模擬功能,就不必建立服務帳戶金鑰 (任何人都能使用這類金鑰存取部署作業),而是透過授予或撤銷特定主體的服務帳戶權杖建立者 (roles/iam.serviceAccountTokenCreator) IAM 角色,管理存取權。
如要瞭解如何授予及撤銷服務帳戶的角色,請參閱管理服務帳戶的存取權。如要進一步瞭解服務帳戶模擬功能,請參閱「服務帳戶模擬功能」。
設定 gcloud 環境以使用 Terraform
在「Command-line deployment」(指令列部署) 分頁的「Configure gcloud」(設定 gcloud) 下方,您會看到一系列指令。如要為 Terraform 設定 gcloud 環境,可以複製並執行所提供的指令。
下載 Terraform 模組
視 VM 產品的設定方式而定,您可以使用內含的 Terraform 模組或產生的程式碼片段,透過 CLI 部署 VM 產品。如要確認您是使用內含的模組還是產生的程式碼片段部署 VM 產品,請前往產品的 Cloud Marketplace 資訊頁面,然後點選「Command-line deployment」(指令列部署) 分頁標籤。如果您使用內含的模組部署產品,系統會顯示「下載」按鈕。如果您使用產生的程式碼片段部署產品,系統會顯示「產生程式碼」按鈕。
如要下載內含的模組或產生的程式碼片段,請完成下列步驟:
內含的 Terraform 模組
在 VM 產品的 Cloud Marketplace 資訊頁面中,點選「指令列部署作業」分頁的「下載」按鈕。系統會下載內含您所用 Terraform 模組的 ZIP 檔案。
從下載的 ZIP 檔案中解壓縮 Terraform 模組。
產生的程式碼片段
在 VM 產品的 Cloud Marketplace 產品資訊「指令列部署」分頁中,按一下「產生程式碼」按鈕。這會生成程式碼片段,您可以複製並搭配 Terraform 使用,透過 Terraform 部署 VM。
如要複製產生的程式碼片段,請按一下「複製到剪貼簿」。
使用內含的模組或產生的程式碼片段部署 VM 產品
如要使用內含的模組或產生的程式碼片段,透過 CLI 部署 VM 產品,請完成下列步驟:
內含的 Terraform 模組
在下載的 Terraform 模組中,找到
README.md檔案。按照
README.md檔案中的產品專屬操作說明操作。按照產品專屬的操作說明進行時,如果遇到問題,可以選擇執行下列指令來部署模組:
terraform initterraform apply
產生的程式碼片段
確認產生的程式碼片段包含要使用的服務帳戶。如果您已設定服務帳戶,用於命令列部署作業,系統會在產生的程式碼片段中加入該服務帳戶的資訊。如果您尚未設定服務帳戶,請務必編輯產生的程式碼片段,指定要使用的服務帳戶。
在安裝 Terraform 的機器上,建立名為
main.tf的新檔案。將產生的程式碼片段 (以及您對程式碼片段所做的任何編輯) 貼到您建立的
main.tf檔案中。執行下列指令:
terraform initterraform apply
後續步驟
如要瞭解如何管理 VM 產品的 CLI 部署作業,請參閱「管理 VM 產品的 CLI 部署作業」。