Installation of GT3 on Damian's PC.

dinnerattentionΔιαχείριση Δεδομένων

28 Νοε 2012 (πριν από 4 χρόνια και 4 μήνες)

334 εμφανίσεις

Installation of Globus GT3


Page
1


INSTALLATION OF GLOBUS GT3

Author: Damian Igbe

Date: 19/01/2004

Version: v1.0


This manual describes the experience of installing Globus GT3 on a machine
running Red Hat Linux 9. The Linux installation was performed using the
"Database" software selectio
n option so that the required postgresql software
is automatically installed. If this option is not enabled, you will need to install
the postgresql database after the Linux installations.



During Linux installation, you can specify to create two user acc
ounts; the
‘globus’ user and a user
-
self. In my own case, the user
-
self is called ‘igbedo’.

The installation was performed with user ‘globus’ so that the GT3 installation
tree was owned by user ‘globus’.



Do also make sure that the
/etc/hosts

file and th
e
/etc/sysconfig/network

files
are properly configured to reflect your hostname and host map. These are
necessary to obtain the security certificates.



Pre
-
installation download


Before the installation, a number of different software components were
down
loaded from various sources. It’s a good idea to create a directory called
/tmp/download

to place all the downloaded files.



1.

The Apache and Jakarta components can be obtained from the
http://www.apache.org/


2.

T
he Java SDK can be obtained from the web site
http://java.sun.com/webapps/download/Display?BundleId=8229&Refer
er=http://java.su
n.com/j2se/1.4.1/download.html


3.

The gt3
-
src
-
installer.tar.gz files can be obtained from the
http://www.globus.org/


4.

The junit3.8.1.zip file can be obtained from
http://www.
junit.org



All the files are placed in
/tmp/download



The installation, step
-
by
-

step


The steps followed to install everything proceeded as follows:



1.

Log into the machine as “igbedo”



2.

su to root, cd to /tmp/download, and run the j2sdk binary fi
le to unpack
its embedded RPM:



$ su
-

$ cd /tmp/download

$ sh j2sdk
-
1_4_1_03
-
linux
-
i586
-
rpm.bin



Installation of Globus GT3


Page
2

3.

Install the j2sdk RPM



$ rpm
-
ivh j2sdk
-
1_4_1_03
-
fcs
-
linux
-
i586.rpm



4.

Unpack Apache Ant, Jakarta Tomcat (optional), and Junit into
/usr/local
:



$ cd

/tmp/download

$ tar zxvf /tmp/download/apache
-
ant
-
1.5.4
-
bin.tar.gz

$ tar zxvf /tmp/download/jakarta
-
tomcat
-
4.1.29.tar.gz

$ unzip /tmp/download/junit3.8.1.zip



5.

Set up a symbolic link for junit



$ cd apache
-
ant
-
1.5.4/lib

$ ln
-
s /usr/local/junit3.8.1/j
unit3.8.1.jar



6.

Add the following lines into
/etc/profile



export JAVA_HOME=/usr/java/j2sdk1.4.1_03

export ANT_HOME=/usr/local/apache
-
ant
-
1.5.4

export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH



7.

Edit the postgresql start script at
/etc/init.d/postgres
ql

to include the

o

-
I’ flag from something like



su
-
l postgres
-
s /bin/sh
-
c "/usr/bin/pg_ctl
-
D $PGDATA
-
p /usr/bin/postmaster
-
o '
-
p
${PGPORT}' start > /dev/null 2>&1" < /dev/null



to



su
-
l postgres
-
s /bin/sh
-
c "/usr/bin/pg_ctl
-
D $PGDATA
-
p /usr/bin/postmaster
-
o '
-
i
-
p
${PGPORT}' start > /dev/null 2>&1" < /dev/null



8.

Start postgresql. Also, verify that postmaster is running with the "
-
i"
flag, to allow TCP/IP socket connections



$ /etc/init.d/postgresql start

$ ps
-
ef | grep postmast
er



9.

Set postgresql to run on startup



$ chkconfig
--
list postgresql

$ chkconfig postgresql on

$ chkconfig
--
list postgresql



10.

Add a "globus" user to the system. In this installation, the "globus" user
will install and own the Globus code. Set a
password for the “globus”
user (This is only necessary if user “globus” was not created during
installation)



$ adduser globus

$ passwd globus



Installation of Globus GT3


Page
3

11.

Create a directory called
/usr/local/globus

and change the permissions
on
/usr/local/globus

so that the g
lobus user can write to it.



$ chown globus.globus /usr/local/globus


12.

Start a shell as the globus user



13.

As the globus user, unpack the GT3 installer code into
/tmp/download/



$ cd /tmp/download

$ tar zxvf /tmp/download/gt3.0.2
-
source
-
installer.t
ar.gz



14.

Install GT3 to
/usr/local/globus.




$ cd /tmp/download/gt3.0.2
-
source
-
installer

$ ./install
-
gt3 /usr/local/globus |& tee install.log



15.

Make a backup of the
/usr/local/globus

directory tree



$ cd /usr/local/globus

$ tar zcvf /tmp/usr
-
local
-
globus.tar.gz .



16.

As root, add the following lines to
/etc/profile



GLOBUS_LOCATION=/usr/local/globus

