网格环境配置 三 安装SGE
安装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,方法如下:
- 在所有机器上把SGE的安装包(一个common包和一个平台相关的包)解压到同名路径下,这个路径就是$SGE_ROOT;
- 在master主机上运行 install_qmaster,完成master主机上的安装;
- 在完成master主机的安装后,在master主机上做好一切配置(所有站点相关的配置文件都在$SGE_ROOT/$SGE_CELL/common目录下);
- 在master主机上把$SGE_ROOT/$SGE_CELL/common目录(在第3步完成以后,这个目录包含完整的配置文件)打包;
- 在每个执行机上,解压第4步创建的archive;
- 在每个执行机上,运行 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相关推荐
- 网格环境配置(三):安装SGE
安装 SGE 开始安装 SGE. vm1作为 sge的 master主机.用户账号和系统服务这些信息都通过 NIS服务器来统一管理. master主机和执行机通过 NFS服务共享 $SGE_ROOT. ...
- android 环境配置和安装, Android系统包说明,基本控件,常用代码,ADB 命令行,APK文件确解,小技艺,...
一. 环境配置和安装(Android2.2) 参考文章:这里 1.1 JDK 1.2 SDK 下载地址:http://dl.google.com/android ...
- linux下织梦cms安装环境配置文件,Mac本地环境配置以及安装织梦CMS,增加新的坑解决办法...
Mac上其实已经自带了Apache和PHP,只是默认关闭的.开启一下就行了. Apache配置 apache已经自带了,只需在"终端"输入命令开启下就行了. 开启apache ...
- wamp环境变量配置php,WAMP环境配置-PHP安装
我这次环境配置安装的是php-5.6.25版本! (最近我在反复安装PHP的时候出现了一个问题,httpd.conf加载php5apache2_4.dll出现错误,怎么修改都不行,此时我安装的是VC1 ...
- 【一生一芯】Chap.1 “一生一芯”实验环境配置| VMware安装Ubuntu20.04 | PA工程配置 | 解决llvm版本问题
[一生一芯]Chap.1 "一生一芯"实验环境配置| VMware安装Ubuntu20.04 | PA工程配置 | 解决llvm版本问题 0. 什么是PA? 1. 安装VMware ...
- java环境配置步骤_java环境配置及安装的详细步骤
java环境配置及安装的详细步骤 发布时间:2020-04-22 14:15:59 来源:亿速云 阅读:141 作者:小新 今天小编给大家分享的是java环境配置及安装的详细步骤,相信很多人都不太了解 ...
- Pytorch环境配置与安装(Anaconda、Pycharm、Jupyter)
目录 一. Pytorch环境配置与安装 1.1 安装Anaconda 1.2 创建Anaconda虚拟环境 1.3 安装Pytorch 二. Pycharm和Jupyter notebook的安装及 ...
- PyTorch 在 Windows 10 系统下的环境配置及安装
PyTorch 简介 PyTorch 是一个开源的 Python 机器学习库,基于 Torch,用于自然语言处理等应用程序. 相关链接: PyTorch 官方网站 PyTorch 的 Github 仓 ...
- Windows10下QT6(C++)+OpenCV4环境配置及安装
文章目录 1. 安装Qt 2. 安装Cmake 3. 下载并编译OpenCV4 4. Qt6配置OpenCV 5. 资源 参考博主文章 Windows10下QT6.0(C++)+OpenCV4环境配置 ...
最新文章
- 【译文】AppBarLayout的越界滚动行为
- js src 变量_Js基础学习笔记(一)
- D3.js 力导向图来处理拓扑图
- 张小龙向来痴,微信从此醉,复盘8年,2大初心驱动至今 | 2019实录
- ViT (Vision Transformer) ---- SimpleRNN + Attention
- 7-4 超速判断 (10 分)
- Android学习笔记(十二)——使用意图传递数据的几种方式
- (六)ModelSim 下载安装以及crack的注册
- 7月30日PMP考试注意事项
- 系统学习Spring之Spring in action(三)
- 双创项目_宫颈癌智能风险检测(4)
- 网站服务器被劫持,网站服务器被劫持了怎么修复
- Cisco WLC9800 CWA FlexConnect with ISE
- 如何通过UTON WALLET数字钱包创建和使用你的元宇宙身份
- PlatoFarm几大创新经济模型,给予当下元宇宙市场的启发
- PDN 电源分配网络设计步骤 PDN layout步骤
- Exchange Server 2010部署(一)部署Windows Server 2008 R2域控制器
- IME2_AHK输入法自动/智能切换 v1.05
- 常见步进电机驱动芯片
- 【沐风老师】为你推荐18个免费3dMAX插件和脚本