Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1516911 - DPDK derive parameters - unable to determine OvsDpdkMemoryChannels parameter issue.
Summary: DPDK derive parameters - unable to determine OvsDpdkMemoryChannels parameter ...
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-common
Version: 14.0 (Rocky)
Hardware: x86_64
OS: Linux
Target Milestone: beta
: 14.0 (Rocky)
Assignee: Jaganathan Palanisamy
QA Contact: Yariv
Depends On:
Blocks: 1431498 1599843 1660920
TreeView+ depends on / blocked
Reported: 2017-11-23 14:44 UTC by Ziv
Modified: 2019-01-11 11:49 UTC (History)
13 users (show)

Fixed In Version: openstack-tripleo-common-9.1.1-0.20180710151736.8e8dabd.el7ost
Doc Type: Known Issue
Doc Text:
The OvsDpdkMemoryChannels parameter cannot be derived through the DPDK derive parameters workflow. The value is set to 4 by default. You can change that value in your custom environments file to match your hardware.
Clone Of:
Last Closed: 2019-01-11 11:48:21 UTC

Attachments (Terms of Use)
compute node introspection details (deleted)
2017-11-23 14:44 UTC, Ziv
no flags Details

System ID Priority Status Summary Last Updated
OpenStack gerrit 525476 None stable/pike: MERGED tripleo-common: Memory channels parameter is not derivable (I3dc8a864a443cc7002945a24550a7dd9924f6a5b) 2018-03-29 16:10:39 UTC
OpenStack gerrit 527875 None stable/pike: MERGED tripleo-heat-templates: Memory channels parameter default value (I753861c69e64d341e313e8878ac629136aa5852c) 2018-03-29 16:10:32 UTC
Launchpad 1734814 None None None 2017-11-28 11:05:02 UTC
Red Hat Product Errata RHEA-2019:0045 None None None 2019-01-11 11:49:03 UTC

Description Ziv 2017-11-23 14:44:46 UTC
Created attachment 1358249 [details]
compute node introspection details

Description of problem:

During mistral workflows for dpdk procedure, I have encountered the following issue with the OvsDpdkMemoryChannels parameter:

