Updating puppet-tripleo

Updating puppet-tripleo

The puppet manifests that currently define overcloud node configuration are moved from the tripleo-heat-templates to new puppet-tripleo class definitions as part of the composable services approach. In next iterations, all service configuration should be moved also to puppet-tripleo. This section considers the addition of the ntp definition to puppet-tripleo.

Folder structure convention

Services should be defined in the services folder, depending on the service purpose.

manifests
  profile/base      ---> To host all services not using pacemaker.
    time            ---> Specific folder for time services (NTP, timezone, Chrony among others).
      ntp.pp        ---> Puppet manifest to configure the service.

Note

For further information related to the current folders manifests structure refer to the puppet-tripleo repository.

Adding the puppet manifest

This step will reference how the puppet logic should be organized in puppet-tripleo.

Inside the manifests folder, add the service manifest following the folder structure (manifests/profile/base/time/ntp.pp) as:

class tripleo::profile::base::time::ntp (
  #We get the configuration step in which we can choose which steps to execute
  $step          = hiera('step'),
) {
  #step assigned for core modules.
  #(Check for further referencies about the configuration steps)
  #https://opendev.org/openstack/tripleo-heat-templates/src/branch/master/puppet/services/README.rst
  if ($step >= 2){
    #We will call the NTP puppet class and assign our configuration values.
    #If needed additional Puppet packages can be added/installed by using the repo tripleo-puppet-elements
    if count($ntpservers) > 0 {
      include ::ntp
    }
  }
}

If users have followed all the previous steps, they should be able to configure their services using the composable services within roles guidelines.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.