How to play Kemari?

What is required for running Kemari?

How to install?

  1. Install i386 Linux.
  2. Download Xen source code.
    $ hg clone -r 18430 http://xenbits.xensource.com/xen-3.3-testing.hg
    
  3. Download Xen-version Linux source code.
    $ hg clone -r 707 http://xenbits.xensource.com/linux-2.6.18-xen.hg
    
  4. Download Kemari patches.
    $ wget http://www.osrg.net/kemari/download/kemari-v1-xen-20081120.patch
    $ wget http://www.osrg.net/kemari/download/kemari-v1-linux-20081120.patch
    
  5. Apply the patches.
    $ cd xen-3.3-testing.hg
    $ patch -p1 < /where/you/put/patch/kemari-v1-xen-20081120.patch
    $ cd ..
    $ cd linux-2.6.18-xen.hg
    $ patch -p1 < /where/you/put/patch/kemari-v1-linux-20081120.patch
    $ cd ..
    
  6. Build (the same as Xen itself).
    $ cd xen-3.3-testing.hg
    $ make dist
    # sudo make install
    
  7. Set up grub.conf and so on (the same as Xen itself).
  8. Create HVM guest domain. Disk image should be in a shared storage.
  9. Install PV driver to the HVM guest domain.
    (Caution: you MUST use PV driver from xen-3.3-testing. SHOULD NOT use package not based on 3.3-testing.)

How to use?

  1. Migrate your HVM domain with Kemari option.
    Almost same as normal migration command. Only the difference is adding '--kemari'.
    # xm migrate <domid> <destination hostname> --kemari &
    
    e.g.)
    # xm migrate 1 host01.example.jp --kemari &
    
    Since the command line will wait until the domain die, you need to execute 'xm migrate ... --kemari' in the background, or using GNU screen.
  2. Wait, wait, and wait ... until your domain gets unpaused.
    For checking whether your domain is unpaused or not, using xentop might be a good idea.
    # xentop
    
    You will see status change from ----p- to --b--- or -----r.
  3. Find out the process ID of xc_kemari_restore at the destination host.
    destination# ps ax| grep xc_kemari_restore
    
  4. Ready to Die.
  5. Let's push the reset button of source machine, and send signal HUP to xc_kemari_restore at the destination machine.
    # kill_source_machine.sh
    destination# kill -HUP <PID of xc_kemari_restore>
    
  6. Then, you will see the guest domain running on destination machine :)

Test Environment


Return to the top page.

Copyright © 2008, Nippon Telegraph and Telephone Corporation.