100 likes | 305 Vues
RFT System Admin. William (Bill) Allcock Argonne National Laboratory. RFT Admin is mostly DB related. RFT uses the postgres database to store the state of the transfers. Other databases may or may not work right out of the box
E N D
RFT System Admin William (Bill) Allcock Argonne National Laboratory
RFT Admin is mostly DB related • RFT uses the postgres database to store the state of the transfers. • Other databases may or may not work right out of the box • Oracle has a problem since it considers SIZE to be a reserved word • We intend to make our SQL as generic as possible for the future • We are not going to cover installing postgres since that varies from system to system.
Use TCP • By default, postgres expects UDP connections, so we need to configure it to accept TCP. • You do this by adding “-i” on the postmaster (postgres daemon) command in the startup script. • /etc/init.d/postgresql or /var/lib/postgresql depending on your install. • they call it the postmaster, but the exe name is pg_ctl, go figure. • looks like this on Suse 9.1 personal: • pg_ctl start -s -w -p $H -l $LOGFILE -D $DATADIR -o "-i"
Set the security • edit /var/lib/pgsql/data/pg_hba.conf • append the following at the end of the file: • host rftDatabase "user name "ip address" 255.255.255.255 trust • name is the name you will tell RFT to use in the jndi file • “ip address” is the address where the service (container) is running • You can share a postgres installation, but if multiple containers are running, each should have a different database name. • start (or restart) postgres • /etc/init.d/postgresql [start | restart]
Create a database user • This is usually the globus user • su postgres (the postgres user is created automatically during installation) • createuser globus • if you get something like this: • psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"? • you either did not add “-i” or • you did not restart after the changes
create and configure the tables • As user globus (su globus) • the rest of the operations are done as user globus • Create the database • createdb rftDatabase • Populate the schema • psql -d rftDatabase -f $GLOBUS_LOCATION/share/globus_wsrf_rft/rft_schema.sql
Make sure RFT can find it… • edit • $GLOBUS_LOCATION/etc/globus_wsrf_rft/jndi-config.xml • Find the dbConfiguration section under ReliableFileTransferService <service> section. • verify that the connectionString and name of the database are correct (if the install is on the same machine as Globus it probably will be)
and can use it • verify that the username is the same as the user that owns/created the database • update the password if you wish
Last, but not least • There are two site adjustable configurations • backoff: minimum time to wait after a failure to retry • maxActiveAllowed: what is the maximum number of transfers that an RFT service can have active at one time. • currently we do not allow the site to limit the per request concurrent transfers.