The db2_profile::database class contains all the Puppet code to install, create and populate an IBM DB2 database. This class is an easy way to get started. It contains the following steps:

All these steps have a default implementation. This implementation is suitable to get started with. These classed all have parameters you can customize through hiera values. The defaults are specified in the module’s data/default.yaml file.

But sometimes this is not enough and you would like to add some extra definitions, you can, for example, add a Puppet class to be executed after the systctl stage is done and before the limits is done. You can do this by adding the next line to your yaml data:

db2_profile::database::before_sysctl:   my_profile::my_extra_class

or after:

db2_profile::database::after_sysctl:   my_profile::my_extra_class

If you want to, you can also skip this provided class:

db2_profile::database::sysctl:   skip

Or provide your own implementation:

db2_profile::database::sysctl:   my_profile::my_own_implementation

This mechanism can be used for all named stages and makes it easy to move from an easy setup with a running standard database to a fully customized setup using a lot of your own classes plugged in.