antony@notes:~/rancher$ cat "Introduction-to-Harvester.md"
Introduction to Harvester
Introduction to Harvester
混合與超融合基礎架構概念
讓我們先從現代計算的基本範疇開始討論。計算主要由三個核心範疇組成:
- 計算:執行實際的處理流程,是完成工作的地方。
- 儲存:用於儲存資料,這些資料可以稍後被取回進行處理。
- 網路:用於機器之間的溝通與交流。
這些是計算的核心或基本範疇。讓我們回顧一下這些範疇隨著時間的演進,以及在計算、儲存和網路實施上的變化。

傳統架構的回顧
傳統架構中,伺服器運行應用程式並內建直接連接的儲存空間,這些伺服器透過網路互相連接。這種架構簡單且可行,但在儲存方面存在一些缺陷。例如,當應用程式需要存取另一伺服器上的資料時,效率會受到限制。這促使了將儲存空間從伺服器中分離,轉移到網路上的需求,例如使用專用檔案伺服器(如 NFS、SMB 或 NAS、SAN 系統)來提升儲存效率和冗餘性。

虛擬化的出現
隨著計算的進一步發展,我們需要更有效地利用伺服器的處理能力。虛擬化技術應運而生,將工作負載與底層硬體分離。一個伺服器現在可以運行多個虛擬機器(VMs),這提高了伺服器資源的利用率。同時,這也帶來了網路和儲存層的複雜性,特別是在大型資料中心中。

超融合架構的解決方案
超融合架構將事情簡化。它將虛擬化技術和軟體定義的存儲與網路整合到單一標準化單元,包含計算、儲存和網路。這些單元可以根據需求進行擴展,無需購買專門的硬體。

為何選擇超融合架構?
1. 簡化設計
- 單一供應商提供整合的計算單元,減少整合成本和兼容性問題。
- 所有單元標準化,降低對專業技能的依賴。
2. 彈性擴展
- 只需新增標準化單元即可擴展計算、儲存和網路能力。
- 可以從小規模開始,隨需求逐步擴展。
3. 資料保護
- 節點內建儲存冗餘,資料可自動複製,提升容錯能力。
- 支援快照、複製和備份功能,可快速恢復資料。
超融合架構的這些特性使得系統更簡單、更靈活且更具韌性,是現代企業的理想選擇。
Networking in Harvester
Harvester 網路設定
在這部分的學習目標中,您將學會以下內容:
- 描述 Harvester 的網路概念
- 建立、修改和刪除叢集網路與網路設定
- 建立、修改和刪除虛擬機(VM)網路
為達成這些學習目標,主要涵蓋的主題包括:
- Harvester 叢集網路概述
我們將討論這些基本概念,以及 Harvester 如何運用這些概念來配置叢集中的網路。 - 叢集網路定義、網路配置與虛擬機網路
我們會深入探討這些元素如何相互關聯,以及如何配置它們,使其能夠被有效利用。
Harvester 叢集中的網路概述
在這裡,我們需要首先討論一些 Harvester 用於實現叢集內部網路的概念。
1. Cluster Network (叢集網路)
叢集網路是一條流量隔離的數據轉發通道,可以將其視為一個網路或一條管道,用於 Harvester 叢集和數據中心中傳輸實際的網路流量。這些管道實際承載著網路流量,這就是所謂的叢集網路。

我們將 Harvester 中一條流量隔離的轉發路徑上的設備、鏈路和配置的總和抽象為一個叢集網路。
在上述情況下,會有兩個叢集網路,分別對應於兩條流量隔離的轉發路徑。
2. Network Config (網路配置)
網路配置定義了叢集節點如何連接到叢集網路。例如,指定用於連接這些網路管道的網路介面,以及在多個網路介面需要連接到同一條管道時應使用的綁定類型。簡言之,網路配置決定了叢集節點如何連接到實際的叢集網路。
3. VM Network (虛擬機網路)
虛擬機網路是供虛擬機連接和通信使用的網路,這些網路與叢集網路相關聯。
概念圖解
以下是一個完整的 Harvester 叢集圖例,包括多個節點、網路、虛擬網路和虛擬機。我們將前述概念應用到此圖中以更直觀地理解。

叢集網路:
叢集網路是承載網路流量的管道。舉例來說,上方的網路交換機與管理網路相關,下方的交換機與叢集節點相連。這些管道可以是實體的(例如交換機)或虛擬的(例如 VLAN)。網路配置:
網路配置顯示了各節點如何連接到叢集網路。不同節點可能有不同的網路介面名稱和連接方式,因此需要在 Kubernetes 的編排層定義這些連接。如果所有節點的配置相同,可以共用一個網路配置;否則需要為每個節點定義單獨的網路配置。虛擬機網路:
虛擬機網路允許虛擬機彼此通信,或與外部世界通信。這些網路通常是 VLAN,但也可以是未標記的網路(untagged network)。虛擬機網路的流量會通過叢集網路傳輸,而不是通過網路配置。
管理網路
管理網路是叢集部署時由 Canal CNI 自動創建的,用於叢集節點之間的通信及管理操作。理論上,虛擬機也可以通過 Kubernetes 服務對象連接到管理網路,但實務上不常見。更好的做法是使用虛擬機網路來進行通信。
VLAN 主幹網路
VLAN 主幹網路是一種專用於虛擬機流量的叢集網路。節點與交換機的連接埠設置為主幹埠,允許多個 VLAN 流量通過而不過濾。這樣,虛擬機網路流量可以高效且隔離地傳輸。
虛擬機網路細節
虛擬機網路是虛擬機之間以及與外部通信的主要方式,通常以 VLAN 實現。若環境有限,也可以與管理網路共用,但最佳實踐是將虛擬機流量隔離到專用的叢集網路中。