Interoperation between Globus Toolkit versions

Since version 4.2.0 of the Globus Toolkit (GT), grid infrastructure administrators are posed with a dilemma whether or not to upgrade. The problem comes from the fact that versions 4.0.x and 4.2.x of the GT are incompatible, meaning that clients of one version cannot access servers of the other and vice-versa.

GridWay can interface both pre Web Services and Web Services versions of the Globus Toolkit for quite a while now, but it is not clear how to make GridWay work with the two available 4.x.x versions. If possible, this will enable the use of GridWay to encapsulate both versions and thus offer a common point of entry to both containers. Presumably, this will aid in making a smooth transition between Globus Toolkit versions.

Here is a recipe that enables GridWay to use Middleware Access Drivers (MADs) compiled for both versions of the GT, which need to be compiled and installed (not necessarily running) in the GridWay server.

  1. GridWay needs to be compiled (./configure && make) against one of the available GT versions, lets say the GT4.0.x (make sure GLOBUS_LOCATION points to the GT4.0.x install).
  2. Get hold of the generated jars for the EM MAD and the IM MAD, there is no need to issue the “make install” command, just grab
    • src/im_mad/gw_im_mad_ws.jar
    • src/em_mad/gw_em_mad_ws.jar

    and rename them to reflect the GT version, something like

    • gw_im_mad_ws.4.0.4.jar
    • gw_em_mad_ws.4.0.4.jar
  3. Change the GLOBUS_LOCATION to the GT4.2.x install and recompile gridway against it. Now you can go the whole way (./configure && make && make install).
  4. Copy the two previously generated jars to the new gridway install lib folder ($GW_LOCATIONM/lib)
  5. Copy both EM and IM MAD wrappers, changing the name accordingly:
    • cp $GW_LOCATION/bin/gw_im_mad_mds4_thr $GW_LOCATION/bin/gw_im_mad_mds4_thr_4.0.4
    • cp $GW_LOCATION/bin/gw_em_mad_ws $GW_LOCATION/bin/gw_em_mad_ws_4.0.4
  6. Edit the newly copied wrappers and insert the following two lines at the beginning, right after the shebang
    • unset CLASSPATH
    • export GLOBUS_LOCATION=<path-to-the-GT4.0.4-install>

    Also, change the two references to gw_em_mad_ws.jar and gw_im_mad_ws.jar to the renamed versions (in this case, gw_em_mad_ws.4.0.4.jar and gw_im_mad_ws.4.0.4.jar respectively)
    Remember that when running GridWay, GLOBUS_LOCATION should now point to GT4.2.0 in this case, since now GridWay 4.0.4 MADs know where to find the GT4.0.4 install.

  7. Now that everything is set up, the last step is to configure GridWay to access each resources with the appropriate MAD. TM_MAD can be the same for both GT4.0.x and GT4.2.x, since gridftp is compatible across these GT versions. So, in this case:
    for GT4.0 hosts 

    • IM_MAD = mds4_42:gw_im_mad_mds4_thr_42:-s <GT4.0.x hostname>:gridftp:ws_42
    • EM_MAD = ws_42:gw_em_mad_ws_42::rsl2

    for GT4.2 hosts

    • IM_MAD = mds4:gw_im_mad_mds4_thr:-s <GT4.2.x hostname>:gridftp:ws
    • EM_MAD = ws:gw_em_mad_ws::rsl2

And that should do the trick. If you bump into any problems, write us a line.

Tino Vazquez

Leave a Reply

Your email address will not be published. Required fields are marked *

+ 51 = 53