Distributed Cloud 軟體 (僅限 VMware) 總覽

Distributed Cloud 軟體 (僅限 VMware) 可讓您在 VMware vSphere 環境中部署及管理 Google Kubernetes Engine (GKE) 叢集。您可以在資料中心執行及升級容器化應用程式,同時使用 Google Cloud 功能和基礎架構。

如要直接在實體伺服器上執行純軟體叢集,請參閱「Distributed Cloud 裸機純軟體總覽」。

為何要使用 Distributed Cloud 軟體 (僅限 VMware)?

只要在現有的 vSphere 基礎架構上執行 Distributed Cloud 軟體 (僅限 VMware),即可透過 GKE 翻新應用程式,同時保留團隊已使用的虛擬化平台、儲存空間和作業程序。

與 vSphere 環境整合

Google Distributed Cloud 會在現有的 vCenter 環境中,以虛擬機器的形式執行叢集節點,因此您可以將容器化工作負載新增至已運作的 vSphere 主機。叢集會將資料儲存在由 vSAN、VMFS 或 NFS 支援的 vSphere 資料儲存庫中,您可以將不同的資料儲存庫指派給個別節點集區。vSphere Container Storage Interface (CSI) 驅動程式會為有狀態工作負載佈建永久磁碟區。詳情請參閱「儲存空間」。

集中管理地端部署資料

您可以使用 GKE On-Prem API,透過 Google Cloud 控制台、Google Cloud CLI 或 Terraform 管理、監控叢集及排解相關問題,不必登入管理員工作站。您的應用程式和業務資料會保留在資料中心, Google Cloud 只會接收叢集中繼資料、健康狀態和使用資訊。詳情請參閱「保留在資料中心的資料」。

企業級可靠性和作業

Google Distributed Cloud 包含可用於正式環境的作業功能:

  • 高可用性:高可用性管理員叢集和使用者叢集控制層使用三個控制層節點,因此即使節點故障,您仍可管理環境。
  • 自動修復節點:定期健康狀態檢查會偵測健康狀態不良的節點,並由節點自動修復功能自動修復。這項功能預設為啟用。
  • 叢集自動調度資源:叢集自動配置器會根據工作負載的資源要求,在節點集區中新增或移除節點。
  • 彈性負載平衡:使用在叢集節點上執行的 MetalLB 負載平衡器套裝組合,或設定 F5 BIG-IP 或 Citrix 等第三方負載平衡器。詳情請參閱「負載平衡總覽」。

運作方式

Google Distributed Cloud 擴充 GKE,讓您在 vSphere 環境的實體伺服器上建立叢集。您可以在 Google Cloud 中,將這些地端部署叢集與雲端式叢集一併管理,視為統一機群的一部分。

在 Google Cloud中執行的 GKE 叢集,Kubernetes 控制層和網路基礎架構由 Google 管理。對於在資料中心執行的 Google Distributed Cloud 叢集, Google Cloud 會提供管理和控制層軟體,在安裝和升級過程中下載並部署至 vSphere 虛擬機器。

下圖顯示安裝完成後的架構,其中包含管理員叢集和使用者叢集:

管理員叢集和使用者叢集的圖表
VMware 適用的 Google Distributed Cloud 架構,包含一個管理員叢集和一個使用者叢集

重要元件

下列元件構成 Distributed Cloud software only for VMware 的安裝作業:

  • 管理員叢集:管理一或多個使用者叢集。管理員叢集包含一或多個控制層節點,在專屬虛擬機器上執行。
  • 使用者叢集:執行容器化工作負載。每個使用者叢集至少包含一個控制層節點,以及一或多個 worker 節點。
  • 管理員工作站:專用虛擬機器,內含叢集設定檔和管理工具:
    • gkectl:建立、更新及管理叢集部署作業。
    • kubectl:與管理員和使用者叢集互動,管理工作負載。
  • Google Cloud 控制台: Google Cloud 中的網頁介面,用於查看叢集健康狀態及執行生命週期作業,不需登入管理員工作站。
  • 虛擬 IP 位址 (VIP):安裝期間設定的虛擬 IP。叢集管理員和開發人員會使用 kubectl 和控制層 VIP,存取管理員和使用者叢集中的控制層。應用程式使用者和開發人員分別使用 Service 和 Ingress VIP 存取及公開工作負載。詳情請參閱「規劃 IP 位址」。

連線至機群

所有使用者叢集都是機群的成員,機群是 Kubernetes 叢集的邏輯群組,可跨環境提供統一管理。您可以透過機群在 Google Cloud 控制台中查看叢集,並使用支援機群的功能,大規模管理、控管及執行工作負載。

每個叢集都會透過 Connect 代理程式連線至 Google Cloud ,該代理程式會在叢集安裝期間自動部署。機群成員資格也會決定 VMware 適用的 Distributed Cloud 軟體 (僅限軟體) 的計費方式。

定價

使用 Google Distributed Cloud 建立的地端部署叢集,則依 vCPU 計費。如要啟用計費功能,請在 Google Cloud專案中啟用 Anthos API。

如需完整的定價資訊 (包括如何與銷售人員聯絡),請參閱「Google Kubernetes Engine 定價」。

版本

這份說明文件涵蓋所有支援的 Google Distributed Cloud 版本。在相關情況下,Google 也會在本文件中保留舊版、不支援版本的有限資訊。

如要瞭解支援的版本和發布政策,請參閱下列資源:

