歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux業界 >> 架設基於Linux的服務器集群

架設基於Linux的服務器集群

日期:2017/2/27 11:13:09   编辑:Linux業界

一. 什麼是服務器集群

  隨著Internet的爆炸性增長,Internet與人的生活越來越息息相關,通過Internet上進行交易也就越來越受關注。近幾年,電子商務的年增長均超過100%。服務器的工作量也迅速增長,所以服務器(特別是一個受人歡迎的WEB服務器)很容易在訪問高峰時期過載。

  而另一方面,計算機從1946年單純的科學計算任務到現在大量紛繁復雜的信息處理,工作量越來越大,需要越來越快的處理能力。所以計算機界就不得不不斷研究更快的處理器,存儲器,以適應這一需求。

  然而,科學家們意識到,單塊處理器的速度發展空間是有限的,為什麼不能讓計算機象人一樣協同工作,地將工作完成好呢!這時,就掀起了的研究。

  舉個例子來說,我們架設了一台WWW服務器,上面構建了一個電子商務網站,然而隨著時間的推移,名聲越來越大,這時點擊率也就越來越高,WWW服務器的負載也就越來越高。這種情況下,我們就必須提升WWW服務器的能力,以滿足以益增長的服務請求。這時,我們就面臨兩種選擇:

  1)升級WWW服務器,采用更快的CPU,增加更多的內存,使其更具有POWER;但日益增長的服務請求又會使服務器再次過載,需要再次升級,這樣就陷入了升級的怪圈。還有,升級時還得考慮到服務如何接續,能否中止!

  2)增加WWW服務器,讓多台服務器來完成相同的服務。

  這種方法就是服務器集群,通過並行技術來大大提升系統性能。也就是這一章的主要內容,這種方法具有很好的擴展性,而且可以最大限度地利用已有投資。
  1.1.集群的概念

  集群,是一組獨立的計算機系統構成一個松耦合的多處理器系統,它們之間通過網絡實現進程間的通信。應用程序可以通過網絡共享內存進行消息傳送,實現分布式計算機。
近幾年來,微處理器、內存、總線技術、網絡技術有了非常大的進步,軟件的並行技術也有了非常大的進步,這使得讓一組廉價的個人電腦與工作站協同工作成為可能,甚至可以與擁有強大的芯片處理能力的超級計算機競爭。

  比如,16個普通微處理器組成的集群系統可以達到億次級浮點計算機能力,而且總的成本小於40萬元。
不幸的是,建造一個集群並不是一件簡單的事件。集群的組成部分必須根據要運行的主要應用進行調整,以使之運行在最佳狀態。這此因素帶來的結果就是,建造集群系統不是只有一個標准的方案,在本章中,我們就會看到許多種建造方案。

  集群技術是計算機系統結構的前沿領域,筆者也僅是略有了解,希望本文能起到拋磚引玉之用。 1.2.並行技術這是一個非常簡單的建造四節點的小集群系統的例子,它是構建在Linux操作系統上,通過MPICH軟件包實現的,希望這個小例子能讓大家對集群系統的構建有一個最基本的了解。

二. 使用MPICH構建一個四節點的集群系統

  這是一個非常簡單的建造四節點的小集群系統的例子,它是構建在Linux操作系統上,通過MPICH軟件包實現的,希望這個小例子能讓大家對集群系統的構建有一個最基本的了解。


  2.1 所需設備

  1).4台采用Pentium II處理器的PC機,每台配置64M內存,2GB以上的硬盤,和EIDE接口的光盤驅動器。

  2).5塊100M快速以太網卡,如SMC 9332 EtherPower 10/100(其中四塊卡用於連接集群中的結點,另外一塊用於將集群中的其中的一個節點與其它網絡連接。)

  3).5根足夠連接集群系統中每個節點的,使用5類非屏蔽雙絞線制作的RJ45纜線

  4).1個快速以太網(100BASE-Tx)的集線器或交換機

  5).1張Linux安裝盤

  2.2 構建說明

  對計算機硬件不熟的人,實施以下這些構建步驟會感到吃力。如果是這樣,請找一些有經驗的專業人士尋求幫助。

  1. 准備好要使用的采用Pentium II處理器的PC機。確信所有的PC機都還沒有接上電源,打開PC機的機箱,在准備與網絡上的其它設備連接的PC機上安裝上兩塊快速以太網卡,在其它的PC機上安裝上一塊快速以太網卡。當然別忘了要加上附加的內存。確定完成後蓋上機箱,接上電源。

  2. 使用4根RJ45線纜將四台PC機連到快速以太網的集線器或交換機上。使用剩下的1根RJ45線將額外的以太網卡(用於與其它網絡相連的那塊,這樣機構就可以用上集群)連接到機構的局域網上(假定你的機構局域網也是快速以太網),然後打開電源。

  3. 使用LINUX安裝盤在每一台PC機上安裝。請確信在LINUX系統中安裝了C編譯器和C的LIB庫。當你配置TCP/IP時,建議你為四台PC分別指定為192.168.1.1、192.168.1.2、192.168.1.3、192.168.1.4。第一台PC為你的服務器節點(擁有兩塊網卡的那台)。在這個服務器節點上的那塊與機構局域網相連的網卡,你應該為其指定一個與機構局域網吻合的IP地址。

  4.當所有PC都裝好Linux系統後,編輯每台機器的/etc/hosts文件,讓其包含以下幾行:

  192.168.1.1 node1 server
  192.168.1.2 node2
  192.168.1.3 node3
  192.168.1.4 node4

  編輯每台機器的/etc/hosts.equiv文件,使其包含以下幾行:

    node1
    node2
    node3
    node4

  以下的這些配置是為了讓其能使用MPICH's p4策略去執行分布式的並行處理應用。

  1. 在服務器節點,建一個/mirror目錄,並將其配置成為NFS服務器,並在/etc/exports文件中增加一行:
