設定 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 端點前,請先完成下列必要條件:
在專案中啟用必要的 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。
確認您的使用者帳戶或服務帳戶在目標專案中具備下列 Identity and Access Management (IAM) 角色:
- Compute 網路管理員 (
roles/compute.networkAdmin) - DNS 管理員 (
roles/dns.admin)
- Compute 網路管理員 (
設定虛擬私有雲 (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 服務連結的轉送規則:
預留用途為
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。
擷取預留的內部 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。
建立指向區域性離線存放區服務連結的 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 位址:
為區域性網域建立私人管理 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。
為
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 連線至區域離線存放庫成功:
確認區域 FQDN 解析為 Private Service Connect 內部 IP 位址:
nslookup offline-depot.REGION.selfmanagedvmwareengine.goog
測試與離線存放區端點的 HTTPS 連線:
curl -I https://offline-depot.REGION.selfmanagedvmwareengine.goog
執行指令前,請先替換下列項目:
REGION:您設定端點的 Google Cloud 區域 (例如us-central1)。
如果連線成功,會從 Depot 網路伺服器傳回 HTTP
200 OK或301/302回應。
後續步驟
- 查看部署選項總覽。
- 如要部署環境,請參閱「使用 Terraform 和工具包部署節點和 VCF」或「使用控制台部署節點和設定設備網路」。