export GLOBUS_LOCATION

. $GLOBUS_LOCATION/etc/globus
-
user
-
env.sh



17.

At this point, reboot the machine to be safe



Post
-
installation configuratio
ns


18.

Install the launcher scripts using ant



$ cd $GLOBUS_LOCATION

$ ant setup



19.

Bring up a shell as root, and set up a symbolic link for xalan.jar


$ mkdir /usr/java/j2sdk1.4.1_03/jre/lib/endorsed

$ cd /usr/java/j2sdk1.4.1_03/jre/lib/endorsed

$ ln

-
s /usr/local/globus/endorsed/xalan.jar



20.

As root, run the security setup by running
setup
-
gsi
. This will setup
your initial environment


$ $GLOBUS_LOCATION/setup/globus/setup
-
gsi
-
default



Accept the default responses for the base DN on user and hos
t certificates.



Hit ‘y’ to continue



Hit ‘q’ to save values



21.

As the "igbedo" user, request a certificate

Installation of Globus GT3


Page
4



$ grid
-
cert
-
request

cn “Damian Igbe”




22.

As igbedo, save the returned (signed) certificate from CA to the .globus
directory:



23.

As root, r
equest a host certificate



$ grid
-
cert
-
request
-
service host
-
host thoth.cpc.wmin.ac.uk



24.

As root, save the signed host certificate from globus to
/etc/grid
-
security/hostcert.pem



Note:

for steps 21
-

24, the full instructions can be found in

http://www.cpc.wmin.ac.uk/ogsitestbed/certificates.html



25.

As root, su to the postgres user, and enable globus as a Postgresql
user



$ su
-

postgres

$ createuser globus

Shall the new user

be allowed to create databases? (y/n) y

Shall the new user be allowed to create more new users? (y/n) y

CREATE USER

$ exit



26.

As globus, run install
-
gt3
-
mmjfs



$ /tmp/download/gt3.0.2
-
source
-
installer/install
-
gt3
-
mmjfs /usr/local/globus



27.

As root,

run $GLOBUS_LOCATION/bin/setperms.sh



$ $GLOBUS_LOCATION/bin/setperms.sh



28.

As globus, create the Job Manager database



$ createdb jobManagerDb

$ psql
-
d jobManagerDb
-
f
$GLOBUS_LOCATION/etc/databaseSchema/jm_database_schema.sql



29.

As root, su to
the postgres user, and edit
/
var/lib/pgsql/data/pg_hba.conf

to have the following lines.



# TYPE DATABASE IP_ADDRESS MASK AUTH_TYPE AUTH_ARGUMENT

local all trust

host all 127.0.
0.1 255.255.255.255 trust

host all 192.168.1.5 255.255.255.0 trust



30.

Obtain the user cert subject line and add it to the grid
-
mapfile


$ su


igbedo

$ grid
-
cert
-
info

subject

$ su


$ grid
-
mapfile
-
add
-
entry

dn
[output from
above]

-
n
[local map name]

Installation of Globus GT3


Page
5





31.

Also as root, create a file called
/etc/grid
-
security/grim
-
port
-
type.xml
, as
follows



<authorized_port_types>

<port_type
username="benkhoo">http://www.globus.org/namespaces/managed_job/managed_job
/ManagedJobPortType</por
t_type>

</authorized_port_types>



Testing: So, How is everything, mate?


32.

As the “globus” user, start the built
-
in service container by running ant



$ cd $GLOBUS_LOCATION

$ . setenv.sh

$ globus
-
start
-
container

p 8080



Wait until the output stabilize
s before moving on



33.

As “igbedo”, obtain a proxy certificate using grid
-
proxy
-
init



34.

Change directory to $GLOBUS_LOCATION, and source environment
variables via setenv.sh



$ cd $GLOBUS_LOCATION

$ . setenv.sh



35.

Finally, submit a test job via man
aged
-
job
-
globusrun



$ managed
-
job
-
globusrun
-
factory
http://127.0.0.1:8080/ogsa/services/base/gram/MasterForkManagedJobFactoryService
-
file etc/test.xml

WAITING FOR JOB TO FINISH

========== Status Notification ==========

Job Status: Done

=================
========================

DESTROYING SERVICE

SERVICE DESTROYED



36.

Set up Grid FTP



Make sure that the following is in the
/etc/services

file

gsiftp

2811/tcp

# Globus FTP

Create the following as file /etc/xinetd.d/gsiftp



service gsiftp

{


instances


=
1000


socket_type


= stream


wait



= no


user



= root


env



= LD_LIBRARY_PATH=/usr/local/globus/lib


server



= /usr/local/globus/sbin/in.ftpd

Installation of Globus GT3


Page
6


server_args



=
-
l
-
a
-
G /usr/local/globus


log_on_success

+= DURATION USERID


log_on_failure



+= USERID


nice




= 10


disable



= no

}



Restart the xinetd service



$ service xinetd restart





NOTE

-

-

You can stop the container by using
globus
-
stop
-
container


-

-

To launch command line jobs, you can look at
$GLOUB
S_LOCATION/etc/test.xml and modify the XML file to suit
whatever you want to run.



37. If you get this far, many congratulations. We would like to know how long
it takes you to arrive here



.