/mirror node1(rw) node2(rw) node3(rw) node4(rw)


2. 在其他節點上,也建一個/mirror目錄,關在/etc/fstab文件中增加一行:

    server:/mirror /mirror nfs rw,bg,soft 0 0

  3. /mirror這個目錄從服務器上輸出,裝載在各個客戶端,以便在各個節點間進行軟件任務的分發。

  4. 在服務器節點上,安裝MPICH。MPICH的文檔可在
http://www.mcs.anl.gov/mpi/mpich/docs.html獲得。

  5.任何一個集群用戶(你必須在每一個節點新建一個相同的用戶),必須在/mirror目錄下建一個屬於它的子目錄,如/mirror/username,用來存放MPI程序和共享數據文件。這種情況,用戶僅僅需要在服務器節點上編譯MPI程序,然後將編譯後的程序拷貝到在/mirror目錄下屬於它的的子目錄中,然後從他在/mirror目錄下屬於它的的子目錄下使用p4 MPI策略運行MPI程序。

  2.3 MPICH安裝指南

  1.如果你有gunzip,就d下載mpich.tar.gz,要不然就下載mpich.tar.Z。也可以使用匿名FTP到ftp.mcs.anl.gov的pub/mpi目錄拿。(如果你覺得這個東西太大,你可以到pub/mpi/mpisplit中取分隔成塊的幾個小包,然後用cat命令將它們合並)

  2.解壓:gunzip c mpich.tar.gz |tar xovf-(或zcat mpich.tar.Z|tar xovf-)

  3.進入mpich目錄

  4.執行:./configure為MPICH選擇一套適合你的實際軟硬件環境的參數組,如果你對這些默認選擇的參數不滿意,可以自己進行配置(具體參見MPICH的配置文檔)。最好選擇一個指定的目錄來安裝和配置MPICH,例如:

    ./configure -prefix=/usr/local/mpich-1.2.0

  5.執行:make >& make.log 這會花一段較長的時間,不同的硬件環境花的時間也就不同,可能從10分鐘到1個小時,甚至更多。

  6.(可選)在工作站網絡,或是一台單獨的工作站,編輯mpich/util/machines/machines.xxx(xxx是MPICH對你機器體系結構取的名稱,你能很容易的認出來)以反映你工作站的當地主機名。你完全可以跳過這一步。在集群中,這一步不需要。

  7.(可選)編譯、運行一個簡單的測試程序:

    cd examples/basic
    make cpi
    ln s ../../bin/mpirun mpirun
    ./mpirun np 4 cpi

  此時,你就在你的系統上運行了一個MPI程序。

  8.(可選)構建MPICH其余的環境,為ch_p4策略使用安全的服務會使得任何啟動速度加快,你可以執行以下命令構建:

    make serv_p4

  (serv_p4是一個較新的P4安全服務的版本,它包含在MPICH 1.2.0版中),nupshot程序是upshot程序的一個更快版本,但他需要tk 3.6版的源代碼。如果你有這個包,你就用以下命令可以構建它:

     make nupshot

  9.(可選)如果你想將MPICH安裝到一個公用的地方讓其它人使用它,你可以執行:

  make install 或 bin/mpiinstall你可以使用-prefix選項指定MPICH安裝目錄。安裝後將生成include、lib、bin、sbin、www和man目錄以及一個小小的示例目錄,(可選)到此你可以通告所有的用戶如何編譯、執行一個MPI程序。

  2.4 費用統計

  這個小的集群方案總的費用大致如下:

  設備費用:

  4台 Pentium II CPU /64MB內存, 2GB的硬盤帶EIDE CD-ROM 的機器: 24000元
  5塊快速以太網卡: 800元
  1個快速以太網的集線機:2000元
  5根雙絞線:50元

  軟件費用:

  LINUX安裝光盤:50元
  MPICH:0元
  合計:26900元。

  這樣一個集群系統可以用於一些大量的科學計算,信息處理,而且其性價比實在是太好了,僅需不到三萬元。






Copyright © Linux教程網 All Rights Reserved