Centos6安装SGE以及集群配置
最近给实验室的服务器集群安装SGE,摸索了一天多,踩了好些坑,现在将其安装和配置过程记录下来,以免以后需要使用时又忘记了。
一、准备工作
1、关闭集群中所有节点的防火墙
#service iptables stop
#chkconfig iptables off
(centos7中命令稍有不同)
2、关闭所有节点中的selinux
#vi /etc/selinux/config 设置 SELINUX=disabled
3、设置节点的机器名
假设共有三个节点master、node1、node2,分别在三个节点上进行设置
# vi /etc/sysconfig/network 设置 HOSTNAME=节点计算机名称
4、设置hosts
在三个节点上均进行修改
#vi /etc/hosts 192.168.1.120 master.local master
192.168.1.130 node1.local node1
192.168.1.140 node2.local node2 第一列为各节点的IP,第二列是设置的节点的域名,第三列为节点机器名。看有些博主的博文,第二列没有,有一些二三列的顺序不同,本人没有测试过结果是否有影响。
二、NIS安装和配置
NIS是一种用户管理服务,可以在主控节点上进行用户和密码管理,其他的节点有用户登录的需求时,才到这台服务器上请求相关的帐号密码等使用者资料,而不需要在所有节点上都设置相同的用户和密码,极大方便了用户的管理。在使用SGE进行任务管理时,用户的任务可能会分配到其他节点运行,该节点如果不能识别该用户,任务就无法运行,所以必须使用NIS
master节点安装与配置
1、master安装必须软件
#yum install -y rpcbind yp-tools ypserv
2、master节点设置NIS域名
#nisdomainname life.com
#vi /etc/rc.local 添加 nisdomainname life.com # vi /etc/sysconfig/network 添加 NISDOMAIN=life.com
3、master节点文件配置
#vi /etc/sysconfig/network 添加 YPSERV_ARGS="-p 1011" #vi /etc/sysconfig/yppasswdd 添加 YPPASSWDD_ARGS="--port 1012" #vi /etc/ypserv.conf
替换为:
dns: no
files: 30
xfr_check_port: yes
* : * : shadow.byname : port
* : * : passwd.adjunct.byname : port
4、master节点启动服务并设置开机启动
#service rpcbind start
#service ypserv start
#service yppasswdd start
#chkconfig rpcbind on
#chkconfig ypserv on
#chkconfig yppasswdd on
5、master节点创建库
#/usr/lib64/yp/ypinit -m
6、master更新NIS账户和资料库
#make -C /var/yp
其余节点安装与配置
1、软件安装和NIS域名设置,与master节点的安装的步骤1和2完全相同
2、文件配置
#cat /etc/nsswitch.conf 设置:
passwd: files nis
shadow: files nis
group: files nis
hosts: files nis dns #cat /etc/sysconfig/authconfig 设置 USENIS=yes #cat /etc/pam.d/system-auth 设置 password sufficient pam_unix.so sha512 shadow nis nullok try_first_pass use_authtok #cat /etc/yp.conf 设置 domain life.com(这里为NIS域名) server 192.168.1.120(master节点的IP)
3、启动NIS并设置开机启动
#service rpcbind start
#service ypbind start
#chkconfig rpcbind on
#chkconfig ypbind on
4、测试与master节点能否正常通讯
#yptest
5、回到master节点进行NIS账户同步
#/usr/lib64/yp/ypinit -m
#make -C /var/yp
#make -C /var/yp passwd
三、NFS安装
NSF是一种文件共享服务,安装NFS是为了方便SGE在不同节点的安装,有了NFS后就不需要在每一个节点都下载一个SGE
NFS服务端
1、安装软件
#yum -y install nfs-utils
2、启动NFS服务并设置开机启动
#service nfs start
#chkconfig nfs on
3、文件配置,设置共享目录
#vi /etc/exports
/SGE 192.168.1.120/24(insecure,rw,root_squash,async)
4、重启rpcbind和NFS
#service rpcbind restart
#service nfs restart
NFS客户端
1、安装软件,启动服务并设置开机启动,与上述的服务端安装步骤1和2完全相同
2、新建目录 /SGE(最好与服务端的目录完全相同,更加方便)、进行挂载
#mkdir /SGE
#mount -t nfs 192.168.1.160:/SGE /SGE
如果挂载时出现该目录忙的错误信息,说明你进入了该目录,需要退出去才能挂载
3、查看是否挂载成功
#mount |grep /SGE
4、设置开机自动挂载
#vi /etc/fstab
添加
192.168.1.160:/SGE /SGE nfs defaults 0 0
四、SGE安装和配置
master节点配置
1、安装必须的软件
#yum -y install epel-release jemalloc-devel openssl-devel ncurses-devel pam-devel libXmu-devel hwloc-devel hwloc hwloc-libs java-devel javacc ant-junit libdb-devel motif-devel csh ksh xterm db4-utils perl-XML-Simple perl-Env xorg-x11-fonts-ISO8859-1-100dpi xorg-x11-fonts-ISO8859-1-75dpi
2、下载SGE并解压
#wget http://arc.liv.ac.uk/downloads/SGE/releases/8.1.9/sge-8.1.9.tar.gz
#tar zxvf sge-8.1.9.tar.gz
3、安装SGE
#cd sge-8.1.9/source/
#sh scripts/bootstrap.sh && ./aimk && ./aimk -man
#export SGE_ROOT=/SGE/gridengine && mkdir $SGE_ROOT
#./scripts/distinst -local -allall -libs -noexit
4、创建sgeadmin用户和组,并设置权限
#groupadd -g 490 sgeadmin
#useradd -u 495 -g 490 -r -m -c "SGE Admin" sgeadmin
#chown -R sgeadmin.sgeadmin /BiO/gridengine
5、配置sge_qmaster
#cd $SGE_ROOT
#./install_qmaster
之后一直回车即可
#cp /SGE/gridengine/default/common/settings.sh /etc/profile.d/
#source /etc/profile.d/settings.sh
6、开启任务调度信息收集
#vi /SGE/gridengine/default/common/sched_configuration
设置:
schedd_job_info true
7、启动SGE管理
#/etc/init.d/sgemaster.xxx restart
xxx为安装过程中设置的名称
8、将master节点加入到运行节点中
#cd $SGE_ROOT
#./install_execd
一直回车即可
#/etc/init.d/sgeexecd.xxx start
9、添加node1和node2节点
#qconf -ah node1
#qconf -ah node2
运行节点配置,以node1为例
1、创建sgeadmin用户和组
#groupadd -g 490 sgeadmin
#useradd -u 495 -g 490 -r -m -c "SGE Admin" sgeadmin
2、配置
#export SGE_ROOT=/SGE/gridengine
#cd $SGE_ROOT
#./install_execd
一直回车即可
#cp /SGE/gridengine/default/common/settings.sh /etc/profile.d/
#source /etc/profile.d/settings.sh
3、开启运行节点
# /etc/init.d/sgeexecd.xxx start
问题:(1)如果配置sge管理节点时报PID错误,说明你多次配置了sge管理节点,进程被占用了,需要将该进程先结束掉,再进行管理节点的配置
(2)配置运行节点时遇到sge_shepherd won’t run – dynamic library missing?的情况。
#cd gridengine/bin/lx-amd64
#./sge_shepherd
此时会提示具体的问题,本人遇到问题的是缺少libhwloc.o.5库,安装即可,安装完全后再进行运行节点配置
#yum install hwloc
#cd $SGE_ROOT
#./install_execd
Centos6安装SGE以及集群配置的更多相关文章
- Centos6 安装 Redis 和集群配置
Redis安装 先确认gcc和tcl已经安装 sudo yum install gcc-c++ sudo yum install tcl 解压, 编译和安装 .tar.gz /usr/src/ cd ...
- Apache+tomcat+mod_jk+centos6.2负载均衡集群配置--转载
转载地址:http://blog.163.com/chenhui_java/blog/static/17267249420128101191860/ 注: 由于长期受转载毒害,所以本人日志均是原创:其 ...
- 安装rabbitmq以及集群配置
前言: (一些有用没用的唠叨,反正看了也不少肉,跳过也没啥) 情况是这样的:虚拟机.CentOS 6.5.免编译包安装rabbitmq集群,可不用连外网. 我原计划是安装在虚拟机上wyt1/wyt2/ ...
- centos6.5下redis集群配置(多机多节点)
可参考官网文档:redis集群配置 需要注意的是,集群中的每个节点都会涉及到两个端口,一个是用于处理客户端操作的(如下介绍到的6379/6380),另一个是10000+{监听端口},用于集群各个节点间 ...
- redis linux安装与简单集群配置
由于项目原因最近在使用redis,把redis的安装以及配置记录下来方便查看. 1.下载 地址http://download.redis.io/releases/ 需要哪个版本就使用那个版本 2.解 ...
- 使用kubeoperator安装的k8s集群配置Ingress规则有关说明
单独创建一个nginx 在 Deployment 里创建一个nginx工作负载,镜像用:nginx:alpine,并配置service为ClusterIP,然后添加Ingress规则 本地主机host ...
- CentOS6安装各种大数据软件 第四章:Hadoop分布式集群配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Redis+PHP扩展的安装和Redis集群的配置 与 PHP负载均衡开发方案
以前有想过用 Memcache 实现M/S架构的负载均衡方案,直到听说了 Redis 后才发现它做得更好.发了几天时间研究了一下 Redis ,感觉真的很不错,特整理一下! 以下操作都是在 SUSE ...
- rabibtMQ安装及集群配置-linux
安装RabbitMQ RabbitMQ是流行的开源消息队列系统,用erlang语言开发,故首先需要安装erlang依赖及erlang. 安装erlang依赖的基本环境,通过yum方式进行安装: yum ...
随机推荐
- linux raid技术
一.概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意.是为了提高文件在磁盘上的读写速度而研究出来的. ...
- 微信等webview中无法修改document.title的情况
// hack在微信等webview中无法修改document.title的情况 var $iframe = $('<iframe src="https://www.bbtree.co ...
- angularjs file upload插件使用总结
之前由于项目需要,决定使用angularjs做前端开发,在前两个项目中都有文件上传的功能,因为是刚接触angularjs,所以对一些模块和模块间的依赖不是很了解.都是由其他大神搭好框架,我只做些简单的 ...
- Eclipse_常用技巧_01_自动添加类注释和方法注释
一.步骤 路径A=windows-->preference-->Java-->Code Style-->Code Templates-->Comments 自动添加注释一 ...
- Linux-Rsync命令参数详解
在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来.rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进 ...
- C++如何拒绝编译器自动生成的函数
每一个class,编译器都会自动生成四个特殊成员函数: destructor(析构函数) default constructor(默认构造函数) copy constructor(copy构造函数) ...
- freeMarker(十六)——FAQ
学习笔记,选自freeMarker中文文档,译自 Email: ddekany at users.sourceforge.net 1.JSP 和 FreeMarker ? 我们比较 FreeMarke ...
- CH6802 車的放置 和 CH6B24 Place the Robots
6802 車的放置 0x60「图论」例题 描述 给定一个N行M列的棋盘,已知某些格子禁止放置.问棋盘上最多能放多少个不能互相攻击的車.車放在格子里,攻击范围与中国象棋的"車"一致. ...
- OpenStack、CloudStack、Eucalyptus和vCloud Director四大主流云平台怎么选?
软件产品开发公司Altoros Systems的IT基础设施设计师Vadim Truksha在美国<网络世界>上发表一篇文章,详细对比了CloudStack.Eucalyptus.vClo ...
- unittest ,ddt数据驱动,读取文件中数据,多个参数时的处理
1. test.yaml中的数据 这里的属性是list 2.创建用例 3,在yaml中创建数据,创建list数据,list中再创建dict数据,这样就可以读取dict中的多个参数的数据了