cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Funs Kessen <>
Subject Re: Oracle VM (OVM) Server support
Date Wed, 23 Apr 2014 13:00:01 GMT
Hi Donal and others,

I've been working part timeon the code for literally a bit over a month,
based on snippets I had. The need for the OVM3 integration was initially
something that had quite some pressure behind it when the discussion
started, but unfortunately evaporated.
The initial work I did started on the shoulders of the old Ovm plugin, but
changed partially, so the outline of the framework used there is still 
visible in the ResourceBase, Discoverer, Helper, Guru and Fencer although
modified. The rest is not quite the same. I do have to say that some *cough*
refactoring *cough* is in order. 

On Tue, Apr 22, 2014 at 09:24:02PM +0000, Donal Lafferty wrote:
> I took this approach with the Hyper-V plugin.  Based on my experience, I think the following
advice is of great value.  Could you please pass it on to Funs.
Thanks for reaching out, it was the thing I needed to push me over the edge
and get it out there :)
> First, take Rajesh up on his request for information, because he can help with the systemVM.
 Without a system VM, you can only run a QuickCloud deployment, which lacks networking and
secondary storage flexibility.  Also, rolling a system VM requires quite different expertise
than operating the hypervisor itself.  I don't think it's useful to learn both when there
are a few system VM experts already kicking around.
The Console Proxy, SSVM and RouterVM all work and run once the template has 
been converted to RAW, which is the only format Ovm3 supports. RAW is only
supported due to lack of the tapdisk kernel module, the tools are there
but the module is not.
Under the hood Ovm3 is xen with a python agent combined with xm and a
couple of shared object libs. The agent is conceptually a pluggable 

> Be clear on how you'll support the console VM.  It would be preferable to give someone
a chance to amend an existing console VM than have to write one from scratch.
The console VM works :).

> Make it clear what instructions you'll support.  A base plugin need only create/start/stop/delete,
but maybe your users are expecting a richer features set.  There seem to be four or so potential
users on this mailing list.  Why not ask them what they need.
That is a good point indeed, for now I've kept our environement partially in 
the back of my mind.
* NFS for Primary and Secondary Storage
* VLANs for VIFs on bridges (no OpenVswitch yet)
* Native Pooling and loose CS clusters (native clusters are on the list)
* VM migrations
The on the github page,, has more
detail. I'm very open to suggestions on what should be in there, some
things are however "complicated" due to the limitations of what is
bundeled with dom0 and is natively supported by Oracle VM Manager. Some form
of keeping in line with regard to not modifying dom0 would be required for
the use case I have in mind.

> Get a sanity check on the agent architecture you're going to use.  Will we have to install
a remote agent?  Will it speak CloudStack message bus or take HTTP requests?  It's worth checking
with the community that there won't be any breaking changes to this architecture when it comes
time to integrate.  The same applies to storage.  In fact, the evolving storage model was
an issue faced by the Hyper-V plugin's storage architecture.
A long time ago I spoke to a couple of people on the mailinglist and my idea
was to do an as native as possible implementation, meaning that I was going
to levarage the Ovm3 agent, which talks XML-RPC, as if Oracle VM Manager was
talking to it. The plugin uses XML-RPC as much as possible, but for some of
the missing bits now ssh is used, which should switch to either a
shadow-agent, or augmenting the native Ovm3 agent.
In the future the native agent might be enriched so I do feel much for
 keeping it as native as possible, also with respect to the initial use case.

> Finally, crowd source your test cases.  Obviously, you want to have a test case for every
instruction you're implemented and some functional tests that cover a command sequence typical
of a GUI operation.  What's more interesting is whether you can collaborate with existing
testers to speed up development time and increase reliability.  In fact, I've some nice examples
I'd like to pass on.
At the moment I have a build street that rebuilds either the module or CS
completely depending, and can blow away the existing cloud, clean the
hypervisors and roll out the entire thing from scratch. It will wait till
the systemVMs are deployed and deploy three VMs on it.
A sheer lack of unit tests and just a few sanity checks are in but it needs
a bucket load more. The GUI has been tested a couple of times before I 
decided to integrate the bits needed into the API.

> To summarise, try to collaborate.  There's a lot of expertise beyond operating the hypervisor
that you can safely crowd source.
That is good advice, somehow I find it hard to put the code out there as I
feel I've not given the code the attention it deserves.

The code is on github: for those interested.



> > -----Original Message-----
> > From: Daan Hoogland []
> > Sent: 22 April 2014 20:45
> > To: dev
> > Cc:
> > Subject: Re: Oracle VM (OVM) Server support
> > 
> > He is implementing an ovm3 plugin + core patch. no support for the old ovm.
> > When He is done he'll publish and I'll be happy to integrate and steal the
> > credits;)
> > 
> > On Tue, Apr 22, 2014 at 7:25 PM, Rajesh Battala <>
> > wrote:
> > > Nice..
> > > Can you share more details about the support of OVM?
> > >
> > > Thanks
> > > Rajesh Battala
> > >
> > > -----Original Message-----
> > > From: Daan Hoogland []
> > > Sent: Tuesday, April 22, 2014 9:52 PM
> > > To: dev
> > > Subject: Re: Oracle VM (OVM) Server support
> > >
> > > A schuberg philis colleague is working on it. Funs.
> > >
> > > mobile bilingual spell checker used
> > > Op 22 apr. 2014 18:18 schreef "Chip Childers" <>:
> > >
> > >> On Tue, Apr 22, 2014 at 03:38:51PM +0000, Paul Angus wrote:
> > >> > About a year ago there was some discussion around updating the
> > >> > Oracle VM
> > >> Server support to the then current version.  The topic stopped and I
> > >> can't find anything in Jira for it.
> > >> >
> > >> > Is the support still being worked on?
> > >> >
> > >> > Regards
> > >> >
> > >> > Paul Angus
> > >> > Senior Consultant / Cloud Architect
> > >>
> > >> Not AFAIK
> > >>
> > 
> > 
> > 
> > --
> > Daan

View raw message