安裝SGE的主要步驟。

做過視頻編碼的同事在做codec測試的時候都應該有過對PC機性能差的抱怨。其實即使PC測試機的性能非常的好,比如雙核 3G CPU 2G內存應該還是無法滿足codec的測試的。因爲codec測試運算量太大了。

    所以如何採用多臺電腦同時來完成這麼巨大的運算量呢,大家也許會說採用雲計算。充分利用所有閒置電腦協同合作正式SGE實現的功能。

    SGE的主機類型有:主控主機,管理主機,提交主機,執行主機。每臺主機允許兼有多種功能。操作最多的就是主控主機了。 下面看看主控主機的運行情況:

[root@sge-qmaster ~]# qstat -f
queuename                      qtype resv/used/tot. load_avg arch          states
---------------------------------------------------------------------------------
all.q@Brea                     BIP   0/1/1          0.01     lx24-x86      
   1232 0.55500 Wels_SVC_e root         r     02/05/2010 13:48:21     1        
---------------------------------------------------------------------------------
all.q@Carl                     BIP   0/0/1          -NA-     lx24-x86      au
---------------------------------------------------------------------------------
all.q@Dena                     BIP   0/1/2          0.12     lx24-x86      
   1230 0.55500 Wels_SVC_e root         r     02/05/2010 13:48:21     1        
---------------------------------------------------------------------------------
all.q@Eddy                     BIP   0/1/2          0.16     lx24-x86      
   1231 0.55500 Wels_SVC_e root         r     02/05/2010 13:48:21     1        
---------------------------------------------------------------------------------
all.q@Femi                     BIP   0/1/1          0.31     lx24-x86      
   1234 0.55500 Wels_SVC_e root         r     02/05/2010 13:48:21     1        
---------------------------------------------------------------------------------
all.q@Gary                     BIP   0/0/2          0.00     lx24-x86      
---------------------------------------------------------------------------------
all.q@High                     BIP   0/1/2          0.12     lx24-x86      
   1235 0.55500 Wels_SVC_e root         r     02/05/2010 13:48:21     1       

從 上面可以看到有5臺執行主機在同時完成一個任務。 r 表示running,正在運行。

下面我簡單介紹下如何安裝SGE. 過程還是有點複雜的。
1. 獲取SGE最新安裝包。 http://www.sun.com/software/sge/
一般下載兩個 包就可以了 sge-6_2u2_1-bin-linux24-i586.tar.gz  sge-6_2u2-common.tar.gz
找 一臺PC機作爲管理主機。 建立/opt/sge62u2_1/ 目錄, 把上面兩個包移動到該目錄上,最好採用二進制方式移動。 解壓這兩個包, tar -xzvf  *.tar.gz   解壓後生成兩個安裝文件: install_qmaster , install_execd。
2. 在主控主機上添加一個sgeadmin用戶, 注意所有的userID需要相同。useradd sgeadmin -g root -u 501 .
3. 在/etc/hosts 文件中添加如下內容:
[root@sge-qmaster ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
#127.0.0.1      localhost.localdomain   localhost
127.0.0.1       localhost0.localdomain  localhost0
10.224.174.11   sge-qmaster.webex.com   sge-qmaster
10.224.174.13   Carl
10.224.174.12   Brea
10.224.174.14   Dena
10.224.174.15   Eddy
10.224.174.16   Femi
10.224.174.17   Gary
10.224.174.18   High
注意每臺執行主機的/etc /hosts內容應該相同。
4. 主機名改成sge-qmaster, 其他的執行主機名分別改爲 Carl, Brea, Dena, Eddy, Femi, Gary, High. 當然名字可以取成其他的,但是每臺的/etc/hosts內容需要相同。 在/etc/sysconfig/network 中 修改主機名。
[root@sge-qmaster ~]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
#HOSTNAME=localhost.localdomain
HOSTNAME=sge-qmaster
[root@sge-qmaster ~]#

5. 因爲主控主機需要使用qsub提交任務以及分配任務。所有每臺主機的rsh,rlogin需要互通。 用來發送消息。 如何配置自己查資料吧。
[root@sge-qmaster ~]# rsh Brea
Last login: Fri Feb  5 20:36:30 from 10.224.174.144
[root@Brea ~]#

6. 配置sge的通信端口, 每臺主機都需要相同的通信端口。 在/etc/services中配置。
###SGE service
sge_qmaster 10536/tcp
sge_execd 10537/tcp

7. 修改環境變量, 在.bash_profile中添加

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/opt/sge62u2_1:/opt/sge62u2_1/bin/lx24-x86:/opt/SDK/bin:/opt/SDK
SGE_ROOT=/opt/sge62u2_1;export SGE_ROOT
SGE_CELL=SVC_SGE1;export SGE_CELL
SGE_QMASTER_PORT="10536";export SGE_QMASTER_PORT
SGE_EXECD_PORT="10537";export SGE_EXECD_PORT
JAVA_HOME=/opt/SDK;export JAVA_HOME
PATH=$PATH:$SGE_ROOT/bin
export PATH
unset USERNAME
~
8. 運行./install_qmaster 按照提示安裝。

過程比較繁瑣,安裝完成後可以提交下任務試試, qsub *.sge /  qsub *.sh 方式提交。 最好提交一個運行時間長點的,要不然一下就執行完了不好查詢。 提交任務後用 qstat -f 查看運行情況,如我上面所示的那樣有r的就說明已經可以使用的。 其他的自己慢慢研究吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章