Yes, it is a hypervisor plugin. While the extension method may be simple,
the impedance mismatch between the CloudStack virtual model and the
hypervisor API is what causes the most pain.
E.g., CloudStack will hand a VirtualMachineTO object (consisting of
cpu/mem/nic) and then you have to use the hypervisor API to construct it.
For XS, it involves calling a bunch of XS APIs to 'construct' the VM. For
KVM, it involves constructing an XML file and passing it to libvirt, etc.
I'd say stuff like snapshots, stuff that involves a lot of firewall
configuration tends to be harder.

On 8/14/13 3:28 PM, "Ian Duffy" <i...@ianduffy.ie> wrote:

>Hi Guys,
>
>Just asking this off the top of my head with no research done at all.
>Its a pure "Just out of interest" query.
>
>Would it be a difficult task to add an interface to Cloudstack in
>order to enable it to communicate with some REST based API that goes
>back to some hypervisor?
>
>Can anybody point in the direction of code/files I should look at to
>get an idea of the amount of work involved? Is the plugin model in
>such a state where such functionality could be abstracted out as a
>plugin? With my previous experiences of dealing with the cloudstack
>code base I recall seeing a hypervisor folder in the plugins folder,
>is it just as simple as extending a few classes in there?
>
>Thanks,
>
>Ian

Reply via email to