Enforced/Constrained Image Architecture Tagging

Bug #1519720 reported by DataCentred DevOps Team
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Dashboard (Horizon)
Won't Fix
Undecided
Unassigned

Bug Description

Some operators running heterogeneous clouds rely on images having the architecture attribute set in glance to allow nova to schedule instances on hypervisors of the correct architecture. At present horizon presents this attribute as an optional text field, which is often ignored by end users who then end up with instances in the error state as an x86_64 image has been scheduled on an aarch64 hypervisor.

It would be nice to allow this field in horizon to be required and constrained to a set of supported architectures presented as a drop down.

Changed in horizon:
assignee: nobody → DataCentred DevOps Team (devops-9)
Changed in horizon:
status: New → In Progress
Changed in horizon:
assignee: DataCentred DevOps Team (devops-9) → nobody
Simon Murray (spjmurray)
Changed in horizon:
assignee: nobody → Simon Murray (spjmurray)
Simon Murray (spjmurray)
Changed in horizon:
assignee: Simon Murray (spjmurray) → nobody
assignee: nobody → Simon Murray (spjmurray)
Changed in horizon:
importance: Undecided → Wishlist
milestone: none → newton-1
Revision history for this message
Travis Tripp (travis-tripp) wrote :

I'm going to -2 this until a good case can be made for why the this can't be done using the Glance Metadata Definitions Catalog. [0] [1]

[0] http://docs.openstack.org/developer/glance/metadefs-concepts.html
[1] https://www.youtube.com/watch?v=zJpHXdBOoeM

There is a disabled namespace that contains architecture now. See: http://<horizon_url>/admin/metadata_defs/OS::Glance::CommonImageProperties/detail

You can enable it by associating it with OS::Glance::Image and make it public:

http://127.0.0.1:8005/admin/metadata_defs/?namespace_marker=OS%3A%3ACompute%3A%3AVirtCPUTopology

Then go to the image and you can find it in the update metadata dialog.

The metadata is also being added as a step to the new launch instance tables in this patch:

https://review.openstack.org/#/c/236042/

In addition you could create your own by architecture namespace with your own choices by importing this into the metadata UI like this:

http://imgur.com/a/I4QSG

Using the below namespace.

{
    "namespace": "OS::Glance::Architecture",
    "display_name": "Architecture",
    "description": "When adding an image to Glance, you may specify the architecture.",
    "visibility": "public",
    "protected": true,
    "created_at": "2016-05-09T16:50:36Z",
    "resource_type_associations": [
        {
            "created_at": "2016-05-09T16:50:36Z",
            "name": "OS::Glance::Image"
        }
    ],
    "properties": {
        "architecture": {
            "type": "string",
            "description": "The CPU architecture that must be supported by the hypervisor. For example, x86_64, arm, or ppc64. Run uname -m to get the architecture of a machine. We strongly recommend using the architecture data vocabulary defined by the libosinfo project for this purpose.",
            "title": "CPU Architecture",
            "enum": [
                "x86_64",
                "foo_arch",
                "bar_arch"
            ]
        }
    }
}

Revision history for this message
Travis Tripp (travis-tripp) wrote :

Also, this is not a bug. This is a new feature and should be a blueprint.

Changed in horizon:
milestone: newton-1 → newton-2
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on horizon (master)

Change abandoned by David Lyle (<email address hidden>) on branch: master
Review: https://review.openstack.org/236910
Reason: This review is > 4 weeks without comment and currently blocked by a core reviewer with a -2. We are abandoning this for now. Feel free to reactivate the review by pressing the restore button and contacting the reviewer with the -2 on this review to ensure you address their concerns.

Changed in horizon:
milestone: newton-2 → newton-3
Revision history for this message
Rob Cresswell (robcresswell-deactivatedaccount) wrote :

Seems to have stalled, and should be a blueprinted feature regardless. See comments on the attached patch too; metadata might solve this.

Changed in horizon:
status: In Progress → Won't Fix
milestone: newton-3 → none
assignee: Simon Murray (spjmurray) → nobody
importance: Wishlist → Undecided
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.