Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-30 Thread Sylvain Bauza
Le 30/05/2014 14:44, CARVER, PAUL a écrit :
>
> Mathieu Rohon wrote:
>
>  
>
> >I'm also very interested in scheduling VMs with Network requirement.
> This seems to be in the scope of NFV workgroup >[1].
>
> >For instance, I think that scheduling should take into account
> bandwith/QoS requirement for a VM, or specific Nic
>
> This falls in my area of interest as well. We're working on making
> network quality of service guarantees by means of a combination of
> DSCP marking with a reservation database and separate hardware queues
> in physical network switches in order to ensure that the reservations
> granted don't exceed the wire speed of the switches. Right now the
> only option if the total of requested reservations would exceed the
> wire speed of the switches is to deny reservations on the basis of
> "first come, first served" and "last come, doesn't get served", in
> other words simply issuing a failure response at reservation time to
> any tenants who attempt to make reservations after a particular switch
> port is maxed out (from a reservation perspective, not necessarily
> maxed out from an actual utilization perspective at any given moment.)
>

Hi Paul,

I don't exactly know your needs, neither your current state of work
regarding the implementation of a reservation database, but please note
that there is a Stackforge project aiming to provide this for OpenStack
natively :

http://wiki.openstack.org/wiki/Blazar (formerly Climate).


During last Juno summit, some discussions in Nova were related to having
a reservation system in place, and the agreement was to take a look at
Climate/Blazar to see if it's a good fit.

I think it would be valuable for both you and Climate folks (whose I'm
in as core reviewer) to see if we can join efforts to address your
requirements with Blazar so you wouldn't have to do all the things.

There is a weekly meeting today at 3pm UTC in #openstack-meeting for
Blazar team. If you have time, just jump in and address your questions
here, that would be a good starting point.



> However, with the element of chance in VM scheduling to compute node,
> it's possible that a tenant could get a deny response from the
> reservation server because their VM landed on a particularly
> reservation heavy rack. If their VM happened to land on a compute node
> in a different rack then there might well be plenty of excess
> bandwidth on that rack's uplink. But our current implementation has no
> way to tell Nova or the tenant that a reservation that was denied
> could have been granted if the VM were relocated to a less network
> overloaded rack.
>

IMHO, this strategy requires both a reservation system (in my opinion,
Blazar), a resource placement system (Gantt) and possibly some AMQP
notifications which would go thru the queue.
That's something I also have in my scope, we can discuss that whenever
you want.

-Sylvain


>  
>
>
>
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-30 Thread CARVER, PAUL
Mathieu Rohon wrote:

>I'm also very interested in scheduling VMs with Network requirement. This 
>seems to be in the scope of NFV workgroup >[1].
>For instance, I think that scheduling should take into account bandwith/QoS 
>requirement for a VM, or specific Nic
This falls in my area of interest as well. We’re working on making network 
quality of service guarantees by means of a combination of DSCP marking with a 
reservation database and separate hardware queues in physical network switches 
in order to ensure that the reservations granted don’t exceed the wire speed of 
the switches. Right now the only option if the total of requested reservations 
would exceed the wire speed of the switches is to deny reservations on the 
basis of “first come, first served” and “last come, doesn’t get served”, in 
other words simply issuing a failure response at reservation time to any 
tenants who attempt to make reservations after a particular switch port is 
maxed out (from a reservation perspective, not necessarily maxed out from an 
actual utilization perspective at any given moment.)
However, with the element of chance in VM scheduling to compute node, it’s 
possible that a tenant could get a deny response from the reservation server 
because their VM landed on a particularly reservation heavy rack. If their VM 
happened to land on a compute node in a different rack then there might well be 
plenty of excess bandwidth on that rack’s uplink. But our current 
implementation has no way to tell Nova or the tenant that a reservation that 
was denied could have been granted if the VM were relocated to a less network 
overloaded rack.

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-30 Thread Isaku Yamahata

Hi. At this moment, Neutron doesn't offer physical network information for now.
There is a proposal for it[1] and it was discussed at the summit [2].
Although it is still early design phase[3][4], using routing protocol will 
surely
help to discover physical network topology.

[1] https://wiki.openstack.org/wiki/Topology-as-a-service 
[2] https://etherpad.openstack.org/p/hierarchical_network_topology
[3] http://lists.openstack.org/pipermail/openstack-dev/2014-May/035868.html
[4] https://review.openstack.org/#/c/91275/

thanks,
Isaku Yamahata

On Fri, May 30, 2014 at 11:11:46AM +0200,
Mathieu Rohon  wrote:

