settingsLogin | Registersettings

[openstack-dev] [new][nimble] New project: Nimble

0 votes

hi all,

We are pleased to introduce Nimble, a new OpenStack project which aims to
provide bare metal computing management.
Compared with Nova, it's more bare metal specific and with more advanced
features that VM users don't need, it's not
bounded by Nova's API.

As we know, Ironic API should never be exposed to end users, users have to
talk to Nova to request a bare metal compute
instance even if you're only providing bare metal, even if it's only
internally, you still have to talk to nova, Ironic doesn't have
a concept of users, tenants, and quotas. Nimble wants to decouple
virtualization and baremetal technologies by breaking
baremetal computing management into its own set of application program
interfaces.

Not only does Nimble provide pre-set configuration servers, but it also
wants to support RSD(Rack Scale Design) which makes
it possible to dynamically compose physical resouces.

For more information, including architecture, use cases, etc., are
described on the project wiki [0].
And please feel free to browse our source code [1][2].

If you're intreasted in Nimble, please join!

Thanks,

[0] https://wiki.openstack.org/wiki/Nimble
[1] https://github.com/openstack/nimble
[2] https://github.com/openstack/python-nimbleclient


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
asked Nov 25, 2016 in openstack-dev by Zhenguo_Niu (2,400 points)   1 4
retagged Jan 26, 2017 by admin

7 Responses

0 votes

On Fri, Nov 25, 2016 at 05:41:28PM +0800, Zhenguo Niu wrote:
hi all,

We are pleased to introduce Nimble, a new OpenStack project which aims to
provide bare metal computing management.

Has this name been cleared for use? Nimble is the name of a company, so
like Quantum, this seems to me to be a short lived name.


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 25, 2016 by Sean_McGinnis (11,820 points)   2 3 5
0 votes

On 11/25/2016 04:41 AM, Zhenguo Niu wrote:
hi all,

We are pleased to introduce Nimble, a new OpenStack project which aims
to provide bare metal computing management.
Compared with Nova, it's more bare metal specific and with more advanced
features that VM users don't need, it's not
bounded by Nova's API.

As we know, Ironic API should never be exposed to end users, users have
to talk to Nova to request a bare metal compute
instance even if you're only providing bare metal, even if it's only
internally, you still have to talk to nova, Ironic doesn't have
a concept of users, tenants, and quotas. Nimble wants to decouple
virtualization and baremetal technologies by breaking
baremetal computing management into its own set of application program
interfaces.

Not only does Nimble provide pre-set configuration servers, but it also
wants to support RSD(Rack Scale Design) which makes
it possible to dynamically compose physical resouces.

For more information, including architecture, use cases, etc., are
described on the project wiki [0].
And please feel free to browse our source code [1][2].

I'm a little confused why you are choosing to create a new RESTful API
service instead of working to adapt Ironic's existing API, or
alternately, working with the Nova team to add features that you feel
were/are necessary for baremetal management.

What were the primary reasons you decided not to work with either (or
both) of the Ironic or Nova communities?

-jay


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Jay_Pipes (59,760 points)   3 10 14
0 votes

hi Jay,

Ironic's existing API is admin only, which should not be exposed to end
users, it is best thought of as a bare metal hypervisor API.
And Ironic lacks the ability of scheduling, quotas management and
multi-tenancy support, it heavily depends on Nova to expose API to
end users.

Nova focuses on VM management and provides virtualization specific
features, although the ironic driver makes it possible to manage
bare metal via Nova's API, it doesn't work well. It's hard to add bare
metal specific features, as Nova API is for all hypervisors,
especially virtualization hypervisors. And in order to work with Nova, we
have to adapt the way to manage VMs, for example, we only
have one compute host for all bare metal nodes, so all capabilities based
on compute hosts can't apply to bare metals like availability
zones, host aggregates, etc.

Like containers and virutalizations, bare metal is also a different
technology, different resource. I think they don't work better
together within a same nova compute and bounded by Nova unified API. So we
decide to create a new project which decouples the two
technologies by separating baremetal management into it's own set of API.

Another reason is we also want to support RSD bared servers. Then composing
resouces work will be done in Nimble, Ironic only need
to add RedFish driver to support this type of servers.

Thanks,

On Mon, Nov 28, 2016 at 8:16 AM, Jay Pipes jaypipes@gmail.com wrote:

On 11/25/2016 04:41 AM, Zhenguo Niu wrote:

hi all,

We are pleased to introduce Nimble, a new OpenStack project which aims
to provide bare metal computing management.
Compared with Nova, it's more bare metal specific and with more advanced
features that VM users don't need, it's not
bounded by Nova's API.

