+++ This bug was initially created as a clone of Bug #1455504 +++
Description of problem:
Attempting to deploy an overcloud with object storage (e.g swift)
A node assigned to the role gets wrong profile.
Assigning a node to Object storage role should set 'swift-storage' profile in nodes capabilities
Version-Release number of selected component (if applicable):
openstack-tripleo-ui-3.1.0-9.el7ost.noarch
How reproducible:
always
Steps to Reproduce:
1. register nodes
2. assign nodes to controller, compute and object storage roles
3. attempt to deploy
Actual results:
Deployment failed with no valid host was found
The node assigned to object storage role got 'profile:object-storage' instead 'swift-storage'.
Expected results:
'profile:swift-storage' is set in nodes capabilities
Additional info:
There is no 'object-storage' flavor.
[stack@ironic-0 ~]$ ironic node-list
/usr/lib/python2.7/site-packages/requests/packages/urllib3/connection.py:303: SubjectAltNameWarning: Certificate for 192.168.24.2 has no `subjectAltName`, falling back to check for a `commonName` for now. This feature is being removed by major browsers and deprecated by RFC 2818. (See https://github.com/shazow/urllib3/issues/497 for details.)
SubjectAltNameWarning
/usr/lib/python2.7/site-packages/requests/packages/urllib3/connection.py:303: SubjectAltNameWarning: Certificate for 192.168.24.2 has no `subjectAltName`, falling back to check for a `commonName` for now. This feature is being removed by major browsers and deprecated by RFC 2818. (See https://github.com/shazow/urllib3/issues/497 for details.)
SubjectAltNameWarning
+--------------------------------------+--------------+--------------------------------------+-------------+--------------------+-------------+
| UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------------+--------------------------------------+-------------+--------------------+-------------+
| 5f2a23ae-e44e-4ca9-9fae-2c3b6e9791c7 | ceph-0 | None | power on | manageable | False |
| cee30c7a-55bc-4931-bfcb-be94993c4718 | controller-0 | 9b160b92-4a90-4796-b19c-d99db891c374 | power on | active | False |
| 06cc75bf-0a56-4e16-aa7e-0b4caebe6e74 | controller-1 | None | power on | available | False |
| f936eec7-dc43-4602-8da9-03c5dc45f1db | controller-2 | None | power on | available | False |
| 3c13622f-57e7-4918-ae12-f8fb11bf735f | compute-0 | c509ee0d-91a3-441f-b033-22214221d1e2 | power on | active | False |
| 90604f44-d0ea-475b-8d7d-0dc854fa5fdc | compute-1 | None | power on | available | False |
| 55ed76f4-6f62-4eb4-8ac1-8e248a92d310 | compute-2 | None | power on | available | False |
+--------------------------------------+--------------+--------------------------------------+-------------+--------------------+-------------+
[stack@ironic-0 ~]$ openstack overcloud profiles list
+--------------------------------------+--------------+-----------------+-----------------+-------------------+
| Node UUID | Node Name | Provision State | Current Profile | Possible Profiles |
+--------------------------------------+--------------+-----------------+-----------------+-------------------+
| cee30c7a-55bc-4931-bfcb-be94993c4718 | controller-0 | active | control | |
| 06cc75bf-0a56-4e16-aa7e-0b4caebe6e74 | controller-1 | available | None | |
| f936eec7-dc43-4602-8da9-03c5dc45f1db | controller-2 | available | object-storage | |
| 3c13622f-57e7-4918-ae12-f8fb11bf735f | compute-0 | active | compute | |
| 90604f44-d0ea-475b-8d7d-0dc854fa5fdc | compute-1 | available | None | |
| 55ed76f4-6f62-4eb4-8ac1-8e248a92d310 | compute-2 | available | None | |
+--------------------------------------+--------------+-----------------+-----------------+-------------------+
[stack@ironic-0 ~]$ openstack flavor list
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
| 07cb8ec3-f35f-4b6c-98f1-0df39ed6d9ab | compute | 4096 | 40 | 0 | 1 | True |
| 13e6a6c8-e90a-4ba8-8c26-f0ef91446a6c | control | 4096 | 40 | 0 | 1 | True |
| 1666f5ca-9899-4bd7-987a-12f3577ec0eb | ceph-storage | 4096 | 40 | 0 | 1 | True |
| 240e1c98-47db-4ca4-9b70-ffb9f7a9c2b8 | baremetal | 4096 | 40 | 0 | 1 | True |
| 3bcbbc0c-86d8-4ca6-abf7-aa735dec40aa | swift-storage | 4096 | 40 | 0 | 1 | True |
| e41b0218-e669-460d-a5a1-ee48efb37fda | block-storage | 4096 | 40 | 0 | 1 | True |
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
$ openstack baremetal node show f936eec7-dc43-4602-8da9-03c5dc45f1db
+------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| chassis_uuid | None |
| clean_step | {} |
| console_enabled | False |
| created_at | 2017-05-17T13:13:55+00:00 |
| driver | pxe_ssh |
| driver_info | {u'ssh_username': u'stack', u'deploy_kernel': u'eb441b10-1817-4135-b425-37f38273d849', u'deploy_ramdisk': u'62194b71-6520-4da0-b881-c6277a317fa9', u'ssh_key_contents': u'******', |
| | u'ssh_virt_type': u'virsh', u'ssh_address': u'172.16.0.1'} |
| driver_internal_info | {u'agent_url': u'http://192.168.24.7:9999', u'root_uuid_or_disk_id': u'2a59886b-5268-41e5-b37f-c92611eabd96', u'is_whole_disk_image': False} |
| extra | {} |
| inspection_finished_at | None |
| inspection_started_at | None |
| instance_info | {} |
| instance_uuid | None |
| last_error | None |
| maintenance | False |
| maintenance_reason | None |
| name | controller-2 |
| power_state | power on |
| properties | {u'memory_mb': u'32013', u'cpu_arch': u'x86_64', u'local_gb': u'42', u'cpus': u'1', u'capabilities': u'profile:object-storage,boot_option:local'} |
| provision_state | available |
| provision_updated_at | 2017-05-21T15:41:26+00:00 |
| raid_config | {} |
| reservation | None |
| states | [{u'href': u'http://192.168.24.2:13385/v1/nodes/f936eec7-dc43-4602-8da9-03c5dc45f1db/states', u'rel': u'self'}, {u'href': |
| | u'http://192.168.24.2:13385/nodes/f936eec7-dc43-4602-8da9-03c5dc45f1db/states', u'rel': u'bookmark'}] |
| target_power_state | None |
| target_provision_state | None |
| target_raid_config | {} |
| updated_at | 2017-05-21T16:27:43+00:00 |
| uuid | f936eec7-dc43-4602-8da9-03c5dc45f1db |
+------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Tested Workaround :
While tagging a node , choose "Specify Custom Profile" in "Tag nodes into Profiles" popup window , and write "swift-storage" and deploy.
Note: The node won't be visible as assigned to Object Storage role but deployment will succeed.
--- Additional comment from Julie Pichon on 2017-05-25 08:12:06 EDT ---
We fixed something similar in the past via https://review.openstack.org/#/c/403901/ . I wonder if we may be using a different function/action to assign tags and profiles nowadays, that needs to be updated as well?