Google Distributed Cloud 可讓您在各種硬體設定上部署叢集,從最精簡的設定到多部機器,提供高可用性和效能。無論設定為何,節點機器都必須符合特定的 CPU、RAM 和儲存空間必要條件,才能支援叢集作業和工作負載。
CPU、RAM 和儲存空間的最低和建議需求
安裝 Google Distributed Cloud 時,您可以建立不同類型的叢集:
- 執行工作負載的使用者叢集。
- 管理員叢集:建立及控管使用者叢集,以便執行工作負載。
- 獨立叢集是可管理及執行工作負載的單一叢集,但無法建立或管理使用者叢集。
- 混合式叢集可以管理及執行工作負載,也可以建立及管理其他使用者叢集。
除了叢集類型之外,您也可以根據資源需求,選擇下列安裝設定檔:
預設:預設設定檔有標準系統資源需求,可用於所有叢集類型。
Edge:Edge 設定檔可大幅降低系統資源需求。建議在資源有限的邊緣裝置上使用這個設定檔。邊緣設定檔只能用於獨立叢集。
使用預設設定檔的所有叢集類型資源需求
下表說明 Google Distributed Cloud 使用預設設定檔,操作及管理管理員、混合、使用者和獨立叢集時,所需的最低和建議硬體需求:
| 資源 | 下限 | 建議 |
|---|---|---|
| CPU / vCPU* | 4 核心 | 8 核心 |
| RAM | 16 GiB | 32 GiB |
| 儲存空間 | 128 GiB | 256 GiB |
* Google Distributed Cloud 僅支援 CPU 微架構層級 v3 (x86-64-v3) 以上版本的 x86-64 CPU 和 vCPU。
使用邊緣設定檔的獨立叢集資源需求
下表說明 Google Distributed Cloud 使用邊緣設定檔,操作及管理獨立叢集時,所需的最低和建議硬體需求:
| 資源 | 下限 | 建議 |
|---|---|---|
| CPU / vCPU* | 2 核心 | 4 核心 |
| RAM | Ubuntu:5 GiB RHEL:6 GiB |
Ubuntu:8 GiB RHEL:12 GiB |
| 儲存空間 | 128 GiB | 256 GiB |
* Google Distributed Cloud 僅支援 CPU 微架構層級 v3 (x86-64-v3) 以上版本的 x86-64 CPU 和 vCPU。
如要使用邊緣設定檔設定獨立叢集,請遵循下列最佳做法:
在獨立工作站上執行
bmctl。如須在目標叢集節點上執行bmctl,則需要 2 GiB 記憶體,才能達到最低需求。例如,Ubuntu 需要 6 GiB,RHEL 需要 8 GiB。將
MaxPodsPerNode設為 110。叢集平均每個節點執行的使用者 Pod 不超過 30 個。如要提高MaxPodsPerNode設定,或在每個節點執行超過 30 個使用者 Pod,可能需要額外資源。這項最低資源設定不包含 GDC 元件上的 VM 執行階段。GDC 上的 VM 執行階段需要額外資源,具體取決於叢集中部署的 VM 數量。
額外儲存空間需求
Google Distributed Cloud 不提供任何儲存空間資源。您必須在系統上佈建及設定必要的儲存空間。
如需詳細的儲存空間需求,請參閱「安裝必要條件總覽」。
如要進一步瞭解如何設定所需儲存空間,請參閱「設定 Google Distributed Cloud 的儲存空間」。
節點機器必要條件
節點機器必須符合下列條件:
- 符合最低硬體需求。
- 作業系統是支援的 Linux 發行版之一。如要瞭解更多資訊 (包括核心需求),請參閱「選取作業系統」。
- 網路連線能力。
- 可連上所有其他節點機器的第 3 層連線能力。
- 控制層 VIP 的存取權。
- 可存取必要通訊埠。如需控制層節點、worker 節點和負載平衡器節點的特定通訊埠需求,請參閱「網路需求」頁面的「通訊埠使用情形」一節。
- 正確設定 DNS 名稱伺服器。
- 主機名稱不得重複。
- 已啟用下列其中一項 NTP 服務,且服務正常運作:
- chrony
- ntp
- ntpdate
- systemd-timesyncd
- 可用的套件管理工具,例如
apt或dnf。 - 在 Ubuntu 上,您必須停用 Uncomplicated Firewall (UFW)。執行
systemctl stop ufw停用 UFW。 - 如果您使用 RHEL 8 或 Rocky Linux,則必須在所有節點上安裝 Python 3.9 以上版本。如要瞭解如何更新 Python 版本,請參閱「驗證 Python 版本」。
您必須載入 nf-tables 或 iptables 網路核心模組。如果已正確載入 iptables,您會看到下列輸出內容:
iptables --version
iptables vVERSION (nf_tables)
To load a module, run the following command:
```sh
modprobe MODULE_NAME
```
可用磁碟空間需求:
1.29.100 以上版本
安裝 Google Distributed Cloud 時,系統會執行預檢。這些檢查會確認這些目錄的檔案系統有足夠的容量:
目錄 空間需求 /(根目錄)4 GiB (4,294,967,296 個位元組) /var/log/fluent-bit-buffers12 GiB (12,884,901,888 個位元組) /var/opt/buffered-metrics10016 MiB (10,502,537,216 個位元組) /var/lib/containerd- 控制層節點:30 GiB (32,212,254,720 位元組)
- worker 節點:10 GiB (10,485,760 個位元組)
/var/lib/kubelet500 MiB (524,288,000 個位元組) /var/lib/etcd20 GiB (21,474,836,480 位元組,僅適用於控制層節點) /var/lib/etcd-events5 GiB (5,368,709,120 位元組,僅適用於控制層節點) 為了讓您進一步控管分配給應用程式工作負載的空間,叢集建立作業的預檢只會檢查 Google Distributed Cloud 系統元件所需的可用空間。視您打算部署的工作負載而定,您可能需要額外的儲存空間。
將叢集升級至 1.29.100 以上版本時,預檢作業會確認
/(根目錄) 至少有 2 GiB 的可用空間。1.29.0 以下版本
每當您安裝 Google Distributed Cloud 時,系統都會執行預檢,確保支援下列目錄的檔案系統具備所需容量:
目錄 空間需求 /(根目錄)17 GiB (18,253,611,008 個位元組) /var/lib/containerd- 控制層節點:30 GiB (32,212,254,720 位元組)
- worker 節點:10 GiB (10,485,760 個位元組)
/var/lib/kubelet500 MiB (524,288,000 個位元組) /var/lib/etcd20 GiB (21,474,836,480 位元組,僅適用於控制層節點) /var/lib/etcd-events5 GiB (5,368,709,120 位元組,僅適用於控制層節點) 為了讓您進一步控管分配給應用程式工作負載的空間,叢集建立作業的預檢作業只會檢查 Google Distributed Cloud 系統元件所需的可用空間。視您打算部署的工作負載而定,您可能需要額外的儲存空間。
無論叢集版本為何,目錄都可以位於相同或不同的磁碟分區。如果目錄共用磁碟分區,請將該共用分區上每個目錄所需的空間相加,計算出總空間需求。如果這些目錄不存在,叢集設定會建立這些目錄。
/var/lib/etcd和/etc/kubernetes目錄不存在或空白。如果機器執行 RHEL 9.2 或 Ubuntu 22.04,Linux 核心
inotify的使用者執行個體和使用者監控上限,必須大於或等於下列值:fs.inotify.max_user_instances:8192fs.inotify.max_user_watches:524288
除了安裝及執行 Google Distributed Cloud 的必要條件外,客戶也應遵守其產業或業務領域的相關標準,例如處理信用卡的企業須遵守 PCI DSS 規定,國防產業的企業須遵守安全技術導入指南 (STIG)。
負載平衡器機器必要條件
如果部署作業沒有專門的負載平衡器節點集區,可以讓 worker 節點或控制層節點建立負載平衡器節點集區。在這種情況下,他們必須符合其他先決條件:
- 機器位於同一個第 2 層子網路。
- 所有 VIP 都位於負載平衡器節點子網路中,且可從子網路的閘道路由。
- 負載平衡器子網路的閘道應監聽免費 ARP,將封包轉送至主要負載平衡器。