從 1.29 版開始,我們不會再為先前的次要版本建立目錄。說明文件中會註明行為差異。推出新功能時,系統會記錄該功能支援的版本。

1.16 以下版本的說明文件已封存,網址如下:

https://cloud.google.com/anthos/clusters/docs/on-prem/VERSION/

將 VERSION 替換為 1.0 到 1.16 之間的子版本,然後將網址複製到瀏覽器的網址列。

資料的儲存位置

如果只執行 Distributed Cloud 軟體 for VMware,叢集、應用程式和業務資料會保留在資料中心。根據預設,Google Distributed Cloud 會傳送 Google Cloud 叢集相關資訊,例如設定、健康狀態和用量,但不會傳送應用程式資料。

保留在資料中心的資料

下列資料會保留在資料中心:

  • 容器、Pod、PersistentVolume,以及應用程式處理的資料。
  • 所有 Kubernetes 物件都會儲存在控制層和 etcd 資料庫中。
  • 管理員叢集的控制層會儲存自行簽署的 etcd 私密金鑰、使用者叢集金鑰和叢集憑證授權單位 (CA)。
  • 應用程式密鑰、OAuth 權杖、SSH 私密金鑰、Container Registry 憑證、vCenter 和 F5 BIG-IP 憑證,以及服務帳戶金鑰檔案,儲存在 etcd 或管理員工作站中。不會傳送至 GKE On-Prem API,並會從診斷快照中移除。
  • 管理員叢集、使用者叢集和憑證設定檔會儲存在管理員工作站。
  • 稽核記錄會寫入管理員叢集控制層節點和使用者叢集的磁碟。
  • 您可以選擇將診斷快照上傳至 Cloud Storage。

傳送至 Google Cloud的資料

下表列出傳送的資料、使用和儲存方式,以及是否可以關閉:

資料 傳送資料 使用與儲存 預設
連線和機群註冊
(gkehub.googleapis.com、gkeconnect.googleapis.com)
  • 叢集身分: Google Cloud 專案、機群成員名稱、叢集 UID、公開金鑰、Kubernetes 版本、叢集大小和身分提供者設定。
  • 從 Google Cloud 控制台或連線閘道要求的 Kubernetes 資料。
  • 使用者個人資料中加密的 Kubernetes 權杖,直到您登出 Google Cloud 控制台為止。
透過Google Cloud 控制台、Connect 閘道和機群,使用 Connect 代理程式管理叢集。kube-apiserver 會驗證、授權及稽核記錄每項要求。 必要
叢集設定和狀態
(gkeonprem.googleapis.com)
  • 名稱、UID、說明、註解、版本、生命週期狀態和控制層 VIP。
  • 節點集區名稱、節點 IP 或 DHCP 設定、Pod 和 Service CIDR、負載平衡器 VIP、負載平衡器設定。
  • vCenter 位址、資料中心、叢集、資源集區、資料儲存庫、資料夾和儲存空間政策名稱 (不含 vCenter 憑證)。
  • 叢集管理員的電子郵件地址。
可讓您透過 Google Cloud 控制台、Google Cloud CLI 或 Terraform 管理叢集。GKE On-Prem API 會將這項資料儲存在 gkeOnPremAPI.location 中設定的區域。 在 1.16 以上版本中,如果 Google Cloud 專案已啟用 GKE On-Prem API,則為開啟。如要關閉,請將 gkeOnPremAPI.enabled 設為 false。
計費使用量
(anthos.googleapis.com)
vCPU 容量、節點數量和授權權益狀態。 用於計量、計費和授權檢查。 必填。系統會在服務中斷期間緩衝處理帳單記錄,並在稍後傳送。
系統健康資料
(logging.googleapis.com、monitoring.googleapis.com、opsconfigmonitoring.googleapis.com)
  • 指標:CPU、記憶體、磁碟和網路使用量、kubelet 指標,以及節點和系統 Pod 的 kube-state-metrics。
  • 所有管理員叢集元件,以及 kube-system、gke-system、gke-connect、istio-system 和 config-management-system 使用者叢集命名空間的容器記錄和健康狀態檢查結果。
  • 中繼資料:節點、Pod、Deployment 和 Service 的名稱和標籤。
用於 Cloud Monitoring、 Google Cloud 控制台狀態檢視畫面,以及客戶服務疑難排解。儲存在 stackdriver.projectID 中設定的 Google Cloud 專案。指標會儲存在 stackdriver.clusterLocation 區域,記錄則會遵循記錄檔路由器設定。 開啟系統記錄和指標,這是完整客戶服務支援和服務水準協議涵蓋範圍的必要條件。應用程式記錄和指標則為「關閉」,除非您在 Stackdriver 資源中將 enableCloudLoggingForApplications 或 enableGMPForApplications 設為 true。
稽核記錄
(anthosaudit.googleapis.com)
管理員活動稽核記錄:誰透過 kube-apiserver 變更了什麼內容,以及變更時間。項目包括時間、叢集、主機或 VM、使用者或服務帳戶、RBAC 角色、作業和結果。系統不會記錄讀取要求。 儲存在 cloudAuditLogging.projectID 中設定的 Google Cloud 專案的 Cloud 稽核記錄中,位於 _Required bucket 中,並保留 400 天。 (選用) 如要啟用,請填寫 cloudAuditLogging 區段。管理員叢集只能在建立時啟用這項功能。如要為使用者叢集停用這項功能,請刪除該區段並更新叢集。

後續步驟