使用工具存取區域

本文說明如何在 Google Distributed Cloud (GDC) 實體隔離環境中,管理多個可用區的資源。無論是 GDC 控制台、gdcloud CLI、API 還是 Terraform,每個介面都提供適當機制,可管理指定可用區中的可用區資源,或全域佈建資源。在多可用區 Universe 中,您必須管理可用區和全域資源,以確保高可用性。

本文適用於下列目標對象群組:

  • 負責開發災難復原工作流程的平台管理員,例如 IT 管理員。
  • 應用程式操作員,例如應用程式開發人員,負責在 GDC 宇宙中開發及維護應用程式。

詳情請參閱「GDC 實體隔離方案說明文件的目標對象」。

事前準備

如要跨可用區管理資源,請先根據偏好的介面完成下列必要條件:

切換至全域情境

如要管理涵蓋所有可用區或支援全域佈建的資源,請切換至全域環境。

控制台

如要設定全域情境,請前往全域網址,語法如下:

  https://console.ORG_NAME.SUFFIX

前往全域網址,即可查看各可用區資源的全域檢視畫面。

gdcloud

初始化 gdcloud CLI 預設設定時,會使用 organization_console_url 參數設定全域網址。除非您已明確設定可用區環境,否則系統會假設為全域環境。

如要還原為全域網址,請完成下列步驟:

  1. 將預設機構控制台網址設為全域網址:

    gdcloud config set core/organization_console_url GLOBAL_URL
    
  2. 登入全域情境:

    gdcloud auth login --login-config-cert=CA_CERT
    

    將 CA_CERT 替換為安裝在系統信任憑證存放區中的憑證授權單位 (CA) 憑證。詳情請參閱「網頁 TLS 憑證設定」。

API

管理或佈建全域 KRM API 自訂資源時,您必須在 kubectl 指令中明確定義全域 Management API 伺服器的 kubeconfig 檔案。例如:

  kubectl apply -f resource.yaml --kubeconfig GLOBAL_API_SERVER

您可以將 kubectl 內容設為全域 API 伺服器,自動設定 API 呼叫的全域內容。詳情請參閱「全域 API 伺服器資源」。

Terraform

您必須在 Terraform 模組中明確定義全域管理 API 伺服器,並加以初始化:

  1. 在模組的 Terraform 檔案 (例如 main.tf 檔案) 中,定義全域 Management API 伺服器的 kubeconfig 檔案:

    provider "kubernetes" {
      config_path = "GLOBAL_API_SERVER"
    }
    

    如要進一步瞭解如何取得全域 API 伺服器的 kubeconfig 檔案,請參閱「全域 API 伺服器資源」。

  2. 為 Terraform 模組套用新的全域情境:

    terraform apply
    

所有後續的 Terraform 動作都會在全域環境中呼叫。

切換至可用區環境

如要管理特定可用區內託管的資源,請切換至可用區環境。

控制台

如要設定可用區情境,請前往可用區網址,語法如下:

  https://console.ORG_NAME.ZONE.SUFFIX

前往可用區網址,查看託管於單一可用區內的資源。

許多資源頁面也提供可用區範圍挑選器,可讓您在 GDC 控制台頁面中切換可用區。

選取可用區,即可顯示該可用區中的資源。

從提供的機制中選取可用區情境,即可查看及管理可用區資源。

gdcloud

使用 gdcloud CLI 時,系統預設會設定全域內容,因此您必須明確設定可用區內容,才能操作可用區資源。視您偏好的工作流程而定,您可以透過下列三種方式之一執行這項操作:

  • 設定預設可用區:如果您主要在可用區環境中工作,建議使用此設定。
  • 設定可用區網址:如果您打算經常切換全域和可用區環境,建議採用這個方法。
  • 套用 --zone 旗標: 如果想直接套用可用區環境,而不更新任何 gdcloud CLI 設定,建議使用這個方法。

請按照下列步驟,套用其中一種方法:

設定預設可用區

  • 設定 gdcloud CLI 執行個體的可用區:

    gdcloud config set core/zone ZONE_NAME
    

    將 ZONE_NAME 替換為要為情境設定的區域名稱。詳 y 請參閱「列出宇宙中的可用區」。

設定可用區網址

  1. 將預設組織控制台網址設為可用區網址:

      gdcloud config set core/organization_console_url ZONAL_URL
    
  2. 登入區域:

      gdcloud auth login --login-config-cert=CA_CERT
    

    將 CA_CERT 替換為安裝在系統信任憑證存放區中的憑證授權單位 (CA) 憑證。詳情請參閱「網路 TLS 憑證設定」。

套用 --zone 旗標

  • 執行 gdcloud CLI 指令,並加入 --zone 旗標。例如:

    gdcloud auth print-identity-token --zone=ZONE_NAME
    

    您可以為任何支援 --zone 旗標的指令設定該旗標。如要確認特定指令是否提供 --zone 旗標,請參閱 gdcloud CLI 參考文件。

    您可以在任何全域或可用區環境中使用 --zone 旗標。

API

管理或佈建可用區 KRM API 自訂資源時,您必須在 kubectl 指令中,明確定義可用區 Management API 伺服器的 kubeconfig 檔案。例如:

  kubectl apply -f resource.yaml --kubeconfig ZONAL_API_SERVER

您可以將 kubectl 內容設為可用區的 Management API 伺服器,自動設定 API 呼叫的可用區內容。詳情請參閱「可用區 Management API 伺服器資源」。

Terraform

您必須在 Terraform 模組中明確定義可用區 Management API 伺服器,並加以初始化:

  1. 在模組的 Terraform 檔案 (例如 main.tf 檔案) 中,定義可用區 Management API 伺服器的 kubeconfig 檔案:

    provider "kubernetes" {
      config_path = "ZONAL_API_SERVER"
    }
    

    如要進一步瞭解如何取得可用區管理 API 伺服器的 kubeconfig 檔案,請參閱「可用區管理 API 伺服器資源」。

  2. 為 Terraform 模組套用新的全域情境:

    terraform apply
    

所有後續的 Terraform 動作都會在您設定的可用區環境中呼叫。

列出宇宙中的可用區

如要管理多個可用區的可用區資源,您必須瞭解宇宙中的所有可用區。

  • 列出宇宙中的所有可用區:

    gdcloud zones list
    

    輸出看起來類似以下內容:

    METADATA.NAME
    us-east1-a
    us-east1-b
    us-east1-c
    

後續步驟