一、企業(yè)群集應用概述
1、群集的含義
Cluster,集群、群集
由多臺主機構成,但對外只表現(xiàn)為一個整體,只提供一個訪問入口(域名或IP地址),相當于一臺大型計算機
問題
* 互聯(lián)網應用中,隨著站點對硬件性能、響應速度、服務穩(wěn)定性、數(shù)據可靠性等要求越來越高,單臺服務器已經無法滿足負載均衡及高可用的要求
解決方法
使用價格昂貴的小型機,大型機
使用多臺相對廉價的普通服務器構建服務群集
2、企業(yè)群集分類
根據群集所針對的目標差異,可分為三種類型
負載均衡群集
高可用群集
高性能運算群
1、負載均衡群集
提高應用系統(tǒng)的響應能力、盡可能處理更多的訪問請求減少延遲為目標,獲得高并發(fā)、高負載 (LB)的整體性能
LB的負載分配依賴于主節(jié)點的分流算法,將來自客戶機的訪問請求分擔給多個服務器節(jié)點,從而緩解整個系統(tǒng)的負載壓力。例如,“DNS輪詢” “反向代理”等
2、高可用群集
提高應用系統(tǒng)的可靠性、盡可能地減少中斷時間為目標,確保服務的連續(xù)性,達到高可用(HA)的容錯效果
HA的工作方式包括雙工和主從兩種模式,雙工即所有節(jié)點同時在線主從則只有主節(jié)點在線,但當出現(xiàn)故障時從節(jié)點能自動切換為主節(jié)點。例如,“故障切換” “雙機熱備” 等
3、高性能運算群集
以提高應用系統(tǒng)的CPU運算速度、擴展硬件資源和分析能力為目標,獲得相當于大型、超級計算機的高性能運算(HPC)能力
高性能依賴于“分布式運算”、“并行計算”,通過專用硬件和軟件將多個服務器的CPU、內存等資源整合在一起,實現(xiàn)只有大型、超級計算機才具備的計算能力。例如,“云計算” “網格計算”等
3、負載均衡群集架構
1、負載均衡的結構
第一層:負載調度器(Load Balancer或Director)
訪問整個群集系統(tǒng)的唯一入口,對外使用所有服務器共有的VIP地址,也稱為群集IP 地址。通常會配置主、備兩臺調度器實現(xiàn)熱備份,當主調度器失效以后能夠平滑替換至備用調度器,確保高可用性。
第二層:服務器池 (Server Pool)
群集所提供的應用服務、由服務器池承擔,其中每個節(jié)點具有獨立的RIP
地址(真實IP),只處理調度器分發(fā)過來的客戶機請求。當某個節(jié)點暫時失效時,負載調度器的容錯機制會將其隔離,等待錯誤排除以后再重新納入服務器池。
第三層:共享存儲 (Share Storage)
為服務器池中的所有節(jié)點提供穩(wěn)定、一致的文件存取服務,確保整個群集的統(tǒng)一性共享存儲可以使用NAS設備,或者提供NFS共享服務的專用服務器。
2、負載均衡群集工作模式分析
負載均衡群集是目前企業(yè)用得最多的群集類型
群集的負載調度技術有三種工作模式(LVS)
地址轉換
IP隧道
直接路由
二、LVS的三種工作模式
1、NAT 模式
地址轉換
Network Address Translation,簡稱NAT模式
類似于防火墻的私有網絡結構,負載調度器作為所有服務器節(jié)點的網關,即作為客戶機的訪問入口,也是各節(jié)點回應客戶機的訪問出口
服務器節(jié)點使用私有IP地址,與負載調度器位于同一個物理網絡,安全性要優(yōu)于其他兩種方式
2、TUN模式
IP隧道
IP Tunnel,簡稱TUN模式
采用開放式的網絡結構,負載調度器僅作為客戶機的訪問入口,各節(jié)點通過各自的Internet連接直接回應客戶機,而不再經過負載調度器
服務器節(jié)點分散在互聯(lián)網中的不同位置具有獨立的公網IP地址,通過專用IP隧道與負載調度器相互通信
3、DR模式
直接路由
Direct Routing,簡稱DR模式
采用半開放式的網絡結構,與TUN模式的結構類似,但各節(jié)點并不是分散在各地,而是與調度器位于同一個物理網絡
負載調度器與各節(jié)點服務器通過本地網絡連接,不需要建立專用的IP隧道
調度器僅作為客戶端的訪問入口,節(jié)點服務器的響應消息是直接返回給客戶端的,不經過調度器,節(jié)點服務器與調度器是部署在同一個局域網內,因此不需要建立專用的IP隧道,DR模式是企業(yè)的首選模式
三、實戰(zhàn)
ipvsadm 工具選項說明:
-A:添加虛擬服務器
-D:刪除整個虛擬服務器
-s:指定負載調度算法(輪詢:rr、加權輪詢:wrr、最少連接:lc、加權最少連接:wlc)
-a:表示添加真實服務器(節(jié)點服務器)
-d:刪除某一個節(jié)點
-t:指定 VIP地址及 TCP端口
-r:指定 RIP地址及 TCP端口
-m:表示使用 NAT群集模式
-g:表示使用 DR模式
-i:表示使用 TUN模式
-w:設置權重(權重為 0 時表示暫停節(jié)點)
-p 60:表示保持長連接60秒(默認關閉連接保持)
-l:列表查看 LVS 虛擬服務器(默認為查看所有)
-n:以數(shù)字形式顯示地址、端口等信息,常與“-l”選項組合使用。ipvsadm -ln
NAT模式 LVS負載均衡群集部署
負載調度器:內網關 ens33:192.168.80.10,外網關 ens35:12.0.0.1
Web節(jié)點服務器1:192.168.80.100
Web節(jié)點服務器2:192.168.80.101
NFS服務器:192.168.102.50
客戶端:12.0.0.12
1.部署共享存儲(NFS服務器:192.168.102.50)
關閉防火墻
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
設置兩個網頁頁面
vim /etc/exports
在里面添加的配置的網段
/data/host2 192.168.102.0/24
/data/host1 192.168.102.0/24
2、配置節(jié)點服務器
配置第一個節(jié)點服務器
關閉防火墻和創(chuàng)建一個nginx的yum源
vim nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
安裝yum源的nginx
設置對應的網關
vim /etc/sysconfig/network-scripts/ifcfg-ens33
查看節(jié)點服務器有無設置成功
設置完后重啟nginx服務,開啟開機自啟
配置第二個節(jié)點服務器
修改網卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
設置完后重啟一下網卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
掛載查看
使用瀏覽器查看有沒有設置成功
3、配置負載調度器(內網關 ens33:192.168.102.30,外網關 ens35:12.0.0.30)
(1)配置SNAT轉發(fā)規(guī)則
進入修改網卡
cd /etc/sysconfig/network-scripts/
配置一個內網
配置一個外網
(1)配置SNAT轉發(fā)規(guī)則
啟動一下配置文件
創(chuàng)建一個規(guī)則 NAT 里面的
iptables -t nat -A POSTROUTING -s 192.168.102.0/24 -o ens35 -j SNAT --to 12.0.0.30
創(chuàng)建一個規(guī)則
iptables -t filter -A FORWARD -p tcp --dport 80 -j ACCEPT
(2)加載LVS內核模塊
開啟模塊
modprobe ip_vs #加載 ip_vs模塊
cat /proc/net/ip_vs #查看 ip_vs版本信息
進入內核模塊
進入 ipvs 后 重新加載里面的內核模塊
使用for 循環(huán) 進行加載內核模塊
for i in $(ls * | awk -F. '{print $1}'); do echo $i; done
(3)安裝ipvsadm 管理工具
yum -y install ipvsadm
啟動服務前須保存負載分配策略
ipvsadm-save > /etc/sysconfig/ipvsadm
啟動服務
systemctl start ipvsadm.service
進入nginx.conf 里面關閉長鏈接
關閉長鏈接文章來源:http://www.zghlxwxcb.cn/news/detail-475370.html
使用瀏覽器進行驗證文章來源地址http://www.zghlxwxcb.cn/news/detail-475370.html
到了這里,關于【LVS負載均衡群集】的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!