2 messages in com.xensource.lists.xen-devel[Xen-devel] Modifying config file dur...
FromSent OnAttachments
Kaushik Bhandankar27 Oct 2007 17:40 
Eric Van Hensbergen27 Oct 2007 18:01 
Subject:[Xen-devel] Modifying config file during live VM migration
From:Kaushik Bhandankar (kaus@cc.gatech.edu)
Date:10/27/2007 05:40:06 PM
List:com.xensource.lists.xen-devel

Hello

I am trying to establish a 9P communication channel between hypervisors (vmm) such that when a guest VM sitting on VMM 1 gets live-migrated to VMM2, it can still access the VMM1's local disk using the 9P channel between VMM 1 and VMM 2.

For the time being, I am looking at changing the configuration file for the guest VM.

Initially, when the guest VM is sitting on VMM 1, its IDE disk is specified as

disk = [ 'file:/tmp/hd.img,ioemu:hda,w' ]

upon live-migration from VMM1 to VMM2, I would instead want the ide disk to be specified instead as

disk = [ 'remote:/tmp/hd.img,ioemu:hda,w' ]

So that when the IDE disk controller gets a read/write request, it knows that the IDE disk is remotely located and hence can send these requests to VMM1 using the 9P channel (Rest of the config file stays the same).

Can somebody tell me how the config file of guest VM can be changed during "live" VM migration process and where exactly (the code path) will this config file will be parsed on VMM2?

Initial look seems to tell me that tools/python/xen/xend/XenDomainInfo.py:create() seems to handle the creation of domains whereas tools/ioemu/xenstore.c:xenstore_parse_domain_config() seems to be parsing the domain config file but I am not really sure about where all the 'parameters' of a config file get stored and how they are passed to the target VMM during live VM migration.

-Kaushik