Appendix K:  Migrating from Maui 3.2

Overview

   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 alongside of 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 maui.cfg, maui.log and maui.ck.

 

Migrating from Maui to Moab

  1. Install Moab Workload Manager  (Installation Instructions)
  2. Copy your maui.cfg 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

 

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
    1. You can also start your moab.cfg 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 moab.cfg add the parameter, SERVERMODE=MONITOR
    1. 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 table below displays these changes:

File

Maui

Moab

executable

maui

moab

logs

maui.log

moab.log

config 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 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:

  • Admin reservations, if any, will need to be recreated
  • Processed credential and scheduler statistics (displayed by showstats) will be lost
  • Admin job system priority configured by the setspri command and QoS assignments configured by the setqos command, if any, will be lost

Verify Config File Compatibility

The command 'mdiag -C' will perform diagnostics on your new config 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 are found below:

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