RLS Server Installation
RLS is part of globus. Install RLS in the same way globus was installed. For RPM based systems I recommend using the RPMs available form the NorduGrid repository. This can be achieved by using the command
You should also install the globus_rls_server_setup package. Unfortunately, the latest globus_rls_server_setup RPM (globus_rls_server_setup-4.4-0.7.xxx) from the testing repostitory have spurious RPM dependencies (see NorduGrids bugzilla #994). You can however install it manually with --nodeps without harm.
If you install the RLS server from sources, make sure that you apply the patch to allow storing longer filenames in the server. This is essential for ATLAS, since some of their PFNs are longer than 250 characters.
To avoid dragging in unnecessary globus dependencies the RLS server is preferably built against the unixODBC included in the linux distribution.
Database backend
RLS can be deployed using various database backends: MySQL, postgreSQL, SQLite, etc.
I have only experience using MySQL.
MySQL 3.x
Don't use MySQL 3.x, you will get lots of errors in the log file about unsupported rollbacks, and the reference counters in the database will get severely out of synch.
MySQL 4.x
Make sure you are using a version where bug 6536 has been fixed. Otherwise you will get into trouble using the mysql-odbc-connector.
If you are using the patch to allow longer filenames you shouldn't use MySQL 4.x, since it doesn't allow varchar(500) fields.
Also if ATLAS's localreplica LRC mimicking view is needed you can't use MySQL 4.x since it doesn't support defining views.
MySQL 5.x
Same issue regarding bug 6536 applies for this version.
Configuring RLS
The globus_rls_server_setup package installs a template in /opt/globus/etc/globus-rls-server.conf. It is possible to run more than one RLS on the same host if they use different ports.
if your distribution includes a mysql-odbc-connector package built against a MySQL 4.x client you can use it even if you are using a MySQL 5.x server as your database backend.
A sample configuration file:
The corresponding /opt/globus/var/odbc.ini would then be something like this:
Configuring MySQL
You have to increase the number of allowed connections to the MySQL server from the default to at least the number of allowed connections to the RLS server. Add something like this to the server's my.cnf file (the format varies slightly between versions of MySQL):
The globus_rls_server_setup package installs a set of SQL scripts to create the databases if you are starting a new server. If you are restoring or migrating an existing service you import/migrate the database from backup or the old server instead.