- Overview
- Module Description
- Setup - The basics of getting started with ibm_installation_manager
- Usage - Configuration options and additional functionality
- Reference - Classes and Parameters
- Limitations - OS compatibility, etc.
- Dependencies
- Development and Contributing
- Authors
Manages the installation of IBM Installation Manager (yo dawg?)
This module will install the IBM Installation Manager. Optionally, it can deploy the installation from a source such as HTTP or a local file path.
A type and provider is also included that can be used to manage the installation of IBM software from IBM packages (e.g. WebSphere, IHS).
Example usage for installing Installation Manager from a source archive from an HTTP repository:
class { 'ibm_installation_manager':
deploy_source => true,
source => 'http://internal.lan/packages/IM.zip',
}
Example usage for installing Installation Manager from an existing path on the filesystem. As in, an already extracted archive from IBM:
class { 'ibm_installation_manager':
source_dir => '/path/to/installation/IM'
}
Example usage for installing to a custom location:
class { 'ibm_installation_manager':
source => 'http://internal.lan/packages/IM.zip',
target => '/opt/myorg/IBM',
}
Example of using the included ibm_pkg
type. This will install a
WebSphere 8.5 package from an extracted source at /vagrant/ibm/websphere/
to
/opt/IBM/WebSphere85
ibm_pkg { 'com.ibm.websphere.NDTRIAL.v85':
ensure => 'present',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5000.20130514_1044',
target => '/opt/IBM/WebSphere85',
repository => '/vagrant/ibm/websphere/repository.config',
}
Example of using the included ibm_pkg
type with a custom response file.
ibm_pkg { 'com.ibm.websphere.NDTRIAL.v85':
ensure => 'present',
response => '/mnt/resources/was_response_file.xml',
}
Specifies whether this module should be responsible for deploying the source
package for Installation Manager. Valid values are true
and false
.
Defaults to false
Required if deploy_source
is true. If deploy_source
is true, a source
should be specified here. This can be an absolute path to the source or an
HTTP address. This expects a compressed archive from IBM (zip).
Absolute path to the directory to deploy the installer to and/or run out of.
Basically, where is the installc
binary?
Defaults to /opt/IBM/tmp
. If you extracted the archive yourself, you should
point this parameter to that location.
Absolute path to the base location that IBM Installation Manager will be
installed to. Defaults to /opt/IBM/InstallationManager
The user to run the installation as. Defaults to root
. Note that installing
as a different user will have weird affects. Consult IBM's documentation for
details. Basically, it'll be a self-contained installation, and that might
be undesirable.
The group to run the installation as. Defaults to root
. Note that installing
as a different user will have weird affects. Consult IBM's documentation for
details. Basically, it'll be a self-contained installation, and that might
be undesirable.
Options to pass to the installer. Defaults to -acceptLicense -s -log /tmp/IM_install.${timestamp}.log.xml -installationDirectory ${target}
A timeout for the installation. Basically, how long should we wait for Installation Manager to install, in seconds? It can take a while. Puppet's default is 300, which can easily be exceeded by Installation Manager. The module's default is 900. You may need to increase this if you run into issues where Puppet gives up (exeeded timeout) before the installation has completed.
A custom type called ibm_pkg
is provided that can be used to install
software with IBM Installation Manager. By default, this includes an imcl
provider, which uses the Installation Manager's imcl
command-line tool to
handle installation.
The resource does not currently handle upgrading packages in the traditional sense. Basically, the provider will make sure that the specified version or greater is installed. This is partly due to the nature of how IBM software is deployed (by a downloaded/extracted archive).
Valid values are present
and absent
. Defaults to present
Specifies the presence of the specified package.
Defaults to the resource title. This is only used for identifying the resource within Puppet, not the actual name of the IBM package.
This is optional. This should be the absolute path to the imcl
command-line
tool for IBM Installation Manager. By default, this will attempt to be
discovered by parsin /var/ibm/InstallationManager/installed.xml
on the
system. IBM's default location is
/opt/IBM/InstallationManager/eclipse/tools/imcl
The absolute path to the directory that you want to install the specified
package to. This maps to the imcl
argument -installationDirectory
.
If you're using a response file, this is optional. Otherwise, it is required.
The IBM package name. For example: com.ibm.websphere.IBMJAVA.v71
.
This is the first part of the traditional IBM full package name - before
the first underscore. If you're installing with a response file, this
parameter is optional. Otherwise, it is required.
The IBM version of the package. For example: 7.1.2000.20141116_0823
. This
is the second part of the traditional IBM full package name - after the
first underscore. If you're installing with a response file, this parameter
is optional. Otherwise, it is required.
The full path to the repository.config
file for installing this package.
When downloading and extracting a package from IBM, a repository.config
file
is provided. The value of this parameter should point to that. If you're
installing with a response file, this parameter is optional. Otherwise, it
is required.
Any custom options to pass to the imcl
tool for installing the package. This
is optional.
The absolute path to a response file to use for installing the package. If
you're using a response file, the package
, version
, target
, and
repository
parameters are optional. However, ensure that your response file
includes the needed values for these options. You can also mix and match.
This simply passes a response file to the imcl
tool.
The user to run the imcl
command as. Defaults to root
. Basically, what
user are we installing this as? Ensure that this user has the necessary
permissions for reading/writing to all the needed resources.
Note that installing as a different user will have weird affects. Consult IBM's documentation for details. Basically, it'll be a self-contained installation, and that might be undesirable. It won't share installation data with the rest of the system. You probably want to install as root.
Tested with RHEL 6 x86_64 and IBM Installation Manager 1.8.1 and 1.6.x
Tested on AIX 6.1 and 7.1
The installer will exit 0 even if it failed. Not a lot we can reasonably do about that.
ERROR: java.lang.IllegalStateException: No metadata found for installed
package com.ibm.cic.agent 1.6.2000.20130301_2248.
This likely means there's a stale /var/ibm
stuck around.
If you want the module to extract the Zip file for you:
You only need nanliu/staging if you want the module to extract the source for you.
If you're masochistic enough to use this software and feel up for it, I'd greatly appreciate contributions.
You can download trials of IBM's software from their website.
You'll need an account there - IBM doesn't make it easy to try their stuff.
Once there, look for the "IBM Installation Manager" section and find the
appropriate package for your platform. Probably something like
agent.installer.linux.gtk.x86_64_1.6.2000.20130301_2248.zip
for a standard
Linux box. It says PPC, but it appears to be x86_64.) It also says "gtk",
but you don't actually need X11 or GTK to use the thing (and this module
doesn't).
I'm particuarily interested in help with the custom types/providers. Someone with more Ruby experience and familiarity with Puppet's type/provider API would be a huge help.
Josh Beard [email protected]