[Openstack-operators] Properties missing in Nova Scheduler Filter
Matt Fischer
matt at mattfischer.com
Thu Nov 10 14:26:45 UTC 2016
Mario,
If I remember right I had a similar issue with getting image_props when I
was doing this to pull in custom properties. Through some trial and error
and poking around with pdb I ended up with this:
image_props = spec_obj.get('request_spec', {}).\
get('image', {}).get('properties', {})
Perhaps that will help? If not I'd recommend putting a pdb break at the
top of host_passes and digging through the spec_obj.
On Thu, Nov 10, 2016 at 12:05 AM, Keller, Mario <Mario.Keller at cornelsen.de>
wrote:
> Hello,
>
> we are trying to build our own nova scheduler filter to separate machines
> to different compute nodes / host aggregates.
> Our setup is based on OpenStack Mitaka and we are using VMware as
> hypervisor on 3 different compute nodes.
>
> We have created a /etc/glance/metadefs/CV_AggSelect.json file to define
> the new property "os_selectagg"
>
> {
> "namespace": "OS::Compute::cv-host-agg",
> "display_name": "CV-CUSTOM: Select Host Aggregate",
> "description": "Cornelsen CUSTOM: Select Host Aggregate",
> "visibility": "public",
> "protected": true,
> "resource_type_associations": [
> {
> "name": "OS::Glance::Image"
> },
> {
> "name": "OS::Nova::Aggregate"
> }
> ],
> "properties": {
> "os_selectagg": {
> "title": "selectagg",
> "description": "Cornelsen CUSTOM: Select Host Aggregate",
> "type": "string",
> "enum": [
> "windows",
> "linux",
> "desktop",
> "test1",
> "test2"
> ],
> "default" : "test2"
> }
> },
> "objects": []
> }
>
>
> Getting the details from our image and the host aggregate we see that the
> property is set correctly:
>
> openstack image show e62da4df-318f-48dc-be26-b634e82ec4a1
> +------------------+----------------------------------------
> ------------------------------------------------------------
> ------------------------------+
> | Field | Value
>
> |
> +------------------+----------------------------------------
> ------------------------------------------------------------
> ------------------------------+
> ...
> | properties | description='', hw_vif_model='VirtualVmxnet3',
> hypervisor_type='vmware', os_selectagg='windows', |
> | | vmware_adaptertype='lsiLogicsas',
> vmware_disktype='preallocated', vmware_ostype='windows9Server64Guest
> ...
>
> We also see the property in the aggregate:
>
> openstack aggregate show 5
> +-------------------+--------------------------------------------------+
> | Field | Value |
> +-------------------+--------------------------------------------------+
> ...
> | properties | hypervisor_type='vmware', os_selectagg='windows' |
> ..
>
> I have created a new simple filter in /usr/lib/python2.7/site-
> packages/nova/scheduler/filters just to see what properties are set for
> the current image and the host_state.
> The filter is also set in the /etc/nova/nova.conf and is executed,
> because I'm getting the logfile that ist created by the filter.
>
> The filter only implements the " def host_passes(self, host_state,
> spec_obj)" function.
>
> I'm getting the image properties by " image_props =
> spec_obj.image.properties if spec_obj.image else {} ", but the property
> "os_selectagg" is missing. All other properties like
> hw_vif_model='VirtualVmxnet3' are set.
>
> The property is set in the host_state.aggregates list, but not in the
> spec_obj.image.properties. What do we miss?
>
> With best regards,
> Mario Keller.
>
>
>
> Mit freundlichen Grüßen
> Mario Keller
> IT-Operations Engineer
>
> --
> Cornelsen Verlag GmbH, Mecklenburgische Straße 53, 14197 Berlin
> Tel: +49 30 897 85-8364, Fax: +49 30 897 85-97-8364
> E-Mail: mario.keller at cornelsen.de | cornelsen.de
>
> AG Charlottenburg, HRB 114796 B
> Geschäftsführung: Dr. Anja Hagen, Joachim Herbst, Mark van Mierle
> (Vorsitz),
> Patrick Neiss, Michael von Smolinski, Frank Thalhofer
>
>
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-operators/attachments/20161110/3c6b4764/attachment.html>
More information about the OpenStack-operators
mailing list