Overview

The defined type mq_install::fixoack allows you to install specified fixpacks on your system. The fixpacks will be added on top of your software installation managed by mq_install::software.

The simples way to use it is:

mq_install::fixpack{'9.1.0.1':
  source_locaation => '/nfs_share/software'
}

Based on this puppet code, Puppet® will install fixpack 9.1.0.1. Because the installation of the fixpack requires all MQ processes to be stopped, this code will stop ALL MQ managers when it finds it needs to install the fixpack.

When the `mq_install::fixpack’ is part of a larger set of Puppet® code also managing MQ managers and queues, that definition will restart the required MQ queue managers.

Fixpack updates

When you specify a higher fixpack version, Puppet® will detect this and start the fixpack upgrade scenario. The upgrade scenario consists of:

1) Shutting down all running queue managers 2) Installing the requested fixpack

WARNING The mq_install::fixpack class does not automatically restart the queue managers again. In general, this is taken care of by mq_install::autostart. If mq_install::autostart is not part of your manifest, you must ensure your own steps to make sure the queue managers are restarted again.

Fixpack rollback

When you specify a fixpack version that is lower than the fixpack that is currently installed, Puppet® will detect this and start the rollback procedure. Puppet® supports rolling one fixpack at a time. This means that Puppet® will only allow you to rollback (e.g., uninstall) the latest installed fixpack.

Puppet will throw an error when:

  • You specified a lower version than currenly installed, but also a fixpack version that was not previously installed.
  • You specified a lower version than currenly installed, but a version that is older than the previous fixpack version that was installed.

Attributes

Attribute Name Short Description
logoutput If you want to see the output of the exec resources in the type, you can set this value to true.
service_window The service_window Puppet® will use to execute a specified upgrade.
source_location The location of the MQ software.
tmp_dir This defined type uses a temporary directory.
version The title of his resource is used to specify the required version of the fixpack to be installed.

version

The title of his resource is used to specify the required version of the fixpack to be installed. It can for example be 9.1.0.1. Type: String[1]

Back to overview of fixpack

service_window

The service_window Puppet® will use to execute a specified upgrade.

When Puppet® detects a mismatch between the current version and the version in your manifest, it will start to execute an upgrade. But in general, you want some control over when that happens. You don’t want Puppet® to stop your queue managers during regular production hours to do the upgrade.

The service_window parameter allows this control. The parameter can have the following values:

  • DIRECT
  • INSTALL_ONLY
  • WHEN_NOT_RUNNING
  • A time range

DIRECT

DIRECT is the normal behavior of Puppet® (e.g., not the default of the parameter). When a manifest change is detected, Puppet® will immediately execute the upgrade and, in this process, stop the MQ queue managers.

INSTALL_ONLY

This is the default value for this class. In this case, Puppet® will use the specified manifest values ONLY on an initial install. When Puppet® detects MQ is already running, it will leave it like it is and NOT do the upgrade. You can use, for example, a bolt plan or task to execute the upgrade at a moment that suits your requirements.

WHEN_NOT_RUNNING

Only apply this class when there is no queue manager running.

time range

When you have a specific service window wherein Puppet® is allowed to do the MQ shutdown and execute the upgrade procedure, you can specify a time range. An example of a time range would be: ‘01:00 - 02:00 Type: String[1]`

Default:'INSTALL_ONLY'

Back to overview of fixpack

source_location

The location of the MQ software.

Here is an example on how to use this:

class { '::mq_install::...':
  ...
  source_location => '/software',
  ...
}

Type: String[1]

Back to overview of fixpack

tmp_dir

This defined type uses a temporary directory. By default this is \tmp. If you want to use an other directory for this, you must specify this parameter.

Here is an example on how to use this:

class { '::mq_install::...':
  ...
  tmp_dir => '/my_tmp_dir',
  ...
}

On systems with a secured /tmp direcory, you MUST specify the tmp_dir parameter and specify a directory that puppet is allowed to execute scripts from. It must also have enough space to receive the extracted MQ installation kit.

Type: String[1]

Default:'/tmp'

Back to overview of fixpack

logoutput

If you want to see the output of the exec resources in the type, you can set this value to true. The default is on_failure.

Here is an example on how to use this:

class { '::mq_install::...':
  ...
  logoutput => true,
  ...
}

Type: Variant[Enum['on_failure'],Boolean]

Default:'on_failure'

Back to overview of fixpack