Google Distributed Cloud 會在您的地端部署環境中,透過 vSphere 執行。本文說明 vSphere 環境的相關規定。
本頁內容適用於管理員和架構師。他們會根據公司策略定義 IT 解決方案和系統架構,並建立及管理與使用者權限相關的政策。如要進一步瞭解內容中提及的常見角色和範例工作,請參閱「常見的 GKE Enterprise 使用者角色和工作」。 Google Cloud
版本相容性
vSphere 需求會因使用的 Google Distributed Cloud 版本而異。詳情請參閱完整支援版本的版本相容性矩陣。
支援的版本
vSphere 是 VMware 的伺服器虛擬化軟體,包含 ESXi 和 vCenter Server。
Google Distributed Cloud 支援下列版本的 ESXi 和 vCenter Server
- 7.0 Update 2 和 7.0 版的後續更新
- 8.0 以上版本
建議使用 8.0、7.0 Update 3,或 7.0 的後續更新版本。
如要建立 CSI 磁碟區快照,您必須使用下列其中一個版本:
- 7.0 Update 3 或 7.0 版的後續更新
- 8.0 以上版本
授權需求
您需要下列其中一種授權:
vSphere Enterprise Plus 授權。除了這項授權,您也必須訂閱有效的支援服務。
vSphere Standard 授權。除了這項授權,您也必須訂閱有效的支援服務。 使用此授權時,您無法啟用反相依性群組。此外,您無法指定自己的資源集區。您必須使用預設資源集區。
硬體需求
Google Distributed Cloud 會在一組執行 VMware ESXi 管理程序的實體主機上執行。如要瞭解 ESXi 的硬體需求,請參閱「ESXi 硬體需求」。
對於正式環境,我們強烈建議採取下列做法:
至少要有四部 ESXi 主機,供叢集 VM 使用。
如果打算在相同 vSphere 資料中心內的不同 vSphere 叢集或資源集區部署 Anthos clusters on VMware,請在 ESXi 主機之間啟用網路檔案複製 (NFC) 流量,以便共用 OS 範本。
在叢集設定檔中,將
antiAffinityGroups.enabled
設為true
。
如果您將 antiAffinityGroups.enabled
設為 true
,Google Distributed Cloud 會為叢集節點建立 DRS 反相依性規則,使節點分散於至少三個實體 ESXi 主機上。即使 DRS 規則要求叢集節點分散在三個 ESXi 主機上,我們仍強烈建議您至少要有四個可用的 ESXi 主機。這樣可避免叢集控制層遺失。舉例來說,假設您只有三個 ESXi 主機,而管理員叢集控制層節點位於故障的 ESXi 主機上。DRS 規則會禁止控制層節點放置在剩餘的兩個 ESXi 主機上。
如要進行評估和概念驗證,您可以將 antiAffinityGroups.enabled
設為 false
,並只使用一個 ESXi 主機。詳情請參閱「設定最少的基礎架構」。
vCenter 使用者帳戶權限
如要設定 vSphere 環境,機構管理員可能會選擇使用具備 vCenter Server 管理員角色的 vCenter 使用者帳戶。這個角色具備所有 vSphere 物件的完整存取權。
設定 vSphere 環境後,叢集管理員即可建立管理員叢集和使用者叢集。叢集管理員不需要 vCenter Server 管理員角色提供的所有權限。
叢集管理員或開發人員建立叢集時,會在憑證設定檔中提供 vCenter 使用者帳戶。建議您為憑證設定檔中列出的 vCenter 使用者帳戶,指派一或多個自訂角色,這些角色具備建立及管理叢集所需的最低權限。
機構管理員可以採取兩種不同的做法:
建立多個具備不同權限的角色。然後建立權限,將這些受限角色指派給個別 vSphere 物件的使用者或群組。
建立一個具備所有必要權限的角色。然後建立全域權限,將該角色指派給 vSphere 階層中所有物件的特定使用者或群組。
我們建議採用第一種方法,因為這樣可以限制存取權,並提高 vCenter Server 環境的安全性。詳情請參閱「使用角色指派權限」和「角色和權限最佳做法」。
如要瞭解如何使用第二種方法,請參閱「建立一個全域權限」。
下表列出機構管理員可建立的四個自訂角色。管理員接著可以使用自訂角色,指派特定 vSphere 物件的權限:
自訂角色 | 權限 | 物件 | 是否要套用至子項物件? |
---|---|---|---|
ClusterEditor |
系統。讀取 系統檢視 系統匿名 Host.Inventory |
叢集 | 是 |
SessionValidator |
System.Read System.View System.Anonymous Sessions.Validate session Cns.Searchable Profile-driven storage.Profile-driven storage view |
根 vCenter Server | 否 |
ReadOnly |
System.Read System.View System.Anonymous |
資料中心 網路 |
是 |
Anthos | Anthos 角色中的權限 |
datastore 資源集區 VM 資料夾 網路 |
是 |
Anthos 自訂角色中的權限
建立自訂角色和權限
機構管理員可以使用 govc 指令列工具建立自訂角色和權限。
機構管理員必須具備 vCenter Server 帳戶,且該帳戶有足夠的權限,可建立角色和權限。舉例來說,具備「管理員」角色的帳戶就適用。
執行 govc
前,請先設定一些環境變數:
將 GOVC_URL 設為 vCenter Server 執行個體的網址。
將 GOVC_USERNAME 設為機構管理員 vCenter Server 帳戶的使用者名稱。
將 GOVC_PASSWORD 設為機構管理員的 vCenter Server 帳戶密碼。
例如:
export GOVC_URL=vc-01.example export GOVC_USERNAME=alice@vsphere.local export GOVC_PASSWORD=8ODQYHo2Yl@
建立自訂角色
建立 ClusterEditor、SessionValidator 和 ReadOnly 自訂角色:
govc role.create ClusterEditor System.Read System.View System.Anonymous Host.Inventory.EditCluster govc role.create SessionValidator System.Read System.View System.Anonymous Sessions.ValidateSession Cns.Searchable StorageProfile.View govc role.create ReadOnly System.Read System.View System.Anonymous
建立授予 ClusterEditor 角色的權限
權限會採用 (使用者、角色) 配對,並將其與物件建立關聯。指派物件權限時,您可以指定權限是否要傳播至子物件。使用 govc
時,請將 --propagate
標記設為 true
或 false
。預設值為 false
。
建立權限,將叢集物件的 ClusterEditor 角色授予使用者。這項權限會傳播至叢集物件的所有子物件:
govc permissions.set -principal ACCOUNT \ -role ClusterEditor -propagate=true CLUSTER_PATH`
更改下列內容:
ACCOUNT:要授予角色的 vCenter Server 使用者帳戶
CLUSTER_PATH:vSphere 物件階層中的叢集路徑
舉例來說,下列指令會建立權限,將 (bob@vsphere.local, ClusterEditor) 與 my-dc/host/my-cluster 配對。這項權限會傳播至 my-dc/host/my-cluster 的所有子物件:
govc permissions.set -principal bob@vsphere.local \ -role ClusterEditor -propagate=true my-dc/host/my-cluster
建立其他權限
本節將提供建立額外權限的範例。視需要為環境取代範例物件路徑。
建立權限,將 SessionValidator 角色授予根 vCenter Server 物件上的帳戶。這項權限不會傳播至子物件:
govc permissions.set -principal ACCOUNT \ -role SessionValidator -propagate=false
建立權限,將 ReadOnly 角色授予資料中心物件和網路物件的帳戶。這些權限會傳播至子物件:
govc permissions.set -principal ACCOUNT \ -role ReadOnly -propagate=true \ /my-dc \ /my-dc/network/my-net
在四個物件上建立權限,將 Anthos 角色授予帳戶:資料存放區、VM 資料夾、資源集區和網路。這些權限會傳播至子項物件:
govc permissions.set -principal ACCOUNT -role Anthos -propagate=true \ /my-dc/datastore/my-ds \ /my-dc/vm/my-folder \ /my-dc/host/my-cluster/Resources/my-rp \ /my-dc/network/my-net
建立一項全域權限
本節提供替代做法,不必建立多個角色和多項權限。我們不建議採用這種做法,因為這會授予 vSphere 階層中所有物件的大量權限。
如果尚未建立 Anthos 自訂角色,請立即建立。
建立一項全域權限:
govc permissions.set -principal ACCOUNT \ -role Anthos -propagate=true
更改下列內容:
將 ACCOUNT 替換為要授予角色的 vCenter Server 使用者帳戶
舉例來說,下列指令會建立全域權限,將 Anthos 角色授予 bob@vsphere.local。這項權限會傳播至 vSphere 階層中的所有物件:
govc permissions.set -principal bob@vsphere.local -role Anthos -propagate=true
已知問題
請參閱「建立 vSphere 資料磁碟時安裝程式失敗」。