企業羣集應用概述
羣集的含義
- Cluster,集羣、羣集
- 由多臺主機構成,但對外只表現爲一個整體
在互聯網應用中,隨着站點對硬件性能、響應速度、服務穩定性、數據可靠性等要求越來越高,單臺服務器力不從心
- 解決方法
- 使用價格昂貴的小型機、大型機
- 使用普通服務器構建羣集
企業羣集分類
根據羣集針對的目標差異,可分爲三種類型
- 負載均衡羣集
- 高可用羣集
- 高性能運算羣集
負載均衡羣集 (Load Balance Cluster)
- 以提高應用系統的影響能力、儘可能處理更多的訪問請求、減少延遲爲目標,獲得高併發、高負載(LB)的整體性能
- LB的負載分配依賴於主節點的分流算法
高可用羣集 (High Availability Cluster)
- 以提高應用系統的可靠性、儘可能地減少中斷時間爲目標,確保服務的連續性,達到高可用(HA)的容錯效果
- HA的工作方式包括雙工和主從兩種模式
高性能運算羣集(High Performance Computer Cluster)
- 以提高應用系統的CPU運算速度、擴展硬件資源和分析能力爲目標,獲得相當於大型、超級計算機的高性能運算(HPC)能力
- 高性能運算羣集的高性能依賴於“分佈式運算”、“並行計算”,通過專用硬件和軟件將多個服務器的CPU、內存等資源整合在一起,實現只有大型、超級計算機才具備的計算能力
負載均衡羣集工作模式分析
負載均衡羣集是目前企業用得最多的羣集類型
- 羣集的負載調度技術有三種工作模式
- 地址轉換
- IP隧道
- 直接路由
NAT模式
- 地址轉換(Network Address Translation)
- 簡稱NAT模式,類似於防火牆的私有網絡結構,負載調度器作爲所有服務器節點的網關,即作爲客戶機的訪問入口,也是各節點回應客戶機的訪問出口
- 服務器節點使用私有IP地址,與負載調度器位於同一個物理網絡,安全性要優於其他兩種方式
TUN模式
- IP隧道(IP Tunnel)
- 簡稱TUN模式,採用開放式的網絡結構,負載調度器僅作爲客戶機的訪問入口,各節點通過各自的Internet連接直接回應客戶機,而不再經過負載調度器
- 服務器節點分散在互聯網中的不同位置,具有獨立的公網IP地址,通過專用IP隧道與負載調度器相互通信
DR模式
- 直接路由(Direct Routing)
- 簡稱DR模式,採用半開放式的網絡結構,與TUN模式的結構類似,但各節點並不是分散在各地,而是與調度器位於同一一個物理網絡
- 負載調度器與各節點服務器通過本地網絡連接,不需要建立專用的IP隧道
負載均衡羣集架構
負載均衡的結構
- 第一層,負載調度器(Load Balancer或Director)
- 第二層,服務器池(Server Pool)
- 第三層,共享存儲(Share Storage)
關於LVS虛擬服務器
Linux Virtual Server
- 針對Linux內核的負載均衡解決方案
- 1998年5月,由我國的章文嵩博士創建
-
官方網站: http://www.linuxvirtualserver.org/
[root@localhost ~]# modprobe ip_vs //確認內核對LVS的支持 [root@localhost ~]# cat /proc/net/ip_vs IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn
LVS的負載調度算法
- 輪詢(Round Robin)
- 將收到的訪問請求按照順序輪流分配給羣集中的各節點(真實服務器)均等地對待每一臺服務器,而不管服務器實際的連接數和系統負載
- 加權輪詢(Weighted Round Robin)
- 根據真實服務器的處理能力輪流分配收到的訪問請求,調度器可以自動查詢各節點的負載情況,並動態調整其權重
- 保證處理能力強的服務器承擔更多的訪問流量
- 最少連接(Least Connections)
- 根據真實服務器已建立的連接數進行分配,將收到的訪問請求優先分配給連接數最少的節點
-
加權最少連接(Weighted L east Connections)
- 在服務器節點的性能差異較大的情況下,可以爲真實服務器自動調整權重
- 權重較高的節點將承擔更大比例的活動連接負載
使用ipvsadm工具
LVS羣集創建與管理
- 創建虛擬服務器
- 添加,刪除服務器節點
- 查看羣集及節點情況
- 保存負載分配策略