溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

集群的應(yīng)用概述及分類

發(fā)布時(shí)間:2020-04-17 14:02:31 來(lái)源:億速云 閱讀:325 作者:三月 欄目:系統(tǒng)運(yùn)維

下文給大家?guī)?lái)集群的應(yīng)用概述及分類,希望能夠給大家在實(shí)際運(yùn)用中帶來(lái)一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書(shū)籍,今天我們就用億速云在行業(yè)內(nèi)累計(jì)的經(jīng)驗(yàn)來(lái)做一個(gè)解答。

群集應(yīng)用概述

群集的含義

1.Cluster,集群、群集
2.由多臺(tái)主機(jī)構(gòu)成,但對(duì)外只表現(xiàn)為一個(gè)整體

在互聯(lián)網(wǎng)應(yīng)用中,隨著站點(diǎn)對(duì)硬件性能、響應(yīng)速度、服務(wù)穩(wěn)定性、數(shù)據(jù)可靠性等要求越來(lái)越高,單臺(tái)云服務(wù)器力不從心

解決方法

1.使用價(jià)格昂貴的小型機(jī)、大型機(jī)
2.使用普通服務(wù)器構(gòu)建服務(wù)群集


集群的應(yīng)用概述及分類

企業(yè)群集分類

根據(jù)群集所針對(duì)的目標(biāo)差異,可分為三種類型:

1.負(fù)載均衡群集(輪詢,最小連接的加權(quán)重)
2.高可用群集(訪問(wèn)的速度,可靠性)
3.高性能運(yùn)算群集(并發(fā)處理任務(wù))

負(fù)載均衡群集(Load Balance Cluster)

1.以提高應(yīng)用系統(tǒng)的響應(yīng)能力、盡可能處理更多的訪問(wèn)請(qǐng)求、減少延遲為目標(biāo),獲得高并發(fā)、負(fù)載(LB) 的整體性能
2.LB的負(fù)載分配依賴于主節(jié)點(diǎn)的分流算法

高可用群集(High Availability Cluster)

1.以提高應(yīng)用系統(tǒng)的可靠性、盡可能地減少中斷時(shí)間為目標(biāo),確保服務(wù)的連續(xù)性,達(dá)到高可用(HA) 的容錯(cuò)效果
2.HA的工作方式包括雙工和主從兩種模式

高性能運(yùn)算群集(High Performance Computer Cluster)

1.以提高應(yīng)用系統(tǒng)的CPU運(yùn)算速度、擴(kuò)展硬件資源和分析能力為目標(biāo),獲得相當(dāng)于大型、超級(jí)計(jì)算機(jī)的高性能運(yùn)算(HPC)能力
2.高性能運(yùn)算群集的高性能依賴于"分布式運(yùn)算”、“并行計(jì)算” ,通過(guò)專用硬件和軟件將多個(gè)服務(wù)器的CPU、內(nèi)存等資源整合在一起,實(shí)現(xiàn)只有大型、超級(jí)計(jì)算機(jī)才具備的計(jì)算能力

負(fù)載均衡群集工作模式分析

負(fù)載均衡群集是目前企業(yè)用得最多的群集類型
群集的負(fù)載調(diào)度技術(shù)有三種工作模式:

1.地址轉(zhuǎn)換
2.IP隧道
3.直接路由(DR)

NAT模式

地址轉(zhuǎn)換(Network Address Translation):

集群的應(yīng)用概述及分類

1.簡(jiǎn)稱NAT模式,類似于防火墻的私有網(wǎng)絡(luò)結(jié)構(gòu),負(fù)載調(diào)度器作為所有服務(wù)器節(jié)點(diǎn)的網(wǎng)關(guān),即作為客戶機(jī)的訪問(wèn)入口,也是各節(jié)點(diǎn)回應(yīng)客戶機(jī)的訪問(wèn)出口
2.服務(wù)器節(jié)點(diǎn)使用私有IP地址,與負(fù)載調(diào)度器位于同一個(gè)物理網(wǎng)絡(luò),安全性要優(yōu)于其他兩種方式

TUN模式

TUN模式

IP隧道(IP Tunnel):