As we know, Ironic API should never be exposed to end users, users have
to talk to Nova to request a bare metal compute
instance even if you're only providing bare metal, even if it's only
internally, you still have to talk to nova, Ironic doesn't have
a concept of users, tenants, and quotas. Nimble wants to decouple
virtualization and baremetal technologies by breaking
baremetal computing management into its own set of application program
interfaces.

Not only does Nimble provide pre-set configuration servers, but it also
wants to support RSD(Rack Scale Design) which makes
it possible to dynamically compose physical resouces.

For more information, including architecture, use cases, etc., are
described on the project wiki [0].
And please feel free to browse our source code [1][2].

I'm a little confused why you are choosing to create a new RESTful API
service instead of working to adapt Ironic's existing API, or alternately,
working with the Nova team to add features that you feel were/are necessary
for baremetal management.

What were the primary reasons you decided not to work with either (or
both) of the Ironic or Nova communities?

-jay


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

--
Best Regards,
Zhenguo Niu


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Zhenguo_Niu (2,400 points)   1 4
0 votes

Thanks Sean McGinnis for pointing it out!

On Sat, Nov 26, 2016 at 12:40 AM, Sean McGinnis sean.mcginnis@gmx.com
wrote:

On Fri, Nov 25, 2016 at 05:41:28PM +0800, Zhenguo Niu wrote:

hi all,

We are pleased to introduce Nimble, a new OpenStack project which aims to
provide bare metal computing management.

Has this name been cleared for use? Nimble is the name of a company, so
like Quantum, this seems to me to be a short lived name.


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

--
Best Regards,
Zhenguo Niu


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Zhenguo_Niu (2,400 points)   1 4
0 votes

On 11/27/2016 10:27 PM, Zhenguo Niu wrote:
hi Jay,

Ironic's existing API is admin only, which should not be exposed to end
users, it is best thought of as a bare metal hypervisor API.
And Ironic lacks the ability of scheduling, quotas management and
multi-tenancy support, it heavily depends on Nova to expose API to
end users.

Nova focuses on VM management and provides virtualization specific
features, although the ironic driver makes it possible to manage
bare metal via Nova's API, it doesn't work well. It's hard to add bare
metal specific features, as Nova API is for all hypervisors,
especially virtualization hypervisors. And in order to work with Nova,
we have to adapt the way to manage VMs, for example, we only
have one compute host for all bare metal nodes, so all capabilities
based on compute hosts can't apply to bare metals like availability
zones, host aggregates, etc.

Like containers and virutalizations, bare metal is also a different
technology, different resource. I think they don't work better
together within a same nova compute and bounded by Nova unified API. So
we decide to create a new project which decouples the two
technologies by separating baremetal management into it's own set of API.

Another reason is we also want to support RSD bared servers. Then
composing resouces work will be done in Nimble, Ironic only need
to add RedFish driver to support this type of servers.

I don't see any compelling reason not to work with the Nova and Ironic
projects and add the functionality you wish to see in those respective
projects.

For the RackScale Architecture stuff, the Valence project seems to be
doing that and I'm not sure what role Nimble would play.

Best,
-jay


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Jay_Pipes (59,760 points)   3 10 14
0 votes

On Mon, Nov 28, 2016 at 4:37 PM, Jay Pipes jaypipes@gmail.com wrote:

[Snip]

I don't see any compelling reason not to work with the Nova and Ironic
projects and add the functionality you wish to see in those respective
projects.

Jay, I agree and I don't. First off, I think improving our current projects
is a better engineering choice.

That said, there seems to be a repeated meme that splitting our efforts and
having more than one implementation of compute will somehow solve all our
problems, and I embrace that experiment. It seems very unlikely to me that
we'll end up in a happy place at the end, but then again, I've been wrong
before.

So I say have at it, so long as the outcome of the experiment is public.

Michael

--
Rackspace Australia


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Michael_Still (16,180 points)   3 6 13
0 votes

On Mon, Nov 28, 2016 at 1:37 PM, Jay Pipes jaypipes@gmail.com wrote:

For the RackScale Architecture stuff, the Valence project seems to be
doing that and I'm not sure what role Nimble would play.

For Valence, as my understanding, it provides interfaces to help
compose/release nodes. Nimble will talk to Valence to compose nodes for
users' requests, then enroll the composed node to Ironic to provision it
like generic nodes. Another way is to add Valence to Nova as a driver or
integrate into ironic dirver, but I think it's not easiliy possible. Please
correct me if I misunderstand Valance, thanks!

--
Best Regards,
Zhenguo Niu


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
responded Nov 28, 2016 by Zhenguo_Niu (2,400 points)   1 4
...