Skip to content. | Skip to navigation

Personal tools

Navigation

You are here: Home / Wiki / Unelvin

Unelvin

Converting your site to Pubsub only

Converting your site to Pubsub only

A common problem at sites that upgrade is the incompatibility between Elvin and pubsub. The most visible symptom of this incompatibility is this error message in various log files on your nodes:

event_notification_check_hmac: MAC mismatch!
notify_callback: bad hmac

This indicates that your boss/ops software is configured for pubsub only (ELVIN_COMPAT in the defs file), but your nodes are configured for elvin compatibility. This will not work; everything must be configured for Elvin compatibility, or nothing can be.

Aside: We strongly encourage all sites using Elvin to drop it. We no longer support it. Pubsub is our homegrown implementation that does not have the strict licensing restrictions of Elvin.

Assuming you have set ELVIN_COMPAT=0 in your defs file, and that you have reconfigured/rebuilt/reinstalled the software on boss and ops, the next thing you have to do is fix up your images.

  1. allocate a node with the image you want to de-elvin.
  2. Grab the non-elvincompat pubsub at:

http://www.emulab.net/downloads/pubsub-0.8.tar.gz

  1. unpack, build and install it:
    gmake client
    sudo gmake install-client
    
  2. make sure there are no traces of elvin remaining by running unelvin.pl from your Emulab source tree.
    utils/unelvin.pl
    
  3. rebuild and reinstall the Emulab client side code according to the instructions in part B of the node update page.
  4. reboot once to make sure that the event agents can talk to ops
  5. if all is well, recreate the image