Linux集群原理
Linux集群系統(tǒng)包括集群節(jié)點(diǎn)和集群管理器兩部分。集群節(jié)點(diǎn)有時(shí)簡(jiǎn)稱為節(jié)點(diǎn)、服務(wù)器或服務(wù)器節(jié)點(diǎn),是提供處理資源的系統(tǒng),它進(jìn)行集群的實(shí)際工作。一般來講,它必須進(jìn)行配置才能成為集群的一部分,也必須運(yùn)行集群的應(yīng)用軟件。應(yīng)用軟件可以是專用于集群的軟件,也可以是設(shè)計(jì)用于分布式系統(tǒng)的標(biāo)準(zhǔn)軟件。Linux集群管理器則是將節(jié)點(diǎn)捆綁在一起,以構(gòu)成單一系統(tǒng)外觀的邏輯結(jié)構(gòu),它用于將任務(wù)分解到所有的節(jié)點(diǎn)。
集群因多種不同的原因而有著不同的類型,建立Linux集群的最直接原因是共享CPU資源,在多個(gè)機(jī)器之間平衡負(fù)載,獲得更多的系統(tǒng)可靠性,或在主機(jī)失敗時(shí)提供后備系統(tǒng)(切換)。
通過對(duì)相關(guān)軟件的分析,實(shí)現(xiàn)集群負(fù)載的功能是通過流量管理實(shí)現(xiàn)的,具體有以下幾種實(shí)現(xiàn)方法:直接路由(Direct Forwarding)、網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)和隧道技術(shù)(Tunneling)。
直接路由(Direct Forwarding)是當(dāng)參與集群的計(jì)算機(jī)和作為控制管理的計(jì)算機(jī)在同一個(gè)網(wǎng)段時(shí)可以使用此法??刂乒芾淼挠?jì)算機(jī)接收到請(qǐng)求包時(shí),直接送到參與集群的節(jié)點(diǎn)。它的優(yōu)點(diǎn)是返回給客戶的流量不經(jīng)過控制主機(jī),速度快、開銷少。
可能大家比較熟悉網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)這種方法。地址轉(zhuǎn)換器有能被外界訪問到的合法IP地址,它修改來自專有網(wǎng)絡(luò)的流出包的地址,外界看起來包是來自地址轉(zhuǎn)換器本身。當(dāng)外界包送到轉(zhuǎn)換器時(shí),它能判斷出應(yīng)該將包送到內(nèi)部網(wǎng)的哪個(gè)節(jié)點(diǎn)。它的優(yōu)點(diǎn)是節(jié)省IP地址,能對(duì)內(nèi)部進(jìn)行偽裝;缺點(diǎn)是效率低,因?yàn)榉祷亟o請(qǐng)求方的流量要經(jīng)過轉(zhuǎn)換器。
隧道技術(shù)(Tunneling)這種方式是Linux集群的節(jié)點(diǎn)不在同一個(gè)網(wǎng)段時(shí)采用的轉(zhuǎn)發(fā)機(jī)制,是將IP包封裝在其它網(wǎng)絡(luò)流量中。從安全角度考慮,應(yīng)該使用隧道技術(shù)中的VPN,也可使用租用專線。
Linux集群所能提供的服務(wù)是基于TCP/IP的Web服務(wù)、Mail服務(wù)、News服務(wù)、DNS服務(wù)和Proxy服務(wù)器等。下面我就以一個(gè)具體的產(chǎn)品TurboLinux Cluster Server 來實(shí)現(xiàn)一個(gè)負(fù)載均衡Linux集群系統(tǒng),用于提供Web和FTP服務(wù)。
Linux集群規(guī)劃
1.提供的服務(wù):Web、FTP.
2.做一個(gè)較完善的負(fù)載均衡系統(tǒng),以便能用到其中較多的功能。
3.使用4臺(tái)服務(wù)器,其中3臺(tái)安裝TurboLinux Cluster Server,1臺(tái)安裝Windows 2000 Sever .
Linux集群安裝
1.在3臺(tái)服務(wù)器上安裝Turbo Linux,還需要安裝Apache和wu-ftpd,因?yàn)長(zhǎng)inux集群要提供這種服務(wù)。安裝完成后重啟機(jī)器,掛接光驅(qū)在目錄/mnt/cdrom下,執(zhí)行。/TLCS-install,然后按提示完全安裝。
2.在1臺(tái)服務(wù)器上安裝Windows 2000 Server,還要安裝Internet Information Server 5.0.
配置Linux集群管理器
1.設(shè)置各臺(tái)服務(wù)器的IP地址、子網(wǎng)掩碼、路由等,調(diào)通網(wǎng)絡(luò),并將1臺(tái)TurboLinux服務(wù)器設(shè)置成DNS服務(wù)器,使其能夠正向解析和反向解析。此例服務(wù)器名為pc1,域?yàn)閠est.com.
2.配置Cluster Server.執(zhí)行TurboLinuxclusteradmin,設(shè)置情況如下(連字符連接的是選單選項(xiàng)或其下級(jí)選單,冒號(hào)后為設(shè)置情況):
(1)ClusterServer Configuration-Cluster Services-Application Stability Agents:
http為默認(rèn)的服務(wù),不用設(shè)置。
ftp:/usr/lib/ftpAgent
(2)ClusterServer Configuration--Cluster Services--Service Settings:
http,80:TCP,sticky.
ftp,21:TCP,ftp.
(3)ClusterServer Configuration--Servers Configuration:
pc1 (pc1.test.com),direct,ping
pc2 (pc2.test.com),direct,ping
pc3 (pc3.test.com),direct,ping
pc4 (pc4.test.com),direct,ping
(4)ClusterServer Configuration--Advance Traffic Managers:
Advance Traffic Manager System:pc1.test.com
Advance Traffic Manager Setting: 默認(rèn)值
(5)ClusterServer ConfigurationàVirtual Severs:
主機(jī)為:pc1.test.com
sendmail:master@pc1 .test.com
Server pool name: Server Group1
(6)ClusterServer ConfigurationàGloble Settings:
網(wǎng)絡(luò)設(shè)置:netmask 255.255.255.0
配置集群各節(jié)點(diǎn)
1.配置Windows 2000 Server節(jié)點(diǎn)
因?yàn)門urboLinux Cluster Server 本身能被工具自動(dòng)同步,所以只要配置Windows 2000 Server即可。
(1)開始→設(shè)置→控制面板→添加新硬件→下一步→添加/排除設(shè)備故障→添加新設(shè)備→否,再從列表選擇硬件→其它設(shè)備→Microsoft:Microsoft Loopback Adapter→完成。
(2)在桌面上單擊鼠標(biāo)右鍵選擇網(wǎng)上鄰居→屬性→TCP/IP,設(shè)置IP地址、缺省網(wǎng)關(guān)、子網(wǎng)掩碼(先設(shè)成 255.255.255.0)。
(3)開始→運(yùn)行→regedit→找到注冊(cè)表中與Microsoft Loopback Adapter相關(guān)的項(xiàng),將子網(wǎng)掩碼改成 255.255.255.255.
(4)配置系統(tǒng)運(yùn)行合適的服務(wù),并配置適合集群管理器管理的配置,以便可在控制管理器中使用。
2.配置Turbo Linux Cluster Server節(jié)點(diǎn)
(1)在管理菜單中選tlcs_content _sync執(zhí)行內(nèi)容同步,輸入將要配置的節(jié)點(diǎn)機(jī)密碼,將復(fù)制集群管理器中的服務(wù)內(nèi)容到節(jié)點(diǎn)。
(2)在管理菜單中選擇tlcs_ config _sync執(zhí)行設(shè)置同步,輸入將要配置的節(jié)點(diǎn)機(jī)密碼,復(fù)制集群管理器中的設(shè)置內(nèi)容到節(jié)點(diǎn)。
到此,我們已經(jīng)可以在集群管理器PC1上看到運(yùn)行狀態(tài),可將客戶端連在接服務(wù)器的交換機(jī)上,客戶端可以請(qǐng)求Web和FTP服務(wù)。