<div dir="ltr"><br>Hi Toan,<br>Is what you say related to : <a href="https://blueprints.launchpad.net/nova/+spec/schedule-set-availability-zones">https://blueprints.launchpad.net/nova/+spec/schedule-set-availability-zones</a> ?<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-27 10:37 GMT+01:00 Khanh-Toan Tran <span dir="ltr"><<a href="mailto:khanh-toan.tran@cloudwatt.com" target="_blank">khanh-toan.tran@cloudwatt.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class=""><br>
<br>
----- Original Message -----<br>
> From: "Sangeeta Singh" <<a href="mailto:singhs@yahoo-inc.com">singhs@yahoo-inc.com</a>><br>
> To: "OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
</div><div><div class="h5">> Sent: Wednesday, March 26, 2014 6:54:18 PM<br>
> Subject: Re: [openstack-dev] [nova][scheduler] Availability Zones and Host aggregates..<br>
><br>
><br>
><br>
> On 3/26/14, 10:17 AM, "Khanh-Toan Tran" <<a href="mailto:khanh-toan.tran@cloudwatt.com">khanh-toan.tran@cloudwatt.com</a>><br>
> wrote:<br>
><br>
> ><br>
> ><br>
> >----- Original Message -----<br>
> >> From: "Sangeeta Singh" <<a href="mailto:singhs@yahoo-inc.com">singhs@yahoo-inc.com</a>><br>
> >> To: "OpenStack Development Mailing List (not for usage questions)"<br>
> >><<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
> >> Sent: Tuesday, March 25, 2014 9:50:00 PM<br>
> >> Subject: [openstack-dev] [nova][scheduler] Availability Zones and Host<br>
> >>aggregates..<br>
> >><br>
> >> Hi,<br>
> >><br>
> >> The availability Zones filter states that theoretically a compute node<br>
> >>can be<br>
> >> part of multiple availability zones. I have a requirement where I need<br>
> >>to<br>
> >> make a compute node part to 2 AZ. When I try to create a host aggregates<br>
> >> with AZ I can not add the node in two host aggregates that have AZ<br>
> >>defined.<br>
> >> However if I create a host aggregate without associating an AZ then I<br>
> >>can<br>
> >> add the compute nodes to it. After doing that I can update the<br>
> >> host-aggregate an associate an AZ. This looks like a bug.<br>
> >><br>
> >> I can see the compute node to be listed in the 2 AZ with the<br>
> >> availability-zone-list command.<br>
> >><br>
> ><br>
> >Yes it appears a bug to me (apparently the AZ metadata indertion is<br>
> >considered as a normal metadata so no check is done), and so does the<br>
> >message in the AvailabilityZoneFilter. I don't know why you need a<br>
> >compute node that belongs to 2 different availability-zones. Maybe I'm<br>
> >wrong but for me it's logical that availability-zones do not share the<br>
> >same compute nodes. The "availability-zones" have the role of partition<br>
> >your compute nodes into "zones" that are physically separated (in large<br>
> >term it would require separation of physical servers, networking<br>
> >equipments, power sources, etc). So that when user deploys 2 VMs in 2<br>
> >different zones, he knows that these VMs do not fall into a same host and<br>
> >if some zone falls, the others continue working, thus the client will not<br>
> >lose all of his VMs. It's smaller than Regions which ensure total<br>
> >separation at the cost of low-layer connectivity and central management<br>
> >(e.g. scheduling per region).<br>
> ><br>
> >See: <a href="http://www.linuxjournal.com/content/introduction-openstack" target="_blank">http://www.linuxjournal.com/content/introduction-openstack</a><br>
> ><br>
> >The former purpose of regouping hosts with the same characteristics is<br>
> >ensured by host-aggregates.<br>
> ><br>
> >> The problem that I have is that I can still not boot a VM on the<br>
> >>compute node<br>
> >> when I do not specify the AZ in the command though I have set the<br>
> >>default<br>
> >> availability zone and the default schedule zone in nova.conf.<br>
> >><br>
> >> I get the error ³ERROR: The requested availability zone is not<br>
> >>available²<br>
> >><br>
> >> What I am  trying to achieve is have two AZ that the user can select<br>
> >>during<br>
> >> the boot but then have a default AZ which has the HV from both AZ1 AND<br>
> >>AZ2<br>
> >> so that when the user does not specify any AZ in the boot command I<br>
> >>scatter<br>
> >> my VM on both the AZ in a balanced way.<br>
> >><br>
> ><br>
> >I do not understand your goal. When you create two availability-zones and<br>
> >put ALL of your compute nodes into these AZs, then if you don't specifies<br>
> >the AZ in your request, then AZFilter will automatically accept all hosts.<br>
> >The defaut weigher (RalWeigher) will then distribute the workload fairely<br>
> >among these nodes regardless of AZ it belongs to. Maybe it is what you<br>
> >want?<br>
><br>
>   With Havana that does not happen as there is a concept of<br>
> default_scheduler_zone which is none if not specified and when we specify<br>
> one can only specify a since AZ whereas in my case I basically want the 2<br>
> AZ that I create both to be considered default zones if nothing is<br>
> specified.<br>
<br>
</div></div>If you look into the code of the AvailabilityFilter, you'll see that the filter automatically accepts host if there is NO availability-zone in the request, which is the case when user does not specify AZ. This is exactly what I see in my Openstack platform (Hanava stable). FYI, I didn't set up a default AZ in config. So whenever I creates several VMs without specifying an AZ, the scheduler spreads the VMs into all hosts regardless of their AZ.<br>

<br>
What I think lacking is that user can not select a set of AZs instead of one or none right now.<br>
<div class="HOEnZb"><div class="h5"><br>
> ><br>
> >> Any pointers.<br>
> >><br>
> >> Thanks,<br>
> >> Sangeeta<br>
> >><br>
> >> _______________________________________________<br>
> >> OpenStack-dev mailing list<br>
> >> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> >> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
> >><br>
> ><br>
> >_______________________________________________<br>
> >OpenStack-dev mailing list<br>
> ><a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> ><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
><br>
> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></blockquote></div><br></div>