gcloud compute

您可以使用 gcloud compute 指令群組,透過 Google Cloud CLI 管理 Compute Engine 資源。gcloud compute 是使用 Compute Engine API 的替代方案。

gcloud CLI 是 Google Cloud CLI 的一部分,是一種整合式指令列工具,包含各種功能,例如陳述式自動完成、就地更新、指令列說明、可供使用者理解和機器剖析的輸出格式,還有 Google Cloud CLI 整合能力等。

如果您從未使用過 Compute Engine,請從Linux 快速入門Windows 快速入門開始。

事前準備

  • 如要在命令提示字元中執行 gcloud compute,請安裝、更新及初始化 Google Cloud CLI
  • 如果沒有現成可用的命令提示字元,請嘗試在 Cloud Shell 中使用 gcloud compute。 系統會自動安裝、更新 Cloud Shell,並使用最新版 Google Cloud CLI 初始化。

預設屬性

建立虛擬機器執行個體時,Compute Engine 會使用中繼資料伺服器的預設屬性設定 VM。您可以執行下列指令,檢查 VM 的預設屬性:

gcloud compute project-info describe --project PROJECT_ID

PROJECT_ID 替換為您的專案 ID。

預設專案

如果您在設定及初始化 Google Cloud CLI 時設定預設專案,所有 gcloud compute 指令預設都會使用該專案 ID。

如要覆寫預設專案 ID,請使用下列任一方法:

  • 執行每個 gcloud compute 指令,並加上 --project 旗標
  • 設定 CLOUDSDK_CORE_PROJECT 環境變數

    Linux 和 macOS

    使用 export 指令設定專案環境變數。

    export CLOUDSDK_CORE_PROJECT=PROJECT_ID
    

    PROJECT_ID 替換為要設為預設專案的專案 ID。

    取消設定專案環境變數

    如要取消設定專案環境變數,請使用下列 unset 指令:

    unset CLOUDSDK_CORE_PROJECT
    

    Windows

    使用 set 指令設定專案環境變數。

    set CLOUDSDK_CORE_PROJECT=PROJECT_ID
    

    PROJECT_ID 替換為要設為預設專案的專案 ID。

    取消設定專案環境變數

    如要取消設定專案環境變數,請使用下列指令:

    set CLOUDSDK_CORE_PROJECT=
    

若未設定預設專案或環境變數,請務必在您執行的每個 gcloud compute 指令中加入 --project 旗標。

預設區域和可用區

部分 gcloud compute 指令需要 --region--zone 旗標。您不必在每次執行指令時都指定這些旗標,可以為專案設定預設區域和時區。如果您未設定預設區域或地區,且執行了與區域或地區相關的指令,Google Cloud CLI 可能會提示您提供 --region--zone 旗標,或傳回錯誤。

您可以透過三種方式設定預設地區和區域:

  • 在中繼資料伺服器中。 執行 gcloud init 時,系統會將中繼資料伺服器中設定的預設區域和可用區套用至本機用戶端。
  • 在您的本機用戶端。 本機用戶端中設定的預設區域和可用區,會覆寫中繼資料伺服器中設定的預設區域和可用區。
  • 在環境變數中。 環境變數中設定的預設區域和可用區,會覆寫本機用戶端和中繼資料伺服器中設定的預設區域和可用區。

執行指令時,您可以提供 --region--zone 旗標,覆寫中繼資料伺服器、本機用戶端或環境變數中的預設地區和區域

查看預設區域和可用區

如要查看預設地區和區域,請執行下列指令:

gcloud config get-value compute/region
gcloud config get-value compute/zone

如果輸出內容為 (unset),表示未設定預設地區或區域。

查看可用的地區和區域

您可以執行下列指令,查看區域和可用區清單:

gcloud compute regions list
gcloud compute zones list

在中繼資料伺服器中設定預設區域和可用區

