This file illustrates the installation, configuration and startup of the components in the initial SSS distribution on a RedHat Linux 7.2 system using both RPMs (where possible) and tarballs. This is an example only and may vary substantially for different site configurations. ################################################################################ # Initial Setup ################################################################################ # Create a user to manage the SSS resource management environment: [root] useradd sss [root] passwd sss [sss] mkdir ~/src [sss] cd ~/src # Copy the distro into ~sss/src [sss] tar -zxvf sssrma-0.1.tar.gz ################################################################################ # # OpenPBS # # You will need a resource manager. Install PBS or an alternative RM. # ################################################################################ # Installation via RPM: ======================= [sss] cd ~/src [root] rpm -Uvh OpenPBS_sss-2.3.15-2.i386.rpm # Installation via tarball: =========================== [sss] cd ~/src [sss] tar -zxvf OpenPBS_sss-2.3.15-2.tgz [sss] cd OpenPBS_sss-2.3.15-2/ [sss] ./configure --prefix=/usr/local/pbs [sss] sh addparam.sh x S [sss] make [root] make install # Configuration: ================ # Set the server hostname [root] hostname > /var/spool/PBS/server_name # Tell the mom where the server is so they can check in [root] cat >/var/spool/PBS/mom_priv/config </var/spool/PBS/server_priv/nodes </usr/local/maui/maui-private.cfg </var/lib/pgsql/data/postmaster.opts.default [postgres] echo "host all `hostname --ip-address` 255.255.255.255 trust" >>/var/lib/pgsql/data/pg_hba.conf [root] service postgresql start [postgres] createuser sss Shall the new user be allowed to create databases? y Shall the new user be allowed to create more new users? n # Install perl DBI and DBD::Pg if necessary perl -MCPAN -e shell cpan> install DBI cpan> install DBD::Pg cpan> quit # Installation via RPM: ======================= [sss] cd ~/src [root] rpm -Uvh qbank-2.10.5-1.i386.rpm # Installation via tarball: =========================== [sss] cd ~/src [sss] tar -zxvf qbank-2.10.5.tar.gz [sss] cd qbank-2.10.5 [sss] ./configure [sss] make [root] make install # Configuration: ================ [sss] export QBANK_HOME=/usr/local/qbank [sss] cd $QBANK_HOME [root] sbin/qbank_init What is your authentication key? sss What user do you want to be the primary qbank admin? sss Where do you want QBank log files to reside? /var/log/qbank What will be your QBank server host? sss What is the default MACHINE name? SSS What type of database will you use? Pg What host is your database running on? sss What is the name of your database? qbank [sss] echo "Replace_this_text_with_the_key" >etc/license_key # Edit the Maui Config File (if you are using the Maui Scheduler) [sss] vi /usr/local/maui/maui.cfg AMCFG[bank] TYPE=QBANK HOST=sss PORT=7111 DEFERJOBONFAILURE=TRUE # Startup: ========== [sss] sbin/qbankd [sss] createdb qbank [sss] bin/qbank create_tables # Create users, projects, allocations as necessary [sss] bin/qmkuser sss [sss] bin/qmkacct sss [sss] bin/qmkmember -a sss -u sss [sss] qdeposit -a sss -z 1000000 ############################################################################### # # SSS Front end # # Install sss_xml if you would like to use the SSS v1 protocol for your # communications with either PBS_sss or QBank. This requires a daemon # process (sss_pbs_svr or sss_qbank_svr) to act as a proxy receiving SSS # connections and converting them to/from direct API calls with PBS and QBank. # ################################################################################ # Installation via RPM: ======================= [root] rpm -Uvh sss_xml-1.0.1-1.i386.rpm # Installation via tarball: =========================== # Install gcc/g++ 3.0 or higher [sss] cd ~/src [sss] wget ftp://ftp.gnu.org/pub/gnu/gcc/gcc-3.2.1/gcc-3.2.1.tar.gz [sss] tar -zxvf gcc-3.2.1.tar.gz [sss] cd gcc-3.2.1 [sss] ./configure [sss] make [root] make install # Install xerces-c [sss] cd ~/src [sss] wget http://xml.apache.org/dist/xerces-c/stable/xerces-c-src_2_3_0.tar.gz [sss] tar -zxvf xerces-c-src_2_3_0.tar.gz [sss] cd xerces-c-src_2_3_0 [sss] export XERCESCROOT=/home/sss/src/xerces-c-src_2_3_0 [sss] cd $XERCESCROOT/src/xercesc [sss] autoconf [sss] ./runConfigure -plinux -cgcc -xg++ -minmem -nsocket -tnative -rpthread [sss] cd /home/sss/src/xerces-c-src_2_3_0/src/xercesc [sss] gmake # Install cipc [sss] cd ~/src [sss] tar -zxvf cipc-1.0.0.tar.gz [sss] cd cipc-1.0.0 [sss] ./configure [sss] make #[root] make install # Install reuse [sss] cd ~/src [sss] tar -zxvf reuse-1.0.1.tar.gz [sss] cd reuse-1.0.1 [sss] ./configure --cipc_dir=../cipc-1.0.0 [sss] make #[root] make install # Install sss_xml [sss] cd ~/src [sss] tar -zxvf sss_xml-1.0.2.tar.gz [sss] cd sss_xml-1.0.2 [sss] (cd ../qbank-2.10.5/src && g++ -g -c QBankAPI.cpp QBankQuery.cpp QBankRequest.cpp QBankResponse.cpp QBankRow.cpp QBankChecksum.cpp && ar rcs ../lib/libQBankAPI.a QBankAPI.o QBankQuery.o QBankResponse.o QBankChecksum.o QBankRequest.o QBankRow.o) [sss] ./configure --cipc_dir=../cipc-1.0.0 --reuse_dir=../reuse-1.0.1 --qbank_dir=../qbank-2.10.5 --gnu_lib_dir=/usr/local/lib --xerces_dir=../xerces-c-src_2_3_0 [sss] make [root] make install # Configuration: ================ # Modify the Maui Config File # If you want to use the SSS Resource Manager Interface: RMCFG[SSS] TYPE=SSS HOST=sss PORT=7865 RMCFG[SSS] SOCKETPROTOCOL=HTTP WIREPROTOCOL=XML VERSION=SSSRM0.2 # If you want to use the SSS Allocation Manager Interface: AMCFG[bank] TYPE=GOLD HOST=sss PORT=8865 DEFERJOBONFAILURE=TRUE AMCFG[bank] SOCKETPROTOCOL=HTTP WIREPROTOCOL=XML CHARGEPOLICY=DEBITALLWC # Startup: (assuming bash) ========== # Source the appropriate file to setup the environment [sss] . /usr/local/sss_xml/config/sss_xml-setup.sh # Add xerces to libpath if installed from tarball [sss] export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$XERCESCROOT/lib # To startup the SSS PBS front-end: [sss] /usr/local/sss_xml/bin/sss_pbs_svr& # To startup the SSS QBank front-end: [sss] /usr/local/sss_xml/bin/sss_qbank_svr&