Bug 1631009

Summary: Customers cannot configure additional settings on the undercloud if the config is not exposed
Product: Red Hat OpenStack Reporter: Andreas Karis <akaris>
Component: instack-undercloudAssignee: Alex Schultz <aschultz>
Status: CLOSED ERRATA QA Contact: Arik Chernetsky <achernet>
Severity: low Docs Contact:
Priority: low    
Version: 13.0 (Queens)CC: aschultz, lmarsh, mburns
Target Milestone: z3Keywords: Triaged, ZStream
Target Release: 13.0 (Queens)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: instack-undercloud-8.4.3-5.el7ost Doc Type: Enhancement
Doc Text:
In prior versions, undercloud hieradata overrides could be used to tune some service configurations using the <service>::config options similar to the overcloud. However, this functionality was not available for all deployed OpenStack services. With this version, any configuration values not currently available can be updated via the <service>::config hieradata.
Story Points: ---
Clone Of:
: 1631012 1734551 (view as bug list) Environment:
Last Closed: 2018-11-13 22:28:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1734551    

Description Andreas Karis 2018-09-19 17:10:16 UTC
Description of problem:
Requesting the following feature enhancement: custom configuration for the undercloud

The undercloud allows us to push custom hierdata to make configuration
persistent:
~~~
undercloud.conf:
hieradata_override = /home/stack/custom_hiera.yaml
~~~

However, for https://access.redhat.com/articles/3597351 , I need to modify a custom ironic parameter for which no
puppet manifest exists yet (at least by grepping, I cannot find it):
~~~
ironic::config::ironic_config:
  DEFAULT/rpc_thread_pool_size:
    value: 8
~~~
However, for this to work, I need class ironic::config to be loaded.

The overcloud offers an elegant way to include custom classes, e.g.:
~~~
[stack@undercloud-7 ~]$ cat
/usr/share/openstack-tripleo-heat-templates/puppet/manifests/overcloud_controller_pacemaker.pp
# Copyright 2015 Red Hat, Inc.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.

if hiera('step') >= 4 {
  hiera_include('controller_classes', [])
}

$package_manifest_name =
join(['/var/lib/tripleo/installed-packages/overcloud_controller_pacemaker',
hiera('step')])
package_manifest{$package_manifest_name: ensure => present}
~~~

And then use:
https://access.redhat.com/solutions/2328671
~~~
parameter_defaults:
  controllerExtraConfig:
    neutron::config::server_config:
      quotas/quota_port:
        value: '-1'
      quotas/quota_subnet:
        value: '-1'
      quotas/quota_network:
        value: '-1'

    controller_classes:
      - ::neutron::config
~~~

According to Alex Schulz, this is currently not supported and this would be a simple patch to
always include the various ::<class>::config methods but we need to
understand what is required for customers and why.

Comment 1 Shelley Dunne 2018-10-12 15:36:34 UTC
Updating Target Milestone to z3 for all Modified low bugs

Comment 10 errata-xmlrpc 2018-11-13 22:28:50 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.

https://access.redhat.com/errata/RHBA-2018:3587