> I'm also very interested in scheduling VMs with Network requirement. This
> seems to be in the scope of NFV workgroup [1].
> For instance, I think that scheduling should take into account bandwith/QoS
> requirement for a VM, or specific Nic requirement for a VM (availability of
> a SRIOV Vif on compute nodes).
> 
> To do this, it seems that Neutron should report its available capacity (Vif
> availability, bandwith availability) for each compute node, and Gantt
> should take this reporting into account for scheduling.
> 
> [1]https://etherpad.openstack.org/p/juno-nfv-bof
> 
> 
> 
> On Fri, May 30, 2014 at 10:47 AM, jcsf  wrote:
> 
> > Sylvain,
> >
> >
> >
> > Thank you for the background ??? I will educate myself on this work.
> >
> >
> >
> > Thanks,
> >
> > John
> >
> >
> >
> >
> >
> > *From:* Sylvain Bauza [mailto:sba...@redhat.com]
> > *Sent:* Friday, May 30, 2014 11:31 AM
> >
> > *To:* OpenStack Development Mailing List (not for usage questions)
> > *Cc:* jcsf; 'Carl Baldwin'; 'A, Keshava'
> >
> > *Subject:* Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as
> > input any consideration ?
> >
> >
> >
> > Le 30/05/2014 10:06, jcsf a écrit :
> >
> > Carl,
> >
> >
> >
> > A new routing protocol is certainly of great interest.   Are you working
> > with IETF or can you share more here?
> >
> >
> >
> > WRT:Nova Schedule - There still are requirements for the Schedule to
> > taking into consideration network as a resource.   My focus is to figure
> > out how to add network capabilities to the Scheduler’s algorithm while
> > still maintaining clean separation of concerns between Nova and Neutron.
> > We wouldn’t want to get back into the nova-network situation.
> >
> >
> >
> > John
> >
> >
> > As it was previously mentioned, there are already different kinds of
> > grouping for VMs in Nova that probably don't require to add new
> > network-specific features :
> >  - aggregates and user-facing AZs allow to define a common set of
> > capabilities for physical hosts upon which you can boot VMs
> >  - ServerGroups with Affinity/Anti-Affinity filters allow you to enforce a
> > certain level of network proximity for VMs
> >
> >
> > Once that said, there is also another effort of forking the Nova Scheduler
> > code into a separate project so that cross-projects scheduling could happen
> > (and consequently Neutron could use it). This project is planned to be
> > delivered by K release, and will be called Gantt.
> >
> >
> > So, could you please mention which features do you need for Nova, so we
> > could discuss that here before issuing a spec ?
> >
> > -Sylvain
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > *From:* Carl Baldwin [mailto:c...@ecbaldwin.net ]
> > *Sent:* Friday, May 30, 2014 12:05 AM
> > *To:* A, Keshava
> > *Cc:* jcsf31...@gmail.com; Armando M.; OpenStack Development Mailing List
> > (not for usage questions); Kyle Mestery
> > *Subject:* Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as
> > input any consideration ?
> >
> >
> >
> > Keshava,
> >
> >
> >
> > How much of a problem is routing prefix fragmentation for you?
> >  Fragmentation causes routing table bloat and may reduce the performance of
> > the routing table.  It also increases the amount of information traded by
> > the routing protocol.  Which aspect(s) is (are) affecting you?  Can you
> > quantify this effect?
> >
> >
> >
> > A major motivation for my interest in employing a dynamic routing protocol
> > within a datacenter is to enable IP mobility so that I don't need to worry
> > about doing things like scheduling instances based on their IP addresses.
> >  Also, I believe that it can make floating ips more "flo

Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-29 Thread Carl Baldwin
Keshava,

How much of a problem is routing prefix fragmentation for you?
 Fragmentation causes routing table bloat and may reduce the performance of
the routing table.  It also increases the amount of information traded by
the routing protocol.  Which aspect(s) is (are) affecting you?  Can you
quantify this effect?

A major motivation for my interest in employing a dynamic routing protocol
within a datacenter is to enable IP mobility so that I don't need to worry
about doing things like scheduling instances based on their IP addresses.
 Also, I believe that it can make floating ips more "floaty" so that they
can cross network boundaries without having to statically configure routers.

To get this mobility, it seems inevitable to accept the fragmentation in
the routing prefixes.  This level of fragmentation would be contained to a
well-defined scope, like within a datacenter.  Is it your opinion that
trading off fragmentation for mobility a bad trade-off?  Maybe it depends
on the capabilities of the TOR switches and routers that you have.  Maybe
others can chime in here.

Carl


On Wed, May 28, 2014 at 10:11 PM, A, Keshava  wrote:

>  Hi,
>
> Motivation behind this  requirement is “ to achieve VM prefix aggregation
>  using routing protocol ( BGP/OSPF)”.
>
> So that prefix advertised from cloud to upstream will be aggregated.
>
>
>
> I do not have idea how the current scheduler is implemented.
>
> But schedule to  maintain some kind of the ‘Network to Node mapping to VM”
> ..
>
> Based on that mapping to if any new VM  getting hosted to give prefix in
> those Nodes based one input preference.
>
>
>
> It will be great help us from routing side if this is available in the
> infrastructure.
>
> I am available for review/technical discussion/meeting.
>
>
>
>
>
> Thanks & regards,
>
> Keshava.A
>
>
>
> *From:* jcsf31...@gmail.com [mailto:jcsf31...@gmail.com]
> *Sent:* Thursday, May 29, 2014 9:14 AM
> *To:* openstack-dev@lists.openstack.org; Carl Baldwin; Kyle Mestery;
> OpenStack Development Mailing List (not for usage questions)
> *Subject:* Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as
> input any consideration ?
>
>
>
> Hi keshava,
>
>
>
> This is an area that I am interested in.   I'd be happy to collaborate
> with you on a blueprint.This would require enhancements to the
> scheduler as you suggested.
>
>
>
> There are a number of uses cases for this.
>
>
>
>
>
> ‎John.
>
>
>
> Sent from my  smartphone.
>
> *From: *A, Keshava‎
>
> *Sent: *Tuesday, May 27, 2014 10:58 AM
>
> *To: *Carl Baldwin; Kyle Mestery; OpenStack Development Mailing List (not
> for usage questions)
>
> *Reply To: *OpenStack Development Mailing List (not for usage questions)
>
> *Subject: *[openstack-dev] [neutron][L3] VM Scheduling v/s Network as
> input any consideration ?
>
>
>
> Hi,
>
> I have one of the basic question about the Nova Scheduler in the following
> below scenario.
>
> Whenever a new VM to be hosted is there any consideration of network
> attributes ?
>
> Example let us say all the VMs with 10.1.x is under TOR-1, and 20.1.xy are
> under TOR-2.
>
> A new CN nodes is inserted under TOR-2 and at same time a new  tenant VM
> needs to be  hosted for 10.1.xa network.
>
>
>
> Then is it possible to mandate the new VM(10.1.xa)   to hosted under TOR-1
> instead of it got scheduled under TOR-2 ( where there CN-23 is completely
> free from resource perspective ) ?
>
> This is required to achieve prefix/route aggregation and to avoid network
> broadcast (incase if they are scattered across different TOR/Switch) ?
>
>
>
>
>
>
>
>
>
> Thanks & regards,
>
> Keshava.A
>
>
>
>
>
>
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-28 Thread jcsf31459
Yes, agree on the use case.  I suggest we introduce a series of callbacks and up calls to the scheduler so that we don't bloat the ‎scheduler with information outside of its domain.      Callbacks and up calls can be used to call external systems that keep detailed topology information.   We can also work on the latter together if you wish.   We have a topology system already.   I've been waiting for someone to work with this on.  John  Sent from my BlackBerry 10 smartphone. From: A, KeshavaSent: Thursday, May 29, 2014 7:13 AMTo: jcsf31...@gmail.comCc: Armando M.; OpenStack Development Mailing List (not for usage questions); Carl Baldwin; Kyle MesterySubject: RE: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?







Hi,
Motivation behind this  requirement is “ to achieve VM prefix aggregation  using routing protocol ( BGP/OSPF)”.
So that prefix advertised from cloud to upstream will be aggregated.
 
I do not have idea how the current scheduler is implemented.

But schedule to  maintain some kind of the ‘Network to Node mapping to VM” ..
Based on that mapping to if any new VM  getting hosted to give prefix in those Nodes based one input preference.
 
It will be great help us from routing side if this is available in the infrastructure.
I am available for review/technical discussion/meeting.

 
 

Thanks & regards,
Keshava.A

 


From: jcsf31...@gmail.com [mailto:jcsf31...@gmail.com]

Sent: Thursday, May 29, 2014 9:14 AM
To: openstack-dev@lists.openstack.org; Carl Baldwin; Kyle Mestery; OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?


 

Hi keshava,


 


This is an area that I am interested in.   I'd be happy to collaborate with you on a blueprint.    This would require enhancements to the scheduler as you suggested.   


 


There are a number of uses cases for this.  


  



 


‎John. 


 


Sent from my  smartphone.







From:
A, Keshava‎


Sent:
Tuesday, May 27, 2014 10:58 AM


To:
Carl Baldwin; Kyle Mestery; OpenStack Development Mailing List (not for usage questions)


Reply To:
OpenStack Development Mailing List (not for usage questions)


