TLS everywhere deployments fail with: Invalid input for field/attribute compact_services

Bug #1808855 reported by Raildo Mascena de Sousa Filho
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
novajoin
Fix Released
Critical
Unassigned
tripleo
Fix Released
Critical
Unassigned

Bug Description

During oooq deployments with tls-everywhere enabled fails on overcloud deploy stage with:

overcloud.Controller.1.Controller:
  resource_type: OS::TripleO::ControllerServer
  physical_resource_id:
  status: CREATE_FAILED
  status_reason: |
    BadRequest: resources.Controller: Invalid input for field/attribute compact_services. Value: {"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}. u'{"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}' is too long (HTTP 400) (Request-ID: req-f5c8b045-5c74-40-ad28-5abf22b2fad3)
overcloud.Controller.0.Controller:
  resource_type: OS::TripleO::ControllerServer
  physical_resource_id:
  status: CREATE_FAILED
  status_reason: |
    BadRequest: resources.Controller: Invalid input for field/attribute compact_services. Value: {"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}. u'{"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}' is too long (HTTP 400) (Request-ID: req-8e7ed022-26a9-47a1-9ddb-05141e7)
overcloud.Controller.2.Controller:
  resource_type: OS::TripleO::ControllerServer
  physical_resource_id:
  status: CREATE_FAILED
  status_reason: |
    BadRequest: resources.Controller: Invalid input for field/attribute compact_services. Value: {"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}. u'{"ovs": ["internalapi"], "HTTP": ["ctlplane", "storage", "storagemgmt", "internalapi", "external", "management"], "libvirt-vnc": ["internalapi"], "rabbitmq": ["internalapi"], "odl": ["internalapi"], "mysql": ["internalapi"], "novnc-proxy": ["internalapi"], "neutron": ["internalapi"]}' is too long (HTTP 400) (Request-ID: req-5ba54950-af61-4bcf-8fd9-ce3a7)

* In tripleo-heat-templates, we construct data to be passed to novajoin for all the services to be configured. The data is passed as nova metadata fields.
* There can be any number of these fields, but each field cannot exceed 256 bytes.
* In particular, the services on a controller not related to a VIP are passed in a field called "compact_services", we can exceed the 256 byte restriction.
* We see that happen in the log snippet above ...

Revision history for this message
Raildo Mascena de Sousa Filho (raildo) wrote :
Revision history for this message
Raildo Mascena de Sousa Filho (raildo) wrote :
Revision history for this message
Raildo Mascena de Sousa Filho (raildo) wrote :
Changed in novajoin:
importance: Undecided → Critical
Changed in tripleo:
importance: Undecided → Critical
milestone: none → stein-2
Changed in novajoin:
status: New → Fix Released
Changed in tripleo:
milestone: stein-2 → stein-3
Changed in tripleo:
status: New → Fix Released
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.