1.簡(jiǎn)稱TUN模式,采用開(kāi)放式的網(wǎng)絡(luò)結(jié)構(gòu),負(fù)載調(diào)度器僅作為客戶機(jī)的訪問(wèn)入口,各節(jié)點(diǎn)通過(guò)各自的Internet連接直接回應(yīng)客戶機(jī),而不再經(jīng)過(guò)負(fù)載調(diào)度器
2.服務(wù)器節(jié)點(diǎn)分散在互聯(lián)網(wǎng)中的不同位置,具有獨(dú)立的公網(wǎng)IP地址,通過(guò)專用IP隧道與負(fù)載調(diào)度器相互通信

DR模式

直接路由(Direct Routing)

1.簡(jiǎn)稱DR模式,采用半開(kāi)放式的網(wǎng)絡(luò)結(jié)構(gòu),與TUN模式的結(jié)構(gòu)類似,但各節(jié)點(diǎn)并不是分散在各地,而是與調(diào)度器位于同一個(gè)物理網(wǎng)絡(luò)
2.負(fù)載調(diào)度器與各節(jié)點(diǎn)服務(wù)器通過(guò)本地網(wǎng)絡(luò)連接,不需要建立專用的IP隧道

負(fù)載均衡群集架構(gòu)

負(fù)載均衡的結(jié)構(gòu):

1.第一層,負(fù)載調(diào)度器(Load Balancer或Director)
2.第二層,服務(wù)器池(Server Pool)
3.第三層,共享存儲(chǔ)(Share Storage)

LVS的負(fù)載調(diào)度算法

1.輪詢(Round Robin):

1.將收到的訪問(wèn)請(qǐng)求按照順序輪流分配給群集中的各節(jié)點(diǎn)(真實(shí)服務(wù)器)
2.均等地對(duì)待每一臺(tái)服務(wù)器, 而不管服務(wù)器實(shí)際的連接數(shù)和系統(tǒng)負(fù)載

2.加權(quán)輪詢(Weighted Round Robin):

1.根據(jù)真實(shí)服務(wù)器的處理能力輪流分配收到的訪問(wèn)請(qǐng)求,調(diào)度器可以自動(dòng)查詢各節(jié)點(diǎn)的負(fù)載情況,并動(dòng)態(tài)調(diào)整其權(quán)重
2.保證處理能力強(qiáng)的服務(wù)器承擔(dān)更多的訪問(wèn)流量

3.最少連接(Least Connections)

根據(jù)真實(shí)服務(wù)器已建立的連接數(shù)進(jìn)行分配,將收到的訪問(wèn)請(qǐng)求優(yōu)先分配給連接數(shù)最少的節(jié)點(diǎn)

4.加權(quán)最少連接(Weighted Least Connections)

1.在服務(wù)器節(jié)點(diǎn)的性能差異較大的情況下,可以為真實(shí)服務(wù)器自動(dòng)調(diào)整權(quán)重
2.權(quán)重較高的節(jié)點(diǎn)將承擔(dān)更大比例的活動(dòng)連接負(fù)載

NFS共享存儲(chǔ)服務(wù)

Network File System,網(wǎng)絡(luò)文件系統(tǒng)

1.依賴于RPC (遠(yuǎn)端過(guò)程調(diào)用)
2.需安裝nfs-utils、rpcbind軟件包
3.系統(tǒng)服務(wù): nfs、 rpcbind
4.共享配置文件: /etc/exports

在客戶機(jī)中訪問(wèn)NFS共享資源

1.安裝rpcbind軟件包,并啟動(dòng)rpcbind服務(wù)
2.手動(dòng)掛載NFS共享目錄
3.fstab自動(dòng)掛載設(shè)置

實(shí)驗(yàn)步驟

在調(diào)度器服務(wù)器上安裝ipvsadm管理工具

#要先添加一個(gè)網(wǎng)絡(luò)適配器,成為兩個(gè)網(wǎng)卡
#安裝ipvsadm管理工具
[root@localhost ~]# yum install ipvsadm -y

在兩臺(tái)web節(jié)點(diǎn)服務(wù)器上的操作