[stack@undercloud-0 ospd-12-dpdk]$ openstack overcloud deploy --templates --update-plan-only  -p plan-environment-derived-params.yaml -r /home/stack/ospd-12-dpdk/roles_data.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/docker.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/host-config-and-reboot.yaml -e /home/stack/ospd-12-dpdk/network-environment.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/neutron-ovs-dpdk.yaml
Started Mistral Workflow tripleo.validations.v1.check_pre_deployment_validations. Execution ID: e975bcdf-324d-4cb3-9684-9e1f20c621de
Waiting for messages on queue '68288b5b-2459-41e2-9da9-478627b16e8d' with no timeout.
Removing the current plan files
Uploading new plan files
Started Mistral Workflow tripleo.plan_management.v1.update_deployment_plan. Execution ID: af723afc-77d8-47c6-bacd-6e121e9314fb
Plan updated.
Processing templates in the directory /tmp/tripleoclient-1Ayzjn/tripleo-heat-templates
Invoking workflow (tripleo.derive_params.v1.derive_parameters) specified in plan-environment file
Started Mistral Workflow tripleo.derive_params.v1.derive_parameters. Execution ID: 35826bb7-1c4c-4776-8a48-864eb08f1345
Workflow execution is failed: [{u'status': u'SUCCESS', u'message': u'', u'role_name': u'Controller'}, {u'status': u'FAILED', u'message': {u'status': u'FAILED', u'sock_mem': u'2048,1024', u'mem_channel': 0, u'network_configs': [{u'type': u'interface', u'defroute': False, u'name': u'nic1', u'use_dhcp': False}, {u'routes': [{u'ip_netmask': u'', u'next_hop': u''}, {u'default': True, u'next_hop': u''}], u'use_dhcp': False, u'type': u'interface', u'addresses': [{u'ip_netmask': u'/24'}], u'name': u'nic2'}, {u'dns_servers': [u'', u''], u'name': u'bond_api', u'bonding_options': u'mode=active-backup', u'members': [{u'type': u'interface', u'name': u'nic3', u'primary': True}], u'use_dhcp': False, u'type': u'linux_bond'}, {u'device': u'bond_api', u'type': u'vlan', u'addresses': [{u'ip_netmask': u''}], u'vlan_id': 525}, {u'device': u'bond_api', u'type': u'vlan', u'addresses': [{u'ip_netmask': u''}], u'vlan_id': 526}, {u'device': u'bond_api', u'type': u'vlan', u'addresses': [{u'ip_netmask': u''}], u'vlan_id': 527}, {u'use_dhcp': False, u'type': u'ovs_user_bridge', u'name': u'br-link', u'members': [{u'type': u'ovs_dpdk_port', u'name': u'dpdk0', u'members': [{u'type': u'interface', u'name': u'nic4'}]}]}], u'memory_slot_info': [u'PROC 1 DIMM 9', u'PROC 1 DIMM 10', u'PROC 1 DIMM 3', u'PROC 1 DIMM 4', u'PROC 1 DIMM 1', u'PROC 1 DIMM 2', u'PROC 1 DIMM 7', u'PROC 1 DIMM 8', u'PROC 1 DIMM 5', u'PROC 1 DIMM 6', u'PROC 2 DIMM 10', u'PROC 2 DIMM 9', u'PROC 2 DIMM 12', u'PROC 2 DIMM 11', u'PROC 1 DIMM 11', u'PROC 1 DIMM 12', u'PROC 2 DIMM 1', u'PROC 2 DIMM 2', u'PROC 2 DIMM 3', u'PROC 2 DIMM 4', u'PROC 2 DIMM 5', u'PROC 2 DIMM 6', u'PROC 2 DIMM 7', u'PROC 2 DIMM 8'], u'updated_mem_slot_info': [u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   ', u'PROC   '], u'host_cpus': u'0,8,16,24', u'pmd_cpus': u'1,7,10,17,23,26', u'num_cores_per_numa_nodes': [2, 1], u'result': None, u'dpdk_nics_numa_info': [{u'numa_node': 0, u'name': u'ens2f0', u'mtu': 1500}], u'numa_nodes': [0, 1], u'message': u'Unable to determine OvsDpdkMemoryChannels parameter', u'dpdk_nics_numa_nodes': [0]}, u'role_name': u'ComputeOvsDpdk'}]

Version-Release number of selected component (if applicable):

Steps to Reproduce:
1. deploy rhos 12 undercloud
2. introspect overcloud nodes
3. run mistral workflow for dpdk.

Actual results:
Unable to determine DIMMs format correctly.

Additional info:
compute node introspection details is attached.

Comment 1 Jaganathan Palanisamy 2017-11-28 06:39:04 UTC
Memory channels parameter is not derivable using introspection memory bank data in mistral derive parameter since format of memory slot name is not consistent on different environments. Mostly default memory channels as 4 and user can read the environment spec and update memory channels parameter for that environment.

Different formats : P1-DIMMA1, A1, PROC 1 DIMM 1.

Comment 2 Saravanan KR 2017-11-28 11:05:02 UTC

Added below patches, once merged upstream, it will be back-ported to stable/pike. (tripleo-common) (tripleo-heat-tempaltes)

Comment 4 Jaganathan Palanisamy 2017-12-18 09:21:54 UTC
Below patches are merged in upstream. (tripleo-common) (tripleo-heat-tempaltes)

Backported to stable/pike in upstream (tripleo-common) - Merged in upstream (tripleo-heat-tempaltes) - In progress

Comment 5 Jaganathan Palanisamy 2017-12-18 11:55:06 UTC
Backported and merged in upstream stable/pike (tripleo-common) (tripleo-heat-tempaltes)

Comment 6 Vijay Chundury 2018-03-07 18:04:09 UTC
This BZ is a result of the bug that was reported during the OSP12 test cycle.

I believe this should be part of the OSP 13 testing.
From development side this was the only bug that got tested.

In case it is pushed to OSP 14, it would help understand from Franck to see if he perceives any risk or any blockers to be made part of the roadmap.

Need Franck's opinion on this.


Comment 22 Yariv 2018-08-14 17:45:57 UTC
Verified with Puddle 2018-08-08.2

Comment 29 errata-xmlrpc 2019-01-11 11:48:21 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

Note You need to log in before you can comment on or make changes to this bug.