[tripleo] Configuration Management without Puppet

Emilien Macchi emilien at redhat.com
Tue May 28 18:15:58 UTC 2019


On Tue, May 28, 2019 at 12:24 PM Clark Boylan <cboylan at sapwetik.org> wrote:
[...]

> I'm not sure if this is useful but what the Infra team did was to
> transplant all of its hiera data into /etc/ansible/hosts/host_vars and
> /etc/ansible/hosts/group_vars. Then we updated our puppetry to pull hiera
> data out of there. This means that puppet and ansible read the same data
> sources which has made transitioning things easy for us.
>

Yes this is useful to know, thanks for sharing.
In our case, we are not so worried about the source of data (it can be
anywhere really); but our challenge is how we manage the data in our Heat
templates and how the way it is exposed to our end-users will remain
backward compatible.

Example:
Right now, if you want to override parameter DEFAULT/foo in Glance API
config file you would do:

  ControllerExtraConfig:
    glance::config::glance_api_config:
      DEFAULT/foo:
        value: bar

With the new interface proposal it would be:

  ControllerExtraConfig:
    glance_api_config:
      DEFAULT:
        foo: bar

And the second challenge here is to maintain the hierarchies that we have
between layers of configuration (per service, per role, per nodes, etc),
knowing that Heat doesn't have a hash deep_merge function (yet) AFIK (happy
to be corrected here).
I think we can try to keep hiera now (which provides a nice way to do
parameters hierarchy) and keep the focus on stop using the Puppet OpenStack
modules logic, just build a new interface which directly lays down the
configuration (with Puppet now but something else later).
-- 
Emilien Macchi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-discuss/attachments/20190528/54ce2e78/attachment.html>


More information about the openstack-discuss mailing list