gcloud compute


您可以使用 Google Cloud CLI 中的 gcloud compute 指令群組,管理 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:

  • 使用 --project 旗標執行每個 gcloud compute 指令
  • 設定 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

後續步驟