安装SGE
开始安装SGE。vm1作为sge的master主机。用户账号和系统服务这些信息都通过NIS服务器来统一管理。master主机和执行机通过NFS服务共享$SGE_ROOT。sge_qmaster服务的端口号为6444/tcp,sge_execd的端口号为6445/tcp。没有shadow主机。采用classicspooling。
其中master主机和所有的exec主机共享$SGE_ROOT,这是最容易管理、测试、调试的方法。sge网站上的一篇文章(链接:http://gridengine.sunsource.net/howto/nfsreduce.html)总共给了四种方案,摘录如下:

    Configuration     Description     Advantage     Disadvantage
    default     executables, configuration files, spool directories: all    shared     simple to install
easy to upgrade
easy to debug
    potentially significant NFS traffic
    local spool directories     executables, configuration files:    shared.
    spool directories: local to each compute host
    simple to install
    easy to upgrade
    significant reduction in NFS traffic
    less convenient to debug (must go to individual host to see    execd messages file)
    local executable files     configuration files: shared
    executables, spool directories: local to each compute host
    near-elimination of NFS traffic (NOTE: consequences especially    seen when running massively parallel jobs across many nodes)     less convenient to install and    upgrade (must modify files on every host)
    less convenient to debug
    local configuration files     executables, configuration files, spool directories: all    local to each compute host     elimination of NFS requirement     less convenient to install and    upgrade
    less convenient to debug
    less convenient to change some    configuration parameters (must modify files on every host)
    loss of shadow master functionality; partial loss of qacct    functionality

上面第四种,localconfigurationfiles的方式,完全不需要NFS。这篇文章随后介绍了如何用这种“完全不需要NFS”的方式安装SGE,方法如下:

  1. 在所有机器上把SGE的安装包(一个common包和一个平台相关的包)解压到同名路径下,这个路径就是$SGE_ROOT;
  2. 在master主机上运行 install_qmaster,完成master主机上的安装;
  3. 在完成master主机的安装后,在master主机上做好一切配置(所有站点相关的配置文件都在$SGE_ROOT/$SGE_CELL/common目录下);
  4. 在master主机上把$SGE_ROOT/$SGE_CELL/common目录(在第3步完成以后,这个目录包含完整的配置文件)打包;
  5. 在每个执行机上,解压第4步创建的archive;
  6. 在每个执行机上,运行 install_execd完成执行机的安装,安装过程会自动从解压的目录中读取配置文件。

在每台机器上都设置SGE_ROOT=/opt/sge,在vm1上创建sgeadmin用户,修改/etc/services文件,加入下面两行:
sge_qmaster 6444/tcp
sge_execd 6445/tcp
然后,/usr/lib/yp/ypinit-m重新构建NIS数据库。
[root@vm1 sge]# tar zxvf /software/sge-6.1u5-common.tar.gz
[root@vm1 sge]# tar xvf /software/sge-6.1u5-bin-lx24-x86.tar.gz
[root@vm1 sge]# chown -R sgeadmin:sgeadmin $SGE_ROOT
[root@vm1 sge]# util/setfileperm.sh $SGE_ROOT
注:因为安装时出现“不能创建default目录“的错误,所以先把$SGE_ROOT的所有者改为sgeadmin,然后运行util/setfileperm.sh脚本设置文件权限。
[root@vm1 sge]# ./install_qmaster
一路回车就好。
[root@vm1 sge]# . default/common/settings.sh
[root@vm1 sge]# ps ax | grep sge
 5016 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_qmaster
 5044 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_schedd
安装执行机:
[root@vm1 sge]# qconf -sh
vm1
[root@vm1 sge]# ./install_execd
一路回车。
[root@vm1 sge]# ps ax | grep sge
 5016 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_qmaster
 5044 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_schedd
 5444 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_execd
在vm2,vm3上安装执行机。
首先导出$SGE_ROOT。修改vm1上的/etc/exports:
/home * (rw,sync)
/opt/sge * (rw,sync)
重启nfs服务:
[root@vm1 sge]# service nfs restart
[root@vm1 sge]# qconf -ah vm2
vm2 added to administrative host list
[root@vm1 sge]# qconf -as vm2
vm2 added to submit host list
在vm2上:
[root@vm2 root]# echo $SGE_ROOT
/opt/sge
[root@vm2 root]# mount -t nfs vm1:/opt/sge /opt/sge
[root@vm2 root]# cd $SGE_ROOT
中途出现错误:
The current hostname is resolved asfollows:

Hostname: vm2
Aliases:  localhost.localdomainlocalhost
Host Address(es): 127.0.0.1

It is not supported for a Grid Engineinstallation that the local hostname
contains the hostname "localhost"and/or the IP address "127.0.x.x" of the
loopback interface.
于是,把vm2上的/etc/nsswitch.conf中的hosts:files nis dns改成hosts: nis filesdns,问题解决。
但是安装之后用ps查看并没有在vm2上看到sge_execd进程,在/tmp下找到错误信息:
[root@vm2 sge]# vim /tmp/execd_messages.2684
错误提示是不能创建目录vm2,于是:
[root@vm2 sge]# cd default/spool/
[root@vm2 spool]# ls
qmaster  spooldb  vm1
[root@vm2 spool]# mkdir vm2
mkdir: cannot create directory `vm2': Permission denied
看来是NFS的问题。查看NFS文档,发现NFS服务器上/etc/exports中的权限设置有这么一个选项:no_all_squash,这个选项表示不要改变向NFS服务器发送请求的用户的映射。因为$SGE_ROOT是所有机器的公共目录,并且希望它在任何系统上的任何用户眼里都没有差别。所以用上了这个选项。这样,vm1上的/etc/exports文件如下:
/home * (rw,sync)
/opt/sge * (rw,sync,no_all_squash)
在vm1上重启nfs,在vm2上再安装install_execd,这次成功。
[root@vm2 sge]# ps ax | grep sge
 3447 ?        S      0:00 /opt/sge/bin/lx24-x86/sge_execd
 3499 pts/0    S      0:00 grep sge
在vm3上:
[root@vm3 root]# mkdir -p $SGE_ROOT
[root@vm3 root]# mount -t nfs vm1:/opt/sge $SGE_ROOT
[root@vm3 root]# cd $SGE_ROOT

[root@vm1 sge]# qconf -ah vm3
vm3 added to administrative host list
[root@vm1 sge]# qconf -as vm3
vm3 added to submit host list

但是在vm3上安装也出现了不能创建vm3目录的错误。这说明在NFS服务器上加的那个no_all_squash选项没有任何作用。为了验证又以root@vm2在$SGE_ROOT的default/spool中创建目录,仍然出现Permissiondenied错误,说明在vm2上成功不是依靠那个no_all_squash选项。那么vm2上为什么会成功的呢?奇怪的是,在vm3上失败一次以后再次安装,居然就成功了,给人感觉这是一个时间相关的问题,猜想可能与NFS服务器上那个sync选项有关,安装时创建目录没有及时响应导致超时错误。无论如何,问题误打误撞解决了,也不再细究了。

在vm3上把vm1导出的/home目录mount上去,提交一个作业测试一下。
先修改vm1上的/etc/exports文件,使得/home导出时也带上no_all_squash参数。
修改一下队列的相关参数:
[root@vm1 sge]# qconf -sql
all.q
[root@vm1 sge]# qconf -mq all.q
把其中的slots一行改成:
slots                 1,[vm1=1],[vm2=2],[vm3=2]
用qstat -f看一下:
[root@vm1 sge]# qstat -f
queuename                      qtype used/tot. load_avg arch         states
----------------------------------------------------------------------------
all.q@vm1                      BIP   0/1       0.00     lx24-x86    
----------------------------------------------------------------------------
all.q@vm2                      BIP   0/2       0.00     lx24-x86    
----------------------------------------------------------------------------
all.q@vm3                      BIP   0/2       0.00     lx24-x86    
另外把shell从以前的/bin/csh改成/bin/bash。
在vm3上切换到sgeadmin用户,因为作业执行结果会放到每个执行机的当前用户的HOME目录中,而vm1上的/root并没有导出,如果用root提交,则结果会分散到每个执行机中。
这是在vm1上用root用户提交10个作业用qstat-f查看的用户截图:
[root@vm1 sge]# qstat -f
queuename                      qtype used/tot. load_avg arch         states
----------------------------------------------------------------------------
all.q@vm1                      BIP   1/1       0.00     lx24-x86    
      1 0.55500 simple.sh  root         r     11/26/2009 20:12:22    1       
----------------------------------------------------------------------------
all.q@vm2                      BIP   2/2       0.00     lx24-x86    
      2 0.55500 simple.sh  root         r     11/26/2009 20:12:22    1       
      5 0.55500 simple.sh  root         r     11/26/2009 20:12:22    1       
----------------------------------------------------------------------------
all.q@vm3                      BIP   2/2       0.00     lx24-x86    
      3 0.55500 simple.sh  root         r     11/26/2009 20:12:22    1       
      4 0.55500 simple.sh  root         r     11/26/2009 20:12:22    1

############################################################################
 - PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS -PENDING JOBS
############################################################################
      6 0.55500 simple.sh  root         qw    11/26/2009 20:12:17    1       
      7 0.55500 simple.sh  root         qw    11/26/2009 20:12:18    1       
      8 0.55500 simple.sh  root         qw    11/26/2009 20:12:19    1       
      9 0.55500 simple.sh  root         qw    11/26/2009 20:12:19    1       
     10 0.55500 simple.sh  root         qw    11/26/2009 20:12:20    1       
[root@vm1 root]# ls
anaconda-ks.cfg  install.log.syslog  simple.sh.e6  simple.sh.o6
install.log      simple.sh.e1        simple.sh.o1
看到,在作业执行完成后,只有作业1和作业6的结果在vm1上。
这是在vm3上以sgeadmin用户身份提交10个作业的状态:
[sgeadmin@vm3 sge]$ bin/lx24-x86/qstat -f
queuename                      qtype used/tot. load_avg arch         states
----------------------------------------------------------------------------
all.q@vm1                      BIP   1/1       0.00     lx24-x86    
     11 0.55500 Sleeper    sgeadmin     r     11/26/2009 20:15:22    1       
----------------------------------------------------------------------------
all.q@vm2                      BIP   2/2       0.00     lx24-x86    
     12 0.55500 Sleeper    sgeadmin     r     11/26/2009 20:15:22    1       
     14 0.55500 Sleeper    sgeadmin     r     11/26/2009 20:15:22    1       
----------------------------------------------------------------------------
all.q@vm3                      BIP   2/2       0.02     lx24-x86    
     13 0.55500 Sleeper    sgeadmin     r     11/26/2009 20:15:22    1       
     15 0.55500 Sleeper    sgeadmin     t     11/26/2009 20:15:22    1

############################################################################
 - PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS -PENDING JOBS
############################################################################
     16 0.55500 Sleeper    sgeadmin     qw    11/26/2009 20:15:14    1       
     17 0.55500 Sleeper    sgeadmin     qw    11/26/2009 20:15:14    1       
     18 0.55500 Sleeper    sgeadmin     qw    11/26/2009 20:15:15    1       
     19 0.55500 Sleeper    sgeadmin     qw    11/26/2009 20:15:15    1       
     20 0.55500 Sleeper    sgeadmin     qw    11/26/2009 20:15:16    1       
执行完以后:
[sgeadmin@vm3 sgeadmin]$ ls
Sleeper.e11  Sleeper.e14  Sleeper.e17  Sleeper.e20  Sleeper.o13 Sleeper.o16  Sleeper.o19
Sleeper.e12  Sleeper.e15  Sleeper.e18  Sleeper.o11  Sleeper.o14 Sleeper.o17  Sleeper.o20
Sleeper.e13  Sleeper.e16  Sleeper.e19  Sleeper.o12  Sleeper.o15 Sleeper.o18

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

网格环境配置 三 安装SGE相关推荐

  1. 网格环境配置(三):安装SGE

    安装 SGE 开始安装 SGE. vm1作为 sge的 master主机.用户账号和系统服务这些信息都通过 NIS服务器来统一管理. master主机和执行机通过 NFS服务共享 $SGE_ROOT. ...

  2. android 环境配置和安装, Android系统包说明,基本控件,常用代码,ADB 命令行,APK文件确解,小技艺,...

    一.             环境配置和安装(Android2.2) 参考文章:这里 1.1     JDK 1.2     SDK 下载地址:http://dl.google.com/android ...

  3. linux下织梦cms安装环境配置文件,Mac本地环境配置以及安装织梦CMS,增加新的坑解决办法...

    Mac上其实已经自带了Apache和PHP,只是默认关闭的.开启一下就行了. Apache配置 apache已经自带了,只需在"终端"输入命令开启下就行了. ​​​开启apache ...

  4. wamp环境变量配置php,WAMP环境配置-PHP安装

    我这次环境配置安装的是php-5.6.25版本! (最近我在反复安装PHP的时候出现了一个问题,httpd.conf加载php5apache2_4.dll出现错误,怎么修改都不行,此时我安装的是VC1 ...

  5. 【一生一芯】Chap.1 “一生一芯”实验环境配置| VMware安装Ubuntu20.04 | PA工程配置 | 解决llvm版本问题

    [一生一芯]Chap.1 "一生一芯"实验环境配置| VMware安装Ubuntu20.04 | PA工程配置 | 解决llvm版本问题 0. 什么是PA? 1. 安装VMware ...

  6. java环境配置步骤_java环境配置及安装的详细步骤

    java环境配置及安装的详细步骤 发布时间:2020-04-22 14:15:59 来源:亿速云 阅读:141 作者:小新 今天小编给大家分享的是java环境配置及安装的详细步骤,相信很多人都不太了解 ...

  7. Pytorch环境配置与安装(Anaconda、Pycharm、Jupyter)

    目录 一. Pytorch环境配置与安装 1.1 安装Anaconda 1.2 创建Anaconda虚拟环境 1.3 安装Pytorch 二. Pycharm和Jupyter notebook的安装及 ...

  8. PyTorch 在 Windows 10 系统下的环境配置及安装

    PyTorch 简介 PyTorch 是一个开源的 Python 机器学习库,基于 Torch,用于自然语言处理等应用程序. 相关链接: PyTorch 官方网站 PyTorch 的 Github 仓 ...

  9. Windows10下QT6(C++)+OpenCV4环境配置及安装

    文章目录 1. 安装Qt 2. 安装Cmake 3. 下载并编译OpenCV4 4. Qt6配置OpenCV 5. 资源 参考博主文章 Windows10下QT6.0(C++)+OpenCV4环境配置 ...

最新文章

  1. R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置图例位置、移除图例)实战
  2. Vue.js 渲染函数 JSX
  3. 基于阿里云镜像源使用kubeadm安装k8s单master节点集群(v1.17.3)
  4. apache的es的原理_ElasticSearch原理
  5. Service Fabric下删除实例并注销应用
  6. ping不通自己的ip地址_如何批量Ping N个IP地址,掌握一个命令让你节省N小时,让老板给你加鸡腿!...
  7. 7个开放式的前端面试题
  8. matlab2c使用c++实现matlab函数系列教程- poly函数
  9. Hadoop2.2.0中HDFS的高可用性实现原理
  10. Python爬虫教程-22-lxml-etree和xpath配合使用
  11. 基于Javaweb的机房预约管理系统
  12. C# 随机生成名字,电话,图像
  13. SQL 查询 skip locked的使用
  14. h5页面生成图片分享到微信js_H5网页实现微信分享功能
  15. 高琪飞机项目飞机爆炸图片_爆炸式的工作机会和多项目同步
  16. 【毕业设计】 单片机自动写字机器人设计与实现 - 物联网 嵌入式 stm32
  17. word一键生成ppt 分页_PPT插入word自动分页
  18. 打怪游戏 勇者打恶龙1.6(1.7)
  19. 湖南省首届逻辑推理大赛(中南大学)
  20. matlab电流可逆斩波电路,电流可逆斩波电路.PPT

热门文章

  1. CPU与GPU计算能力比较
  2. Java网络爬虫抓取新浪微博个人微博记录
  3. Docker部署Jenkins服务
  4. java将uuid转换成大写,python生成大写32位uuid代码
  5. Linux进程管理之“四大名捕”
  6. 顶级的 18 款开源的低代码开发平台,经典收藏
  7. dpdk发送RST报文(一)—— 构建RST包
  8. Ubuntu 安装rpm文件
  9. nvenc vs x264 对比(2)
  10. 人工智能入门教材,我来推荐