安装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的就说明已经可以使用的。 其他的自己慢慢研究吧。

你可能感兴趣的:(测试技术)