1. 程式人生 > >LVS負載均衡群集的了解與基本配置(一)

LVS負載均衡群集的了解與基本配置(一)

企業 比例 請求 process 綜合 三層 多臺 nas 路由

前言:

今天要給大家介紹的是LVS群集,在企業中應用非常廣是為了實現負載均衡,

提高服務器的工作效率,當其中有服務器發生故障的時候也不會影響客戶的訪問。

一、群集技術概述

1、群集的含義

來源於英文單詞Cluster,集群、群集,表示一群、一串的意思,

用在服務器領域,由多臺主機構成,但對外只表現為一個整體

2、負載均衡的分層結構

第一層: 負載調度器(Load Balancer或稱Director):是群集系統的唯一入口,

對外使用所有服務器共有的虛擬ip地址,通常會配置主從兩臺調度器實現熱備份,

確保高可用性。

第二層:服務器池(Server Pool)由大量真實服務器構成,

也就是提供各種服務的服務器,

例如,web服務器,ftp服務器,數據庫服務器等,處理調度器來的客戶機請求。

第三層:共享存儲:為服務器中的所有節點體重穩定、一致的文件存取服務,確保整個集群的統一性。

主要存儲服務器池中應用程序的數據,一般會采用NAS或者SAN設備,

我們今天就使用NFS(Network File System,網絡文件系統)搭建一臺nas服務器,

工作中也可以購買硬件NAS和SAN。

3、負載均衡的工作模式

技術分享圖片

1)地址轉換Network Address Translation):簡稱NAT模式,負載均衡調度器作為網關,

服務器和負載調度器在同一個私有網絡,安全性較好

(優於其他兩種方式)

2)Ip隧道IP Tunnel):簡稱TUN模式,采用開放式的網絡結構,

負載調度器僅作為客戶機的訪問入口,各節點通過各自的internet連接直接回應客戶機,

不再經過負載調度器,服務器的節點分散在互聯網的不同位置,

具有獨立的共有ip地址,通過專用的ip隧道與負載調度器相互通信。

3)直接路由Direct Routing):簡稱DR模式,采用半開放式的網絡結構,

TUN模式類似,但各節點不是分散在各地,而是與調度器位於同一個物理網絡,

負載調度器與各節點服務器通過本地網絡連接,不需要建立專用的ip隧道

相對其他兩種這種方式應用的較多


以上三種模式中,

NAT方式只需要一個公網地址,從而成為最容易的一種負載均衡模式,

安全性也比較好,許多硬件負載均衡設備就是采用這種方式,性比較而言,

DR模式和TUN模式的負載能力更強大,使用範圍更廣,但節點的安全性要稍差一些。


二、LVS虛擬服務器

LVS(Linux VIrtualServer)linux內核的一部分,由我國的章文嵩博士在1998年5月創建,

也是極少數由中國人開發的優秀軟件之一,基於IP地址虛擬化應用,

為基於IP地址和內容請求分發的負載均衡提出了一種高效的解決方法。


LVS默認編譯為ip_vs模塊,在centos系統中,我們可以直接手動加載ip_vs模塊,

並查看當前系統中ip_vs模塊的版本信息,命令如下:


[root@centos ~]# modprobe ip_vs //加載ip_vs模塊

[root@centos ~]# cat /proc/net/ip_vs //查看ip_vs版本信息

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemouteAddress:Port Forward Weight ActiveConn InActConn


技術分享圖片


1、LVS的負載調度算法

1)輪詢Round Robin):將到的訪問請求按順序輪流分配給群集中的各節點,

均等的對待每一臺服務器,不管服務器的連接數和系統負載。

2)加權輪詢Weighted Round Robin):也是輪流分配,但是可以自動查詢各節點的負載情況,

並動態調整權重,讓處理性能強的服務器承擔更多的訪問流量。

3)最少連接Least Connections):根據連接數分配,優先分配給連接數量最少的節點。

4)加權最少連接Weighted Least Connections):權重高的節點將承擔更大比例的活動連接負載


2、使用ipvsadm管理工具

ipvsadm是在負載調度器上使用的LVS群集管理工具,通過調用ip_vs模塊來添加、刪除服務器節點

查看群集的運行狀態。在centos系統中,需要手動安裝。

[root@centos ~]# yum -y install ipvsadm //安裝ipvsadm軟件包


技術分享圖片


其它的命令接下來用一個綜合實驗給大家說明,這樣思路比較清晰。

3、NFS共享存儲服務

1)NFS(Network File System)即網絡文件系統TCP/IP網絡共享資源

FreeBSD支持的文件系統中的一種。在NFS的應用中,

本地NFS的客戶端應用可以透明地讀寫位於遠端NFS服務器上的文件,

就像訪問本地文件一樣。

2)NFS與openfiler、nas、san設備相似,都是屬於存儲設備

其實NFS就是一種nas存儲在exsi上也可以使用NFS作為存儲。

3)NFS服務的實現依賴於RPC(Remote Process Call)遠端過程調用機制,

以完成遠程到本地的映射過程。

4)在centos系統中,需要安裝 nfs-utils(用於NFS共享發布和訪問)、

rpcbind(用於RPC支持)軟件包來提供NFS共享服務。









LVS負載均衡群集的了解與基本配置(一)