Appendix K: Migrating from 3.2

Overview

This guide is intended to help facilitate migrating from Maui to Moab. If you do not have Moab yet, you can download a free evaluation version. At a high level, migrating from Maui 3.2 to Moab involves minimal effort. In fact, Moab fully supports all Maui parameters and commands. Migration can consist of nothing more than renaming maui.cfg to moab.cfg and launching Moab using the moab command. With this migration, the biggest single issue is becoming aware of all the new facilities and capabilities available within Moab. Beyond this, migration consists of a few minor issues that may require attention such as some statistics and priorities.

Another approach of migrating from Maui to Moab is to configure Moab in Monitor mode and run it beside Maui. Maui will continue to perform the scheduling and control workload. Moab will simply monitor the cluster environment using the policies configured in moab.cfg. Moab will not have the ability to affect workload, providing a safe and risk-free environment to evaluate Moab without affecting your production environment. You can also have Moab capture resource and workload trace files and allow Moab to simulate what it would have done if it controlled workload. When you feel comfortable with and want to run Moab live on your cluster, all you need to do is change the mode to NORMAL, stop Maui, and restart Moab. Current jobs will remain running and Moab will take over control of scheduling.

As with any migration, we suggest that you back up important files such as the following: maui.cfg, maui.log and maui.ck.

Migrating from Maui to Moab

  1. Install Moab Workload Manager. (Installation Instructions)
  2. Copy your maui.cfg file to the MOABHOMEDIR (/opt/moab) and rename it moab.cfg.
  3. Stop Maui.
  4. Start Moab.
  5. If Applicable: Re-apply those configurations found in the Statistics and Checkpointing section that need adjustment after migration as well as any parameters in moab.cfg that point to a Maui file like maui.log.

Running Maui and Moab Side-By-Side

  1. Install Moab Workload Manager on your cluster. (Installation steps will differ slightly from a typical installation.)
    1. Run ./configure.
    2. Run make.
    3. You will need to set your MOABHOMEDIR environment variable to the location where you built Moab by typing export MOABHOMDIR=[make directory].
  2. To have Moab use all the same policies as Maui, copy maui.cfg to the MOABHOMEDIR and rename it moab.cfg.
    • You can also start your moab.cfg file from scratch. Just use the moab.cfg already in the MOABHOMEDIR.
  3. Make sure that the port in moab.cfg is different than the port used in maui.cfg.
  4. In the moab.cfg file, add the parameter, SERVERMODE=MONITOR.
    • If you used the moab.cfg from scratch, on the SCHEDCFG line add MODE=MONITOR.
  5. You will need to either put the Moab commands in your environment path (located in MOABHOMEDIR/bin) or run the commands from their location if you still want to use the Maui commands in your environment path.
  6. Run Moab Workload Manager using the moab command located in MOABHOMEDIR/bin.

Other Notes

The following are minor differences between Maui and Moab and changes you may need to make:

File Naming

Moab uses slightly different naming than Maui. The following table displays these changes:

File Maui Moab
executable maui moab
logs maui.log moab.log
configuration file maui.cfg moab.cfg
Statistics and Checkpointing

Moab supports Maui version 3.2 or higher workload traces (statistics) allowing it to process historical statistics based on these traces as well as generate simulations based on them. No changes are required to use these statistics. See the Simulation Specific Configuration documentation for more information on trace files.

Moab does not support the Maui 3.2 checkpointing format. Because of this, state information checkpointed under Maui will not be available at the time of the migration. The loss of this information will have the following impact:

Verify Configuration File Compatibility

The command mdiag -C will perform diagnostics on your new configuration file and may prove helpful in identifying any issues.

Environment Variables

Scheduler environment variables are supported under Moab with obvious naming changes. Sample environment variables follow:

Maui Moab
MAUIHOMEDIR MOABHOMEDIR
MAUIDEBUG MOABDEBUG
MAUICRASHVARIBALE MOABCRASHVARIABLE
MAUIENABLELOGBUFFERING MOABENABLELOGBUFFERING
MAUIRECOVERYACTION MOABRECOVERYACTION
MAUI-COMMANDS-PATH MOAB-COMMANDS-PATH
MAUIENABLELOGBUFFERING MOABENABLELOGBUFFERING

Copyright © 2012 Adaptive Computing Enterprises, Inc.®