Description of problem: I followed the official documentation to customize Hiera data per profile. I tried to use the NovaComputeExtraConfig but without success, data were never passed to the compute. If we have a look in templates/puppet/compute-puppet.yaml, we can see that NovaComputeExtraConfig variable is never stored in Hiera datafile. hiera: hierarchy: - '"%{::uuid}"' - heat_config_%{::deploy_config_name} - compute - ceph_cluster # provided by CephClusterConfig - ceph - all_nodes # provided by allNodesConfig - RedHat # Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1236143 - common - cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre datafiles: common: raw_data: {get_file: hieradata/common.yaml} ceph: raw_data: {get_file: hieradata/ceph.yaml} compute: raw_data: {get_file: hieradata/compute.yaml} It should be: hiera: hierarchy: - '"%{::uuid}"' - heat_config_%{::deploy_config_name} - compute - compute_extraconfig - ceph_cluster # provided by CephClusterConfig - ceph - all_nodes # provided by allNodesConfig - RedHat # Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1236143 - common - cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre datafiles: compute_extraconfig: mapped_data: {get_param: NovaComputeExtraConfig} common: raw_data: {get_file: hieradata/common.yaml} ceph: raw_data: {get_file: hieradata/ceph.yaml} compute: raw_data: {get_file: hieradata/compute.yaml} Version-Release number of selected component (if applicable): python-rdomanager-oscplugin-0.0.10-8.el7ost.noarch CDN version How reproducible: Add extra values for NovaComputeExtraConfig in the YAML file. Actual results: Values are never send to the compute. Expected results: Values should be send to the compute. Additional info: Same issue with Ceph profile (I assume it's the same for Block and Swift profiles).
CephStorageExtraConfig is missing from templates/puppet/compute-puppet.yaml and templates/overcloud-without-mergepy.yaml files.
Sorry, not in templates/puppet/compute-puppet.yaml but in templates/puppet/ceph-storage-puppet.yaml
I think your bug is valid from what I see in your output. Though when I look in tripleo-heat-templates upstream, I'm seeing mapped_data: {get_param: CephStorageExtraConfig} mapped_data: {get_param: NovaComputeExtraConfig} Which is something I think you're missing. Could we have your version of tripleo-heat-templates? I'm going to investigate if there is an upstream patch we need to backport downstream. Thanks!
Sure, please find them in attachment. Thanks !
Created attachment 1116661 [details] Rackspace templates
Requesting blocker, but if we got no more info we won't hold on this.
Version: openstack-tripleo-heat-templates-0.8.6-71.el7ost.noarch
This was originally reported via https://bugzilla.redhat.com/show_bug.cgi?id=1243971 which was closed. Then https://bugzilla.redhat.com/show_bug.cgi?id=1269223 was raised, as it seems we were missing some of the patches I referenced in the original bugs downstream. The latter bug is fixed in openstack-tripleo-heat-templates-0.8.6-78.el7ost, so given that this bug was reported against 0.8.6-71 this may be a duplicate which is now fixed?
So, verifying openstack-tripleo-heat-templates-0.8.6-78.el7ost by inspection against the original list of patches I provided in bug #1243971 shows we're still missing some patches (that original bug should not have been closed without verifiction IMHO) https://review.openstack.org/#/c/196046 - OK https://review.openstack.org/#/c/196059/ - OK https://review.openstack.org/#/c/202693/ - MISSING https://review.openstack.org/#/c/202694/ - MISSING https://review.openstack.org/#/c/202695/ - MISSING https://review.openstack.org/#/c/197908/ - MISSING Also https://review.openstack.org/#/c/188772/ is missing in openstack-tripleo-puppet-elements-0.0.2-1.el7ost.noarch.rpm - we need to verify by inspection if 40-hiera-datafiles contains that fix in our images, I suspect it may not.
To clarify comment #11 - NovaComputeExtraConfig will work if you upgrade to openstack-tripleo-heat-templates-0.8.6-78.el7ost, but a further update is required to enable the ExtraConfig parameters for BlockStorage, ObjectStorage and CephStorage roles. Also, we require an update to 40-hiera-datafiles, which is only needed if you need to pass complex data structures via hieradata (lists/maps or json strings), not simple key/value pairs.
I used the following custom.yaml: parameter_defaults: NovaComputeExtraConfig: nova::compute::reserved_host_memory: 2048 CephStorageExtraConfig: ceph::profile::params::osd_journal_size: 2048 [root@overcloud-compute-0 ~]# grep reserved_host_memory /etc/nova/nova.conf #reserved_host_memory_mb=512 reserved_host_memory_mb=2048 [root@overcloud-cephstorage-0 ~]# grep osd_journal_size /etc/ceph/ceph.conf osd_journal_size = 2048
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. https://rhn.redhat.com/errata/RHBA-2016-0264.html