9.1 概念綜覽

LVS 包含兩個主要元件:

核心代碼:ip_vs (或 IPVS)

執行已修補為包含 IPVS 代碼之 Linux 核心的節點稱為 Director。在 Director 上執行的 IPVS 代碼是 LVS 的必要特性。

用戶端會連接到用於將封包轉遞至實際伺服器的 Director。Director 是一個四層路由器,包含一組修改過、可使 LVS 運作的路由規則 (例如,連線不在 Director 上產生或終止,Director 不傳送通知)。Director 加上實際的伺服器就組成了虛擬伺服器,其對用戶端而言則是一部機器。

轉遞的方式有多種,不同的方式決定了 Director 將用戶端的封包傳送至實際伺服器的方式。決定要使用哪一部實際的伺服器來處理用戶端要求的新連線,可透過不同的演算法來實作,這些演算法是以模組的方式提供,可根據特定需求進行調整。從用戶端接收到連線請求後,Director 會依據排程為該用戶端指定實際的伺服器。排程器是 IPVS 核心代碼的一部分,用於決定將獲取下一個新連線的實際伺服器。

使用者空間控制器:ipvsadm

ipvsadm 套件提供的 ipvsadm 是一個使用者介面,可用於管理 Linux Virtual Server。例如,您可以設定用來處理服務的規則、處理容錯移轉或設定排程器類型。

可以在指令行中 (或在 rc 檔案中) 使用 ipvsadm 設定以下項目:

  • Director 導向的服務/伺服器 (例如,http 導向至所有實際伺服器,而 ftp 僅導向至其中一部實際伺服器)

  • 各實際伺服器所占的權重 (在某些伺服器比其他伺服器速度更快的情況下使用)

  • 排程演算法

還可以使用 ipvsadm 執行以下任務:

  • 新增服務

  • 關閉服務

  • 刪除服務