#安裝httpd服務(wù)
[root@localhost ~]# yum install httpd -y
*
在共享存儲(chǔ)服務(wù)器上的操作
#使用rpm查詢是否有nfs-utils和rpcbind軟件包
[root@localhost ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.48.el7.x86_64
[root@localhost ~]# rpm -q rpcbind
rpcbind-0.2.0-42.el7.x86_64

配置共享存儲(chǔ)服務(wù)器

#修改ens33網(wǎng)卡配置
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"      #將dhcp改為static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.130      #在末行下追加:IP地址,子網(wǎng)掩碼和網(wǎng)關(guān)
NETMASK=255.255.255.0
GATEWAY=192.168.200.1

#重啟網(wǎng)絡(luò)服務(wù)
[root@localhost ~]# systemctl network restart

#關(guān)閉防火墻和安全功能
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0

#開(kāi)啟nfs共享服務(wù)
[root@localhost ~]# systemctl start nfs.service
[root@localhost ~]# systemctl start rpcbind.service

#編輯共享目錄配置文件
[root@localhost ~]# vim /etc/exports

*> #寫(xiě)入共享目錄條目,并授予讀寫(xiě)權(quán)限
/usr/share (ro,sync)
/opt/accp 192.168.200.0/24(rw,sync)
/opt/kgc 192.168.200.0/24(rw,sync)

[root@localhost ~]# cd /opt/
[root@localhost opt]# mkdir kgc accp
[root@localhost opt]# chmod 777 kgc/ accp/  #提升目錄權(quán)限

[root@localhost opt]# exportfs -rv      #進(jìn)行發(fā)布共享目錄
exporting 192.168.200.0/24:/opt/kgc
exporting 192.168.200.0/24:/opt/accp
exporting :/usr/share*

配置Web1節(jié)點(diǎn)服務(wù)器

#修改ens33網(wǎng)卡配置
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"      #將dhcp改為static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.110      #追加IP地址,子網(wǎng)掩碼以及網(wǎng)關(guān)
NETMASK=255.255.255.0
GATEWAY=192.168.200.1

#重啟服務(wù)
[root@localhost ~]# systemctl network restart

#關(guān)閉防火墻和安全功能
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# netstat -ntap | grep 80
tcp6       0      0 :::80               :::            LISTEN          7315/httpd          
[root@localhost ~]# ping 192.168.200.130
PING 192.168.200.130 (192.168.200.130) 56(84) bytes of data.
64 bytes from 192.168.200.130: icmp_seq=1 ttl=64 time=0.754 ms
64 bytes from 192.168.200.130: icmp_seq=2 ttl=64 time=0.372 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.372 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.372 ms
[root@localhost ~]# showmount -e 192.168.200.130
Export list for 192.168.200.130:
/usr/share
/opt/kgc  192.168.200.0/24
/opt/accp  192.168.200.0/24

#掛載網(wǎng)站
[root@localhost ~]# mount.nfs 192.168.200.130:/opt/kgc /var/www/html/

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo "this is kgc web" > index.html
[root@localhost html]# ls
index.html

確認(rèn)存儲(chǔ)服務(wù)器上查看有無(wú)站點(diǎn)文件

[root@localhost ~]# cd /opt/
[root@localhost opt]# ls
kgc  accp  rh

[root@localhost opt]# cd kgc/
[root@localhost accp]# cat index.html
this is kgc web

驗(yàn)證Web1節(jié)點(diǎn)服務(wù)器提供的網(wǎng)頁(yè)

集群的應(yīng)用概述及分類

配置Web2節(jié)點(diǎn)服務(wù)器上

#修改ens33網(wǎng)卡配置
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"      #將dhcp改為static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.120  #追加IP地址,子網(wǎng)掩碼以及網(wǎng)關(guān)
NETMASK=255.255.255.0
GATEWAY=192.168.200.1

[root@localhost ~]# systemctl network restart
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# netstat -ntap | grep 80
tcp6       0      0 :::80               :::            LISTEN          7315/httpd  
[root@localhost ~]# ping 192.168.200.130
PING 192.168.200.130 (192.168.200.130) 56(84) bytes of data.
64 bytes from 192.168.200.130: icmp_seq=1 ttl=64 time=0.853 ms
64 bytes from 192.168.200.130: icmp_seq=2 ttl=64 time=0.853 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.624 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.624 ms
[root@localhost ~]# showmount -e 192.168.200.130
Export list for 192.168.200.130:
/usr/share
/opt/kgc   192.168.200.0/24
/opt/accp  192.168.200.0/24
[root@localhost ~]# mount.nfs 192.168.200.130:/opt/accp /var/www/html/

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo "this is accp web" > index.html
[root@localhost html]# cat index.html
this is accp web

確認(rèn)存儲(chǔ)服務(wù)器上查看有無(wú)站點(diǎn)文件

[root@localhost ~]# ls /opt/
kgc  accp  rh
[root@localhost opt]# cd accp/
[root@localhost accp]# cat index.html
this is accp web

驗(yàn)證Web2節(jié)點(diǎn)服務(wù)器提供的網(wǎng)頁(yè)
集群的應(yīng)用概述及分類

配置調(diào)度服務(wù)器

#修改ens33網(wǎng)卡配置
[root@localhost network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"      #將dhcp改為static
DEVICE="ens33"
ONBOOT="yes"            #追加IP地址,子網(wǎng)掩碼以及網(wǎng)關(guān)
IPADDR=192.168.200.1
NETMASK=255.255.255.0

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# ls
ifcfg-ens33  ifdown-ppp       ifup-ib      ifup-Team
ifcfg-lo     ifdown-routes    ifup-ippp    ifup-TeamPort
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens36

#修改ens36網(wǎng)卡
[root@localhost network-scripts]# vim ifcfg-ens36
BOOTPROTO="static"      #將dhcp改為static
NAME="ens36"            #改名稱為ens36
UUID號(hào)刪除
DEVICE="ens36"          #改名稱改為ens36
ONBOOT="yes"
IPADDR=12.0.0.1         #追加IP地址,子網(wǎng)掩碼以及網(wǎng)關(guān)
NETMASK=255.255.255.0

[root@localhost network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"      #將dhcp改為static
DEVICE="ens33"
ONBOOT="yes"            #追加IP地址,子網(wǎng)掩碼以及網(wǎng)關(guān)
IPADDR=192.168.200.1
NETMASK=255.255.255.0

[root@localhost network-scripts]# systemctl network restart
[root@localhost network-scripts]# vim /etc/sysctl.conf
#在尾行行追加一下條目
net.ipv4.ip_forward=1

#加載路由轉(zhuǎn)發(fā)
[root@localhost network-scripts]# sysctl -p
net.ipv4.ip_forward = 1

[root@localhost network-scripts]# iptables -t nat -F
[root@localhost network-scripts]# iptables -F

#配置SNAT轉(zhuǎn)發(fā)規(guī)則
[root@localhost network-scripts]# iptables -t nat -A POSTROUTING -o ens36 -s 192.168.200.0/24 -j SNAT --to-source 12.0.0.1

加載LVS內(nèi)核模塊

[root@localhost network-scripts]# modprobe ip_vs
[root@localhost network-scripts]# 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

保存配置項(xiàng)并啟動(dòng)服務(wù)

#將設(shè)置進(jìn)行保存
[root@localhost network-scripts]# ipvsadm --save > /etc/sysconfig/ipvsadm
[root@localhost network-scripts]# systemctl start ipvsadm.service

#配置負(fù)載分配策略
[root@localhost network-scripts]# cd /opt/
[root@localhost opt]# vim nat.sh
#!/bin/bash
#清除內(nèi)核虛擬服務(wù)器表中的所有記錄
ipvsadm -C

#添加新的虛擬服務(wù)器
ipvsadm -A -t 12.0.0.1:80 -s rr        
ipvsadm -a -t 12.0.0.1:80 -r 192.168.200.110:80 -m
ipvsadm -a -t 12.0.0.1:80 -r 192.168.200.120:80 -m

#生效負(fù)載分配策略
[root@localhost opt]# source nat.sh
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  localhost.localdomain:http rr
-> 129.168.200.110:http         Masq    1      0          0        
-> 129.168.200.120:http         Masq    1      0          0

使用Windows 7 客戶終端訪問(wèn)網(wǎng)頁(yè)

集群的應(yīng)用概述及分類



集群的應(yīng)用概述及分類

看了以上關(guān)于集群的應(yīng)用概述及分類,如果大家還有什么地方需要了解的可以在億速云行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,億速云技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。

 

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI