設定 VCF 軟體存放區

如要在 Google Cloud的 VMware 解決方案中部署及升級 VMware Cloud Foundation (VCF),VCF 安裝程式和 SDDC Manager 設備必須能存取 VCF 軟體套件、修補程式和相容性中繼資料。本文比較可用的 VCF 軟體存放區架構,並說明如何使用 Private Service Connect,設定連至 Google 提供的離線存放區的私人連線。

選擇存放區架構

您可以透過下列任一方法,將 VCF 軟體套件提供給 VMware 解決方案環境:

  • Broadcom 公開存放區 (線上存放區):將 VCF 安裝程式和 SDDC Manager 設備直接透過網際網路連線至 Broadcom 線上存放區 (例如使用 Cloud NAT 或傳出網路 Proxy),並使用 Broadcom 支援入口網站憑證和下載權杖進行驗證。詳情請參閱 Broadcom 說明文件,瞭解如何連線至線上存放區。
  • Google 提供的離線存放區 (Private Service Connect):透過 Private Service Connect 端點,以私人方式連線至 Google Cloud代管的區域軟體存放區。所有軟體下載作業都會保留在 Google Cloud 內部網路,不需要網際網路輸出。

下表比較兩種存放區架構:

Feature Broadcom 線上存放區 Google 提供的離線存放區
網路路徑 網際網路連出能力 (Cloud NAT 或 Proxy) 私人虛擬私有雲連線 (Private Service Connect 端點)
驗證 Broadcom 支援入口網站下載權杖 透過 Private Service Connect 控管虛擬私有雲層級的存取權
頻寬和延遲時間 取決於網際網路輸出設定 在 Google Cloud內進行高處理量區域移轉
實體隔離支援 不支援 (除非有外部跳板機) 支援獨立虛擬私有雲環境

事前準備

為 Google 提供的離線存放區設定 Private Service Connect 端點前,請先完成下列必要條件:

  1. 在專案中啟用必要的 Google Cloud API。下表列出必要的 API:

    服務名稱 API 識別碼 目的
    Compute Engine API compute.googleapis.com 佈建子網路、內部 IP 位址和轉送規則
    Cloud DNS API dns.googleapis.com 建立私人 DNS 區域和記錄,用於解析存放區
    Service Directory API servicedirectory.googleapis.com 註冊 Private Service Connect 端點

    如要使用 Google Cloud CLI 啟用這些 API,請執行下列指令:

    gcloud services enable compute.googleapis.com \
       dns.googleapis.com \
       servicedirectory.googleapis.com \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 確認您的使用者帳戶或服務帳戶在目標專案中具備下列 Identity and Access Management (IAM) 角色:

    • Compute 網路管理員 (roles/compute.networkAdmin)
    • DNS 管理員 (roles/dns.admin)
  3. 設定虛擬私有雲 (VPC) 網路,並規劃管理、vSAN、vMotion 和 NSX 通道端點 (TEP) 的子網路 IP 位址範圍。部署節點前,請將虛擬私有雲網路 MTU 設為 8896 位元組,並在建立節點時,於 VMware 解決方案中建立新的子網路。

    VMware 解決方案要求虛擬私有雲網路的子網路將「Resolve Subnet Mask」(解析子網路遮罩) 屬性設為「Broadcast primary range only with learning」(僅廣播主要範圍並學習),以支援 VLAN 網路。在Google Cloud 控制台支援中心建立支援單,並提供下列資訊:

    • 產品:Google Cloud VMware Engine
    • Priority:P2
    • 類別:網路連線
    • 業務影響:一般技術問題
    • 提供更多詳細資料:Allowlist L2 network connectivity for my project,以及專案 ID、專案編號,以及部署作業的目標區域和可用區

    如要進一步瞭解 VLAN 網路支援,請參閱「第 2 層模擬:ARP 廣播和自訂 MAC 學習」。

設定 Google 提供的離線存放區

如要設定區域性 VCF 離線存放庫的私人存取權,請佈建專屬標準 (非第 2 層廣播) 子網路、部署 Private Service Connect 端點,並設定 Cloud DNS 解析。

佈建離線存放區子網路

在裸機節點所在的區域中,建立專屬標準 (非第 2 層廣播) 子網路,CIDR 大小至少為 /29:

gcloud compute networks subnets create SUBNET_NAME \
    --network=VPC_NETWORK_NAME \
    --region=REGION \
    --range=SUBNET_CIDR \
    --project=PROJECT_ID

執行指令前,請先替換下列項目:

  • SUBNET_NAME:離線存放區端點的標準子網路名稱 (例如 snet-offline-depot)。
  • VPC_NETWORK_NAME:虛擬私有雲網路的名稱。
  • REGION:裸機節點所在的 Google Cloud 區域 (例如 us-central1)。
  • SUBNET_CIDR:未使用的 CIDR 區塊,大小為 /29 以上 (例如 192.168.10.0/29)。
  • PROJECT_ID: Google Cloud 專案的 ID。

部署 Private Service Connect 端點

為端點預留內部 IP 位址,並建立指定區域性離線 Depot 服務連結的轉送規則:

  1. 預留用途為 GCE_ENDPOINT 的區域性內部 IP 位址:

    gcloud compute addresses create offline-depot-ip \
       --region=REGION \
       --subnet=SUBNET_NAME \
       --purpose=GCE_ENDPOINT \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • REGION: Google Cloud 區域 (例如 us-central1)。
    • SUBNET_NAME:標準離線存放區子網路的名稱。
    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 擷取預留的內部 IP 位址,以便在設定 DNS 時使用:

    gcloud compute addresses describe offline-depot-ip \
       --region=REGION \
       --format='get(address)' \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • REGION: Google Cloud 區域。
    • PROJECT_ID: Google Cloud 專案的 ID。
  3. 建立指向區域性離線存放區服務連結的 Private Service Connect 轉送規則:

    gcloud compute forwarding-rules create offline-depot-endpoint \
       --region=REGION \
       --network=VPC_NETWORK_NAME \
       --address=offline-depot-ip \
       --target-service-attachment=projects/smve-prod-offline-depot/regions/REGION/serviceAttachments/offline-depot-service-attachment-REGION \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • REGION:部署裸機節點的 Google Cloud 區域 (例如 us-central1)。
    • VPC_NETWORK_NAME:虛擬私有雲網路的名稱。
    • PROJECT_ID: Google Cloud 專案的 ID。

設定 Cloud DNS 解析

離線存放區 HTTPS 伺服器會提供 offline-depot.REGION.selfmanagedvmwareengine.goog 的 TLS 憑證。建立私人 Cloud DNS 區域和 A 記錄,讓 VCF 設備將這個完整網域名稱 (FQDN) 解析為 Private Service Connect 端點 IP 位址:

  1. 為區域性網域建立私人管理 DNS 區域:

    gcloud dns managed-zones create offline-depot-zone \
       --dns-name=REGION.selfmanagedvmwareengine.goog. \
       --description='Private DNS zone for the regional VCF offline depot' \
       --visibility=private \
       --networks=VPC_NETWORK_NAME \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • REGION: Google Cloud 區域 (例如 us-central1)。
    • VPC_NETWORK_NAME:虛擬私有雲網路的名稱。
    • PROJECT_ID: Google Cloud 專案的 ID。
  2. 為 offline-depot.REGION.selfmanagedvmwareengine.goog. 建立 A 記錄,對應至預留的 Private Service Connect IP 位址:

    gcloud dns record-sets create offline-depot.REGION.selfmanagedvmwareengine.goog. \
       --zone=offline-depot-zone \
       --type=A \
       --ttl=300 \
       --rrdatas=PSC_INTERNAL_IP \
       --project=PROJECT_ID
    

    執行指令前,請先替換下列項目:

    • REGION: Google Cloud 區域。
    • PSC_INTERNAL_IP:為 offline-depot-ip 保留的內部 IP 位址。
    • PROJECT_ID: Google Cloud 專案的 ID。

將 DNS 區域與已連結的虛擬私有雲網路建立關聯

如果 VCF 管理設備或跳板機位於 Shared VPC 或對接的虛擬私有雲網路,請授權這些網路查詢 offline-depot-zone 私人區域。如需繫結其他虛擬私有雲網路或設定跨專案 DNS 對接的指示,請參閱「管理虛擬私有雲網路中的私人區域」。

驗證連線

從虛擬私有雲網路中的跳板機或管理 VM,確認 DNS 解析和 HTTPS 連線至區域離線存放庫成功:

  1. 確認區域 FQDN 解析為 Private Service Connect 內部 IP 位址:

    nslookup offline-depot.REGION.selfmanagedvmwareengine.goog
    
  2. 測試與離線存放區端點的 HTTPS 連線:

    curl -I https://offline-depot.REGION.selfmanagedvmwareengine.goog
    

    執行指令前,請先替換下列項目:

    • REGION:您設定端點的 Google Cloud 區域 (例如 us-central1)。

    如果連線成功,會從 Depot 網路伺服器傳回 HTTP 200 OK 或 301/302 回應。

後續步驟