Subject:
[openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?






 

Hi,
I have one of the basic question about the Nova Scheduler in the following below scenario.
Whenever a new VM to be hosted is there any consideration of network attributes ?

Example let us say all the VMs with 10.1.x is under TOR-1, and 20.1.xy are under TOR-2.
A new CN nodes is inserted under TOR-2 and at same time a new  tenant VM needs to be  hosted for 10.1.xa network.
 
Then is it possible to mandate the new VM(10.1.xa)   to hosted under TOR-1 instead of it got scheduled under TOR-2 ( where there CN-23 is completely free from resource perspective ) ?

This is required to achieve prefix/route aggregation and to avoid network broadcast (incase if they are scattered across different TOR/Switch) ?

 
 
 

 
Thanks & regards,
Keshava.A
 







___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-28 Thread Mike Spreitzer
"Armando M."  wrote on 05/28/2014 07:35:52 PM:

> From: "Armando M." 
> To: "OpenStack Development Mailing List (not for usage questions)" 
> , 
> Date: 05/28/2014 07:37 PM
> Subject: Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network
> as input any consideration ?
> 
> Hi Keshava,
> 
> To the best of my knowledge Nova does not have an explicit way to 
> determine VM placements based on network attributes. That said, it 
> does have a general mechanism called host-aggregates [1] that can be
> leveraged to address what you are looking for. How certain hosts are
> grouped together to match certain network affinity rules is in the 
> hands of the cloud operator and I believe this requires quite a bit 
> of out-of-band management.
> 
> I recall at one point that there was an effort going on to improve 
> the usability of such a use case (using the port binding extension 
> [2]), but my knowledge is not very current, so I'd need to fall back
> on some other folks listening on the ML to chime in on the latter topic.
> 
> Hope this help!
> Armando
> 
> [1] - http://docs.openstack.org/trunk/openstack-ops/content/
> scaling.html#segregate_cloud
> [2] - http://docs.openstack.org/api/openstack-network/2.0/content/
> binding_ext_ports.html
> 

> On 27 May 2014 09:53, A, Keshava  wrote:
> Hi,
> I have one of the basic question about the Nova Scheduler in the 
> following below scenario.
> Whenever a new VM to be hosted is there any consideration of network
> attributes ? 
> Example let us say all the VMs with 10.1.x is under TOR-1, and 20.
> 1.xy are under TOR-2.
> A new CN nodes is inserted under TOR-2 and at same time a new 
>  tenant VM needs to be  hosted for 10.1.xa network.
>  
> Then is it possible to mandate the new VM(10.1.xa)   to hosted under
> TOR-1 instead of it got scheduled under TOR-2 ( where there CN-23 is
> completely free from resource perspective ) ? 
> This is required to achieve prefix/route aggregation and to avoid 
> network broadcast (incase if they are scattered across different 
> TOR/Switch) ? 

The idea of taking cross-service relationships into account when 
scheduling has been discussed off-and-on for a while (longer than I have 
been involved in OpenStack), but it is not well realized today.  I brought 
a proposal (see https://wiki.openstack.org/wiki/Heat/PolicyExtension) to 
the Icehouse summit.  In that model, your use case would be handled by 
relationships that limit network hop counts between VMs.  Work is underway 
towards this vision, but the vision remains a long way off.  The current 
work is called Gantt, it is a preliminary step of factoring the scheduling 
out of nova in preparation for sharing and generalization.

Regards,
Mike___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron][L3] VM Scheduling v/s Network as input any consideration ?

2014-05-28 Thread Armando M.
Hi Keshava,

To the best of my knowledge Nova does not have an explicit way to determine
VM placements based on network attributes. That said, it does have a
general mechanism called host-aggregates [1] that can be leveraged to
address what you are looking for. How certain hosts are grouped together to
match certain network affinity rules is in the hands of the cloud operator
and I believe this requires quite a bit of out-of-band management.

I recall at one point that there was an effort going on to improve the
usability of such a use case (using the port binding extension [2]), but my
knowledge is not very current, so I'd need to fall back on some other folks
listening on the ML to chime in on the latter topic.

Hope this help!
Armando

[1] -
http://docs.openstack.org/trunk/openstack-ops/content/scaling.html#segregate_cloud
[2] -
http://docs.openstack.org/api/openstack-network/2.0/content/binding_ext_ports.html


On 27 May 2014 09:53, A, Keshava  wrote:

>  Hi,
>
> I have one of the basic question about the Nova Scheduler in the following
> below scenario.
>
> Whenever a new VM to be hosted is there any consideration of network
> attributes ?
>
> Example let us say all the VMs with 10.1.x is under TOR-1, and 20.1.xy are
> under TOR-2.
>
> A new CN nodes is inserted under TOR-2 and at same time a new  tenant VM
> needs to be  hosted for 10.1.xa network.
>
>
>
> Then is it possible to mandate the new VM(10.1.xa)   to hosted under TOR-1
> instead of it got scheduled under TOR-2 ( where there CN-23 is completely
> free from resource perspective ) ?
>
> This is required to achieve prefix/route aggregation and to avoid network
> broadcast (incase if they are scattered across different TOR/Switch) ?
>
>
>
>
>
>
>
>
>
> Thanks & regards,
>
> Keshava.A
>
>
>
> ___
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev