composed role for hci fails ceph-ansible deploy on step 2
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tripleo |
Fix Released
|
High
|
Giulio Fidente |
Bug Description
A pike deploy with ceph-ansible with 3 storage nodes, 1 compute node, and 1 controller node works as described in the docs [1]. However deleting that overcloud and then redeploying it with the following variations to produce an HCI deployment results in the step2 Heat > Mistral > Ansible workflow failing [2].
The variations to introduce HCI to the working deployment were only to run the same deployment command [3] but to use -r to reference an updated roles_data.yaml file to define an OsdCompute role [4] and change the node type counts and flavors [5].
Footnotes:
[1] https:/
[2]
overcloud.
resource_type: OS::Mistral:
physical_
status: CREATE_FAILED
status_reason: |
resources.
Heat Stack create failed.
Heat Stack create failed.
[3]
time openstack overcloud deploy --templates ~/templates \
-r ~/tripleo-
-e ~/templates/
-e ~/templates/
-e ~/templates/
-e ~/templates/
-e ~/docker_
-e ~/templates/
-e ~/templates/
-e ~/tripleo-
[4]
#######
# Role: OsdCompute #
#######
- name: OsdCompute
description: |
Basic Compute Node role
CountDefault: 0
networks:
- InternalApi
- Tenant
- Storage
- StorageMgmt
HostnameForma
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
# Set uses_deprecated
uses_
deprecated_
deprecated_
deprecated_
deprecated_
deprecated_
deprecated_
disable_
ServicesDefault:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
- OS::TripleO:
[5]
OvercloudCont
ControllerCount: 1
OvercloudComp
ComputeCount: 0
#OvercloudCep
#CephStorageC
OvercloudOsdC
OsdComputeCount: 3
Changed in tripleo: | |
milestone: | pike-rc1 → pike-rc2 |
Changed in tripleo: | |
importance: | Medium → High |
Changed in tripleo: | |
milestone: | pike-rc2 → queens-1 |
Changed in tripleo: | |
status: | Fix Committed → Fix Released |
Is it possible that the env() is empty as per the mistral logs?
2017-08-24 16:57:33.764 20688 ERROR mistral. engine. task_handler [-] Failed to
handle action completion [error=Can not evaluate YAQL expression env().get( 'role_merged_ configs' ).items( ).select( $[1].get( 'ceph_osd_ ansible_ vars', {})).aggregate( $1.mergeWith( $2)), error=unhashable type: 'dict', data={}],
wf=tripleo. storage. v1.ceph- install, task=set_role_vars, action=std.noop]:
[expression=
http:// sprunge. us/KRGI