中繼資料伺服器中的預設區域和可用區會套用至專案中的所有設定。如要在中繼資料伺服器中設定預設區域和可用區,請按照下列步驟操作:

  1. 設定預設地區和區域:

    gcloud compute project-info add-metadata \
       --metadata google-compute-default-region=REGION,google-compute-default-zone=ZONE
    

    例如:

    gcloud compute project-info add-metadata \
       --metadata google-compute-default-region=europe-west1,google-compute-default-zone=europe-west1-b
    
  2. 在本機用戶端中初始化變更:

    gcloud init

如要覆寫中繼資料伺服器中設定的預設地區和區域,請在本機用戶端設定預設地區和區域、在環境變數中設定預設地區和區域,或在指令中加入 --zone--region 旗標。

在中繼資料伺服器取消設定預設區域和可用區

如要取消設定中繼資料伺服器中的預設區域和可用區,請按照下列步驟操作:

  1. 取消設定中繼資料:

    gcloud compute project-info remove-metadata \
       --keys=google-compute-default-region,google-compute-default-zone
    
  2. 在本機用戶端中初始化變更:

    gcloud init

在本機用戶端中設定預設區域和可用區

本機用戶端中設定的預設區域和可用區,會覆寫中繼資料伺服器中設定的預設區域和可用區。

如要在本機用戶端中設定預設區域和可用區,請執行下列指令:

gcloud config set compute/region REGION
gcloud config set compute/zone ZONE

在本機用戶端中取消設定預設區域和可用區

如要在本機用戶端中取消設定預設區域或地區,請執行下列指令:

gcloud config unset compute/zone
gcloud config unset compute/region

如要覆寫在本機用戶端中設定的預設地區和區域,請在環境變數中設定預設地區和區域,或在指令中加入 --zone--region 旗標。

在環境變數中設定預設區域和可用區

環境變數中設定的預設區域和可用區,會覆寫本機用戶端和中繼資料伺服器中設定的預設區域和可用區。

Linux 和 macOS

使用 export 指令設定區域和可用區變數。

export CLOUDSDK_COMPUTE_REGION=REGION
export CLOUDSDK_COMPUTE_ZONE=ZONE

如要將這些環境變數設為無法變更,請在 ~/.bashrc 檔案中加入這些指令,然後重新啟動終端機。

Windows

使用 set 指令設定區域和可用區變數。

set CLOUDSDK_COMPUTE_REGION=REGION
set CLOUDSDK_COMPUTE_ZONE=ZONE

您可以在指令中加入 --zone--region 旗標,藉此覆寫環境變數。

在環境變數中取消設定預設區域和可用區

使用下列指令,取消設定環境變數中的預設區域和可用區。

Linux 和 macOS

如要取消設定區域和區域環境變數,請使用下列 unset 指令:

unset CLOUDSDK_COMPUTE_REGION
unset CLOUDSDK_COMPUTE_ZONE

Windows

如要取消設定區域和可用區環境變數,請使用下列指令:

set CLOUDSDK_COMPUTE_REGION=
set CLOUDSDK_COMPUTE_ZONE=

使用旗標覆寫預設區域

使用 --zone 旗標,覆寫中繼資料伺服器、本機用戶端和環境變數中設定的預設區域。

例如:

gcloud compute instances create example-instance \
    --zone=ZONE

設定

gcloud topic configurations 是一項進階功能,可影響 gcloud CLI 的行為。對大多數使用者來說,使用預設設定就已足夠。

設定可能對以下使用者有幫助:

  • 處理多個專案。您可以為每個專案建立不同的設定。
  • 使用多個帳戶。例如使用者帳戶和服務帳戶。
  • 執行各種獨立工作 (在一個專案中處理 App Engine 應用程式、管理 us-central-1a 區域中的 Compute Engine 叢集、管理 asia-east-1 區域的網路設定等)

如要在設定之間切換,請執行下列指令:

gcloud config configurations activate CONFIGURATION_NAME

如要進一步瞭解如何管理設定,請參閱gcloud config configurations

後續步驟