• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Linux集群的安裝與并行計算

    發布: 2007-5-26 11:30 | 作者: 佚名 | 來源: 互連網 | 查看: 41次 | 進入軟件測試論壇討論

    領測軟件測試網
    1.linux安裝
    安裝過程就不多說了。需要注意的是安裝時,如果機群不與外界聯網則可以不考慮安全
    方面的因素而把rsh選為可信賴的服務,注意安裝相應的軟件包;如果還要與外界保持聯
    網,出于安全需要應把ssh選為可信賴的服務。安裝以后,應該保證各節點之間能夠用s
    sh相互登錄。每個節點的sshd都應該能正常提供服務。主機名:node1...noden (我所構
    建的系統n=2)
    2.創建NFS服務服務器節點public目錄下建立mpi目錄,并將其配置成NFS服務器,在/etc/exports文
    件中加入一行:
    /public/mpi  node1(rw)  node2(rw)
    在客戶端節點的/etc/fstab文件中增加一行:
    sever :/pubilc/mpi  nfs  rw , bg , soft  0 0
    將/public/mpi這個目錄從服務器節點輸出,并裝載在各客戶端,從而便于在各節點間分
    發任務
    3.修改/etc/hosts文件,將所有節點名稱極其ip地址填入。例如:
    127.0.0.1 localhost.localdomain localhost
    192.168.1.1 node1
    192.168.1.2 node2
    …………………….
    每個節點都進行類似的配置。這樣做的目的是使節點之間能夠通過node1 ... noden的名
    稱相互訪問。你可以通過ping noden 或 ssh noden進行測試。
    4.修改(或創建)/etc/hosts.equiv文件
    將所有你允許訪問本機進行mpi計算的機器名填入,一行一個機器名。這一步是為了使節
    點對其它的節點放權。
    例如,我的node1是我用于啟動mpi集群計算的機器,其他的節點是參與計算者,在node
    1的/etc/hosts.equiv文件是這樣的:
    node1 #給自己放權,這樣在只有一臺機器時也可以模擬并行計算環境
    node2
    .....
    noden
    在node2...noden的/etc/hosts.equiv文件:
    node1 #對node1放權
    node2
    ......
    noden
    5.修改~/.bash_profile文件
    首先決定一個用于啟動集群計算的用戶名,不提倡使用root進行集群計算。這里在每個
    節點上建立新用戶chief,他們的主目錄都是/home/chief,必須采用同樣的密碼,將來
    的計算程序必須放在相同的路徑上。譬如你的程序為:fpi.f和a.out,則必須把a.out放
    在同樣的路境內,比如~/mpirun/a.out,每個節點都是如此。 修改~/.bash_profile文
    件,主要是加入下列幾行腳本:
    export PATH=$PATH:/usr/local/mpich/bin
    export MPI_USEP4SSPORT=yes
    export MPI_P4SSPORT=22
    export P4_RSHCOMMAND=rsh 或ssh
    這里我們預定了將來mpich的運行環境安裝在目錄/usr/local/mpich下面。其余的三個變
    量是用來通知mpi運行環境采用rsh(或ssh)來作為遠程shell。linux的運行環境到此就配
    置完畢了。
    6.配置rsh 或ssh
    對于采用rsh來作為遠程shell運行MPI的用戶只要保證在各個節點上都具有相同的用戶,
    并把這一用戶的密碼設為空密碼就可以運行了。
    若采用ssh作為遠程shell則按如下配置:以你設定的用于啟動mpi計算的用戶登錄,運行
    ssh-keygen,這將生成一個私有/公開密鑰對,分別存放在~/.ssh/identity和~/.ssh/i
    dentity.pub文件內。然后進行訪問授權,運行:
    cp ~/.ssh/identity.pub ~/.ssh/authorized_keys
    chmod go-rwx ~/.ssh/authorized_keys
    ssh-agent $SHELL
    ssh-add
    在每個節點重復一遍。試著在某一節點上登錄其它節點,ssh noden,則在.ssh/下生成
    一個known_hosts2文件,里面放著訪問該主機的密鑰,把所有密鑰收集起來,在各個節
    點上作同樣的拷貝。這樣做的目的是使各節點相互之間訪問無需輸入密碼。
    7.開啟各項必需的服務
    如果是以根用戶root 登陸系統的則可以用ntsysv命令啟動ntsysv實用程序。ntsysv 實
    用程序允許使用簡單的菜單界面啟動或關閉各種運行等級的服務。在其中我們選擇開啟
    rsh ,rlogin,telnet等。也可以關閉一些服務以加快啟動速度如sendmail。
    如果是使用su命令轉為root用戶的則很可能運行ntsysv并不出現ntsysvs實用程序。此時
    可以直接去修改/etc/xinetd.d下的rlogin, rsh ,telenet的設置。用vi編輯器打開xin
    etd.d:
    vi /etc/xinetd.d
    則可看到如下所示的配置文件:
    關于rsh的設置如下
    # default: off
    # description: The rshd server is the server for the rcmd(3) routine and, #       consequently, for the rsh(1) program.  The server provides #       remote execution facilities with authentication based on #       privileged port numbers from trusted hosts.
    service shell
    {
    disable = yes
    socket_type             = stream
    wait                    = no
    user                    = root
    log_on_success          += USERID
    log_on_failure          += USERID
    server                  = /usr/sbin/in.rshd
    }
    關于rlogin的設置如下
    # default: off
    # description: rlogind is the server for the rlogin(1) program.  The server
    #       provides a remote login facility with authentication based on #       privileged port numbers from trusted hosts.
    service login
    {
    disable = yes
    socket_type             = stream
    wait                    = no
    user                    = root
    log_on_success          += USERID
    log_on_failure          += USERID
    server                  = /usr/sbin/in.rlogind
    }
    關于telnet的設置如下
    # default: off
    # description: The telnet server serves telnet sessions; it uses # unencrypted username/password pairs for authentication.
    service telnet
    {
    disable = yes
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/sbin/in.telnetd
    log_on_failure += USERID
    }
    所有這些服務在安裝完系統之后都是默認為禁用的,要進行修改來打開這些服務。如要
    通過修改啟動telenet則就需要改disable = yes為disable = no。對于其他的服務的啟
    動的修改與之相同。若啟動這些服務則只需要簡單執行:
    #/etc/rc.d/init.d/xinetd restart
    或重起計算機就可以使所作的更改生效。
    C.在服務器節點編譯、安裝Fortran90編譯器
    先將Fortran90(我用的是Intel的)編譯器拷貝至/tmp下,然后用tar xvfz fortran90
    .tar.gzj解壓縮。運行
    ./install
    選擇你所要安裝的類型,如果你的機器是基于IA-32,就選擇1。如果你的機器是基于It
    anium(TM)-based system就選擇2。如果要停止安裝,就選擇X。選擇過之后安回車進入
    下一步,此時會要求你選擇 :
    1.      Intel(R) Fortran Complier for 32-bit Applications,Version 6.0 build 02031
    2Z
    2.      2.Linux Applicationdebugger for 32-bit Applications,Version 6.0 buid 2002
    0
    x.  Exit
    按順序選擇1,2 。最后選擇X 完成安裝并退出。在選擇完1之后會要求你看版權聲明,
    輸入Accept繼續安裝。默認的安裝路徑為/opt/intel,選擇默認路徑按Enter繼續。選2之
    后的情形與1相同。如果不注冊可以用90天。
    D.      在服務器節點編譯、安裝mpich 1.2.3
    將mpich 1.2.4:ftp://ftp.mcs.anl.gov/pub/mpi/mpich.tar.gz?截惖揭粋臨時目錄
    下,放在/tmp下了。用root用戶登錄進行編譯安裝。
    1. 對mpich的安裝進行預處理:
    首先,用tar xvfz mpich.tar.gz解壓。生成mpich-1.2.3目錄。切換到mpich-1.2.3目錄
    。運行預處理:
    ./configure --prefix=/usr/local/mpi        --對應于用rsh進行遠程登錄的系統
    ./configure --prefix=/usr/local/mpi -rsh=ssh     --對應于用ssh進行遠程登錄的
    系統
    這里我們通知編譯系統mpich的安裝位置為/usr/local/mpich,運行環境的遠程shell為
    rsh或ssh。
    2.編譯:
    make
    運行此命令后mpich軟件包會自動編譯形成MPI系統的函數庫,需要數分鐘的時間,根據
    不同的機器可以略有不同。
    3.安裝:
    make install
    運行此命令可以將MPI軟件包安裝到由./configure --prefix選項指定MPICH安裝目錄即
    /usr/local/mpi
    修改文件/usr/local/mpi/share/util/machines/machines.LINUX。如下:
    node1
    ndoe2
    ......
    ndoen
    這一步是通知mpich運行環境都有那些節點可供集群計算。每個節點都這樣輸入一遍。
    4.測試安裝是否正確
    在/usr/local/mpi/examples/basics下編譯cpi.c:
    make cpi
    用命令行:
    ../../bin/mpirun -np 2 cp
    運行。將會獲得如下信息。
    Processes 0 on node1
    Processes 1 on node2
    ……..………………..
    如果能正常運行即證明mpich軟件包安裝完全成功。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>