[openstack-dev] Proposal of nova-hyper driver

John Garbutt john at johngarbutt.com
Mon Jun 22 09:10:24 UTC 2015


On 22 June 2015 at 09:18, Sahid Orentino Ferdjaoui
<sahid.ferdjaoui at redhat.com> wrote:
> On Sun, Jun 21, 2015 at 07:18:10PM +0300, Joe Gordon wrote:
>> On Fri, Jun 19, 2015 at 12:55 PM, Peng Zhao <peng at hyper.sh> wrote:
>>
>> >    Hi, all,
>> >
>> > I would like to propose nova-hyper driver:
>> > https://blueprints.launchpad.net/nova/+spec/nova-hyper.
>> >
>> >    - What is Hyper?
>> >    Put simply, Hyper is a hypervisor-agnostic Docker runtime. It is
>> >    similar to Intel’s ClearContainer, allowing to run a Docker image with any
>> >    hypervisor.
>> >
>> >    - Why Hyper driver?
>> >    Given its hypervisor nature, Hyper makes it easy to integrate with
>> >    OpenStack ecosystem, e.g. Nova, Cinder, Neutron
>> >
>> >    - How to implement?
>> >    Similar to nova-docker driver. Hyper has a daemon “hyperd” running on
>> >    each physical box. hyperd exposed a set of REST APIs. Integrating Nova with
>> >    the APIs would do the job.

For clarity, we are yet to accept the nova-docker driver into the Nova
project, due to various concerns about its potential future direction.
Hopefully we should get a more final answer on that soon.

>> >    - Roadmap
>> >    Integrate with Magnum & Ironic.
>> >
>> >
>> This sounds like a better fit for something on top of Nova such as  Magnum
>> then as a  Nova driver.

+1

On the surface, it feels like a possible Magnum driver.
Although I am far from certain that its an exact match.
But I think that would be a better starting point than Nova.

>> Nova only supports things that look like 'VMs'. That includes bare metal,
>> and containers, but it only includes a subset of container features.

+1

In your blueprint you mention:
"The difference between LXC and VM makes the driver hard to maintain a
unified model in Nova."

To be clear Nova has no intention of providing a unified model, in
part due to the truth behind your statement above. We provide things
that look like "servers". Please see:
http://docs.openstack.org/developer/nova/project_scope.html#containers

I would recommending talking the container subgroup, in one of their
meetings, about how best to integrate with OpenStack:
https://wiki.openstack.org/wiki/Meetings/Containers

>> Looking at the hyper CLI [0], there are many commands that nova would not
>> suppprt, such as:
>>
>> * The pod notion
>> * exec
>> * pull
>
> Then I guess you need to see if Hyper can implement mandatory features
> for Nova [1], [2].
>
> [1] http://docs.openstack.org/developer/nova/support-matrix.html
> [2] https://wiki.openstack.org/wiki/HypervisorSupportMatrix

We have no intention of expanding the scope of the Nova API to include
container operation. And the reverse is also true, we would want to
see an intention to support all the important existing APIs before
inclusion, and proving that be having tempest tests reliably passing.

Many thanks,
John



More information about the OpenStack-dev mailing list