websphere_application_server
Version information
This version is compatible with:
- Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x
- Puppet >= 5.5.10 < 7.0.0
- , , ,
Plans:
- create_repo
This module is licensed for use with Puppet Enterprise. You may also evaluate this module for up to 90 days.Learn More
Start using this module
Add this module to your Puppetfile:
mod 'puppetlabs-websphere_application_server', '2.1.0'
Learn more about managing modules with a PuppetfileDocumentation
websphere_application_server
Table of Contents
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with websphere_application_server
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
Description
Manages the deployment and configuration of IBM WebSphere Application Server. This module manages the following IBM Websphere cell types:
- Deployment Managers (DMGR)
- Application Servers
- IHS Servers
Setup
Beginning with websphere_application_server
To get started, declare the base class on any server that will use this module: DMGR, App Servers, or IHS.
As root user (default)
Please make sure the selected user has root permissions
class { 'websphere_application_server':
user => 'webadmin',
group => 'webadmins',
base_dir => '/opt/IBM',
}
As non-root user
The primary difference here being the base_dir
. Set this to a dir your user has write permission to and IBM Installation Manager takes care of the rest.
class { 'websphere_application_server':
user => 'webadmin',
group => 'webadmins',
user_home => '/home/webadmin',
base_dir => '/home/webadmin/IBM',
}
or you can also use this structure to install websphere_application_server
class { 'websphere_application_server':
user => 'webadmin',
group => 'webadmins',
manage_user => false,
manage_group => false,
}
Usage
Creating a websphere_application_server instance
The word "instance" used throughout this module basically refers to a complete installation of WebSphere Application Server. Ideally, you'd just have a single instance of WebSphere on a given system. This module, however, does offer the flexibility to have multiple installations. This is useful for cases where you want two different major versions available (for example, WAS 7 and WAS 8).
To install WebSphere using an installation zip:
Note: The example below assumes that the WebSphere installation zip file has been downloaded and extracted to /mnt/myorg/was
and contains repository.config
.
websphere_application_server::instance { 'WebSphere85':
target => '/opt/IBM/WebSphere/AppServer',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5000.20130514_1044',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
repository => '/mnt/myorg/was/repository.config',
}
See [manifests/instance.pp][] or [REFERENCE.md][] for more more examples.
FixPacks
It's common to install an IBM "FixPack" after the base installation.
In the following example, the WebSphere 8.5.5.4 fixpack is installed onto the existing Websphere 8.5.5.0 installation from the above example. The require
metaparameter is applied to enforce dependency ordering.
ibm_pkg { 'WebSphere_8554':
ensure => 'present',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5004.20141119_1746',
target => '/opt/IBM/WebSphere/AppServer',
repository => '/mnt/myorg/was_8554/repository.config',
package_owner => 'wsadmin',
package_group => 'wsadmins',
require => Websphere_application_server::Instance['WebSphere85'],
}
An example of installing Java 7 into the same Websphere installation as above:
ibm_pkg { 'Java7':
ensure => 'present',
package => 'com.ibm.websphere.IBMJAVA.v71',
version => '7.1.2000.20141116_0823',
target => '/opt/IBM/WebSphere/AppServer',
repository => '/mnt/myorg/java7/repository.config',
package_owner => 'wsadmin',
package_group => 'wsadmins',
require => Websphere_application_server::Package['WebSphere_8554'],
}
Installation dependencies
The basic setup of the WebSphere Application Server has dependencies in the software installation steps. The module requires the types to be installed in the same manifest in the order of class -> instance -> fixpack -> java.
See the example provided below:
file { [
'/opt/log',
'/opt/log/websphere',
'/opt/log/websphere/appserverlogs',
'/opt/log/websphere/applogs',
'/opt/log/websphere/wasmgmtlogs',
]:
ensure => 'directory',
owner => 'wsadmin',
group => 'wsadmins',
}
class { 'websphere_application_server':
user => 'webadmin',
group => 'webadmins',
base_dir => '/opt/IBM',
}
websphere_application_server::instance { 'WebSphere85':
target => '/opt/IBM/WebSphere/AppServer',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5000.20130514_1044',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
repository => '/mnt/myorg/was/repository.config',
}
ibm_pkg { 'WebSphere_8554':
ensure => 'present',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5004.20141119_1746',
target => '/opt/IBM/WebSphere/AppServer',
repository => '/mnt/myorg/was_8554/repository.config',
package_owner => 'wsadmin',
package_group => 'wsadmins',
require => Websphere_application_server::Instance['WebSphere85'],
}
ibm_pkg { 'Java7':
ensure => 'present',
package => 'com.ibm.websphere.IBMJAVA.v71',
version => '7.1.2000.20141116_0823',
target => '/opt/IBM/WebSphere/AppServer',
repository => '/mnt/myorg/java7/repository.config',
package_owner => 'wsadmin',
package_group => 'wsadmins',
require => Websphere_application_server::Package['WebSphere_8554'],
}
The fixpack must reference a valid instance that is declared in the same manifest. Likewise, the java install must reference a valid fixpack installation in the same manifest.
Creating Profiles
Once the base software is installed, create a profile. The profile is the runtime environment. A server can potentially have multiple profiles. A DMGR profile is ultimately what defines a given "cell" in WebSphere.
In the following example, a DMGR profile, PROFILE_DMGR_01
is created with associated cell and node_name. Use the subscribe
metaparameter to set the relationship and ordering with the base installations. Any changes to the base installation trigger a refresh to websphere_application_server::profile::dmgr
, if necessary.
websphere_application_server::profile::dmgr { 'PROFILE_DMGR_01':
instance_base => '/opt/IBM/WebSphere/AppServer',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
cell => 'CELL_01',
node_name => 'dmgrNode01',
subscribe => [
Ibm_pkg['Websphere_8554'],
Ibm_pkg['Java7'],
],
}
When you create a DMGR profile, the module uses Puppet's exported resources to export a file resource that contains the information needed for application servers to federate with it [TODO: what does 'it' refer to?]. This includes the SOAP port and the host name (fqdn).
The DMGR profile collects any exported websphere_node
, websphere_web_server
, and websphere_jvm_log
resources by default.
An example of an Application Server profile:
websphere_application_server::profile::appserver { 'PROFILE_APP_001':
instance_base => '/opt/IBM/WebSphere/AppServer',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
cell => 'CELL_01',
template_path => '/opt/IBM/WebSphere/AppServer/profileTemplates/managed',
dmgr_host => 'dmgr.example.com',
node_name => 'appNode01',
manage_sdk => true,
sdk_name => '1.7.1_64',
}
Creating a Cluster
After you've created profiles on the DMGR and on an application server, you can create a cluster, and then add application servers as members of the cluster.
Associate a cluster with a DMGR profile:
websphere_application_server::cluster { 'MyCluster01':
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
dmgr_profile => 'PROFILE_DMGR_01',
cell => 'CELL_01',
require => Websphere_application_server::Profile::Dmgr['PROFILE_DMGR_01'],
}
In this example, a cluster called MyCluster01
will be created. Provide the profile_base
and dmgr_profile
to specify where to create this cluster. Additionally, use the require
metaparameter to set a relationship between the profile and the cluster. Ensure that the profile is managed before attempting to manage the cluster.
Adding cluster members:
There are two ways to add cluster members: Either the DMGR can explicitly declare each member, or the members can export a resource to add themselves.
In the following example, a websphere_application_server::cluster::member
resource is defined on the application server and exported.
@@websphere_application_server::cluster::member { 'AppServer01':
ensure => 'present',
cluster => 'MyCluster01',
node_name => 'appNode01',
cell => 'CELL_01',
jvm_maximum_heap_size => '512',
jvm_verbose_mode_class => true,
jvm_verbose_garbage_collection => false,
total_transaction_timeout => '120',
client_inactivity_timeout => '20',
threadpool_webcontainer_max_size => '75',
runas_user => 'webadmin',
runas_group => 'webadmins',
}
In the above example, the DMGR declared a websphere_application_server::cluster
defined type, which automatically collects any exported resources that match its cell. Every time Puppet runs on the DMGR, it will search for exported resources to declare on that host.
On the application server, the "@@" prefixed to the resource type exports that resource, which can be collected by the DMGR the next time Puppet runs.
Configuring the instance
Variables
This module provides a type to manage WebSphere environment variables.
Node-scoped variable:
websphere_variable { 'CELL_01:node:appNode01':
ensure => 'present',
variable => 'LOG_ROOT',
value => '/var/log/websphere/wasmgmtlogs/appNode01',
scope => 'node',
node_name => 'appNode01',
cell => 'CELL_01',
dmgr_profile => 'PROFILE_APP_001',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
require => Websphere_application_server::Profile::Appserver['PROFILE_APP_001'],
}
In the example below, a variable called LOG_ROOT
is set
for the node appNode01
.
Server scoped variable:
# NOTE: This will cause a FAILURE during the first Puppet run because the
# cluster member has not yet been created on the DMGR.
websphere_variable { 'CELL_01:server:appNode01:AppServer01':
ensure => 'present',
variable => 'LOG_ROOT',
value => '/opt/log/websphere/appserverlogs',
scope => 'server',
server => 'AppServer01',
node_name => 'appNode01',
cell => 'CELL_01',
dmgr_profile => 'PROFILE_APP_001',
profile_base => $profile_base,
user => $user,
require => Websphere_application_server::Profile::Appserver['PROFILE_APP_001'],
}
In the example above is a server scoped variable for the
AppServer01
server. The AppServer01
server was created as part of the
websphere_application_server::cluster::member
defined type.
The server-scoped variables cannot be managed until/unless a corresponding cluster member exists on the DMGR.
Optionally, these variables can be declared on the DMGR. This allow setting relationships between the cluster member and the variable resource. However, this sacrifices some of the dynamic nature of the module.
JVM Logs
This module provides a websphere_jvm_log
type that can be used to manage
JVM logging properties, such as log rotation criteria.
websphere_jvm_log { "CELL_01:appNode01:node:AppServer01":
profile => 'PROFILE_APP_001',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
cell => 'CELL_01',
scope => 'node',
node_name => 'appNode01',
server => 'AppServer01',
out_filename => '/tmp/SystemOut.log',
out_rollover_type => 'BOTH',
out_rollover_size => '7',
out_maxnum => '200',
out_start_hour => '13',
out_rollover_period => '24',
err_filename => '/tmp/SystemErr.log',
err_rollover_type => 'BOTH',
err_rollover_size => '7',
err_maxnum => '3',
err_start_hour => '13',
err_rollover_period => '24',
require => Websphere_application_server::Profile::Appserver['PROFILE_APP_001'],
}
In the example above, JVM logs are created for the appNode01
node. Log customizations include filename
, rollover_type
, rollover_size
, maxnum
, start_hour
, and rollover_period
for both SystemOut and SystemErr logs.
JDBC Providers and Datasources
This module supports creating JDBC providers and data sources. It does not support the removal of JDBC providers or datasources or changing their configuration after creation.
JDBC Provider:
This example creates a JDBC provider called "Puppet Test", using Oracle, at node scope:
websphere_jdbc_provider { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'node',
cell => 'CELL_01',
node_name => 'appNode01',
server => 'AppServer01',
dbtype => 'Oracle',
providertype => 'Oracle JDBC Driver',
implementation => 'Connection pool data source',
description => 'Created by Puppet',
classpath => '${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar',
}
JDBC Datasource:
This example creates a datasource, using the JDBC provider we created, at node scope:
websphere_jdbc_datasource { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'node',
cell => 'CELL_01',
node_name => 'appNode01',
server => 'AppServer01',
jdbc_provider => 'Puppet Test',
jndi_name => 'myTest',
data_store_helper_class => 'com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper',
container_managed_persistence => true,
url => 'jdbc:oracle:thin:@//localhost:1521/sample',
description => 'Created by Puppet',
}
JDBC Provider at cell scope:
websphere_jdbc_provider { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'cell',
cell => 'CELL_01',
dbtype => 'Oracle',
providertype => 'Oracle JDBC Driver',
implementation => 'Connection pool data source',
description => 'Created by Puppet',
classpath => '${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar',
}
JDBC Datasource at cell scope:
websphere_jdbc_datasource { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'cell',
cell => 'CELL_01',
jdbc_provider => 'Puppet Test',
jndi_name => 'myTest',
data_store_helper_class => 'com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper',
container_managed_persistence => true,
url => 'jdbc:oracle:thin:@//localhost:1521/sample',
description => 'Created by Puppet',
}
IHS
This module has basic support for managing IBM HTTP Server (IHS) in the context of WebSphere.
In the example below, creating an ihs instance installs IHS to /opt/IBM/HTTPServer
, installs the WebSphere plug-ins for IHS, and creates a server instance. By default, this module automatically exports a websphere_node
and websphere_web_server
resource via the websphere_application_server::ihs::server
defined type. These exported resources are collected by the DMGR and realized. By default, an IHS server is automatically set up in the DMGR's cell.
websphere_application_server::ihs::instance { 'HTTPServer':
target => '/opt/IBM/HTTPServer',
package => 'com.ibm.websphere.IHSILAN.v85',
version => '8.5.5000.20130514_1044',
repository => '/mnt/myorg/ihs/repository.config',
install_options => '-properties user.ihs.httpPort=80',
user => 'webadmin',
group => 'webadmins',
manage_user => false,
manage_group => false,
log_dir => '/opt/log/websphere/httpserver',
admin_username => 'httpadmin',
admin_password => 'password',
webroot => '/opt/web',
}
ibm_pkg { 'Plugins':
ensure => 'present',
target => '/opt/IBM/Plugins',
repository => '/mnt/myorg/plugins/repository.config',
package => 'com.ibm.websphere.PLGILAN.v85',
version => '8.5.5000.20130514_1044',
require => Websphere_application_server::Ihs::Instance['HTTPServer'],
}
websphere_application_server::ihs::server { 'test':
target => '/opt/IBM/HTTPServer',
log_dir => '/opt/log/websphere/httpserver',
plugin_dir => '/opt/IBM/Plugins/config/test',
plugin_base => '/opt/IBM/Plugins',
cell => 'CELL_01',
config_file => '/opt/IBM/HTTPServer/conf/httpd_test.conf',
access_log => '/opt/log/websphere/httpserver/access_log',
error_log => '/opt/log/websphere/httpserver/error_log',
listen_port => '10080',
require => Ibm_pkg['Plugins'],
}
Accessing the DMGR Console
After Websphere is installed and DMGR is configured, you can access the DMGR console via a web browser at a URL such as:
http://<host>:9060/ibm/console/unsecureLogon.jsp
Reference
Facts
The following facts are provided by this module:
Fact name | Description |
---|---|
instance_name | This is the name of a WebSphere instance; the base directory name. |
instance_target | The full path to where a particular instance is installed. |
instance_user | The user that "owns" this instance. |
instance_group | The group that "owns" this instance. |
instance_profilebase | The full path to where profiles for this instance are located. |
instance_version | The version of WebSphere an instance is running. |
instance_package | The package name a WebSphere instance was installed from. |
websphere_profiles | A comma-separated list of profiles discovered on a system across instances. |
websphere_profile_cell_node_soap | The SOAP port for an instance. This is particularly relevant on the DMGR, so that App servers can federate with it. |
Examples
Assuming we've installed a WebSphere instance called "WebSphere85" to a custom location:
websphere85_group => webadmins
websphere85_name => WebSphere85
websphere85_package => com.ibm.websphere.NDTRIAL.v85
websphere85_profile_base => /opt/myorg/IBM/WebSphere85/AppServer/profiles
websphere85_target => /opt/myorg/IBM/WebSphere85/AppServer
websphere85_user => webadmin
websphere85_version => 8.5.5004.20141119_1746
websphere_base_dir => /opt/myorg/IBM
websphere_profile_dmgr_01_cell_01_appnode01_soap => 8878
websphere_profile_dmgr_01_cell_01_node_dmgr_01_soap => 8879
websphere_profiles => PROFILE_DMGR_01
More Information
See REFERENCE.md for all other reference documentation.
Limitations
Tested and developed with IBM WebSphere Application Server Network Deployment.
Tested and developed with IBM WebSphere 8.5.0.x and 8.5.5.x.
For an extensive list of supported operating systems, see metadata.json
Development
WebSphere is a large software stack, and this module manages only some of its core functions. See CONTRIBUTING.md for information on contributing.
Contributors
- Josh Beard beard@puppetlabs.com
- Gabe Schuyler gabe@puppetlabs.com
- Jonathan Hooker
- For more, see the list of contributors.
Reference
Table of Contents
Classes
websphere_application_server
: Manage setup for WebSphere installation and management
Defined types
websphere_application_server::cluster
: Manage WebSphere clusters.websphere_application_server::cluster::member
: Defined type to manage cluster members and their service.websphere_application_server::ihs::instance
: Define to manage the installation of IBM HTTPServer (IHS) instanceswebsphere_application_server::ihs::server
: Manage web server (http) instances on IHSwebsphere_application_server::instance
: Manages the base installation of a WebSphere instance.websphere_application_server::ownership
: Manages the ownership of a specified path.websphere_application_server::profile::appserver
: Manages WAS application servers.websphere_application_server::profile::dmgr
: Manages a DMGR profile.websphere_application_server::profile::service
: Manages the node service for WAS profiles.
Resource types
websphere_app_server
: Manage the existence of WebSphere Application Servers'websphere_cluster
: Manages the creation or removal of WebSphere server clusters.websphere_cluster_member
: Manages members of a WebSphere server cluster.websphere_cluster_member_service
: Manages the a WebSphere cluster member's service.websphere_federate
: Manages the federation of WebSphere application servers with a cell.websphere_jdbc_datasource
: Manages datasources.websphere_jdbc_datasource_custom_property
: This manages WebSphere JDBC datasource custom properties.websphere_jdbc_datasource_jaas_auth_data
: This manages WebSphere JDBC JAAS Auth Data. Also known as auth aliases.websphere_jdbc_provider
: Manages the existence of a WebSphere JDBC provider. The current provider does not manage parameters post-creation.websphere_jvm_custom_property
: This manages WebSphere jvm custom properties.websphere_jvm_log
: This manages a WebSphere JVM Logging Properties'websphere_namespace_binding
: This manages WebSphere namespace bindings.websphere_node
: Manages the an "unmanaged" WebSphere node in a cell.websphere_sdk
: This manages WebSphere SDK/JDK versions'websphere_security_custom_property
: This manages a WebSphere Global Security Custom Property'websphere_shared_library
: This manages WebSphere Shared libraries.websphere_variable
: This manages a WebSphere environment variablewebsphere_web_server
: Manages WebSphere web servers in a cell.
Plans
websphere_application_server::create_repo
websphere_application_server::pe_server_setup
websphere_application_server::provision_machines
websphere_application_server::puppet_agents_setup
Classes
websphere_application_server
Manage setup for WebSphere installation and management
Parameters
The following parameters are available in the websphere_application_server
class.
base_dir
Data type: Any
The base directory containing IBM Software. Valid options: an absolute path to a directory.
Default value: '/opt/IBM'
user
Data type: Any
The user name that owns and executes the WebSphere installation. Valid options: a string containing a valid user name.
Default value: 'websphere'
group
Data type: Any
The permissions group for the WebSphere installation. Valid options: a string containing a valid group name.
Default value: 'websphere'
user_home
Data type: Any
Specifies the home directory for the specified user if manage_user
is true
. Valid options: an absolute path to a directory.
Default value: '/opt/IBM'
manage_user
Data type: Any
Specifies whether the class manages the user specified in user
. Valid options: boolean.
Default value: true
manage_group
Data type: Any
Specifies whether the class manages the group specified in group
. Valid options: boolean.
Default value: true
Defined types
websphere_application_server::cluster
Manage WebSphere clusters.
Examples
Create a simple cluster
websphere_application_server::cluster { 'MyCluster01':
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
dmgr_profile => 'PROFILE_DMGR_01',
cell => 'CELL_01',
require => Websphere_application_server::Profile::Dmgr['PROFILE_DMGR_01'],
}
Parameters
The following parameters are available in the websphere_application_server::cluster
defined type.
dmgr_profile
Data type: Any
Required. The DMGR profile under which this cluster should be created. The wsadmin
tool is used from this profile.
profile_base
Data type: Any
Path to the base directory for your profiles.
cell
Data type: Any
Required. The cell that this cluster should be created under.
user
Data type: Any
The user that should run the wsadmin
commands. Defaults to $::websphere_application_server::user
Default value: $::websphere_application_server::user
cluster
Data type: Any
The name of the cluster to manage. Defaults to the resource title.
Default value: $title
collect_members
Data type: Any
Specifies whether exported resources relating to WebSphere clusters should be collected by this instance of the defined type. If true, websphere_application_server::cluster::member
, websphere_cluster_member
, and websphere_cluster_member_service
resources that match this cell are collected. The use case for this is so application servers, for instance, can export themselves as a cluster member in a certain cell. When this defined type is evaluated by a DMGR, those can automatically be collected.
Default value: true
wsadmin_user
Data type: Any
Optional. The username for wsadmin
authentication if security is enabled.
Default value: undef
wsadmin_pass
Data type: Any
Optional. The password for wsadmin
authentication if security is enabled.
Default value: undef
dmgr_host
Data type: Any
The resolvable hostname for the DMGR that this cluster exists on. This is needed for collecting cluster members. Defaults to $::fqdn
.
Default value: $::fqdn
ensure
Data type: Any
Default value: 'present'
websphere_application_server::cluster::member
This is intended to be exported by an application server and collected by a DMGR. However, you could just declare it on a DMGR.
Examples
Manage a single cluster member
websphere_application_server::cluster::member { 'AppServer01':
ensure => 'present',
cluster => 'MyCluster01',
node_name => 'appNode01',
cell => 'CELL_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
dmgr_profile => 'PROFILE_DMGR_01',
}
Parameters
The following parameters are available in the websphere_application_server::cluster::member
defined type.
profile_base
Data type: Any
Required. The full path to the profiles directory where the dmgr_profile
can be found. The IBM default is /opt/IBM/WebSphere/AppServer/profiles
.
cluster
Data type: Any
Required. The name of the cluster that this member should be managed under.
node_name
Data type: Any
The node that this cluster member should be created on.
cell
Data type: Any
Required. Specifies the cell where the cluster is, under which this member should be managed.
dmgr_profile
Data type: Any
Required. The name of the DMGR profile to create this cluster member under.
cluster_member_name
Data type: Any
Specifies the name for this cluster member. Defaults to the resource title.
Default value: $title
ensure
Data type: Any
Specifies whether this cluster member should exist or not.
Default value: 'present'
user
Data type: Any
Optional. The user to run the wsadmin
command as. Defaults to 'root'.
Default value: $::websphere_application_server::user
runas_user
Data type: Any
Optional. Manages the runAsUser
for a cluster member.
Default value: $::websphere_application_server::user
runas_group
Data type: Any
Optional. Manages the runAsGroup
for a cluster member.
Default value: $::websphere_application_server::group
client_inactivity_timeout
Data type: Any
Optional. Manages the clientInactivityTimeout for the TransactionService.
Default value: undef
gen_unique_ports
Data type: Any
Optional. Boolean. Specifies the genUniquePorts
value when adding a cluster member.
Default value: undef
jvm_maximum_heap_size
Data type: Any
Optional. Manages the maximumHeapSize
setting for the cluster member's JVM.
Default value: undef
jvm_verbose_mode_class
Data type: Any
Optional. Boolean. Manages the verboseModeClass
setting for the cluster member's JVM
Default value: undef
jvm_verbose_garbage_collection
Data type: Any
Optional. Boolean. Manages the verboseGarbageCollection
setting for the cluster member's JVM
Default value: undef
jvm_verbose_mode_jni
Data type: Any
Optional. Boolean. Manages the verboseModeJNI
setting for the cluster member's JVM
Default value: undef
jvm_initial_heap_size
Data type: Any
Optional. Manages the initialHeapSize
setting for the cluster member's JVM.
Default value: undef
jvm_run_hprof
Data type: Any
Optional. Boolean. Manages the runHProf
setting for the cluster member's JVM.
Default value: undef
jvm_hprof_arguments
Data type: Any
Optional. Manages the hprofArguments
setting for the cluster member's JVM.
Default value: undef
jvm_debug_mode
Data type: Any
Optional. Manages the debugMode
setting for the cluster member's JVM.
Default value: undef
jvm_debug_args
Data type: Any
Optional. Manages the debugArgs
setting for the cluster member's JVM.
Default value: undef
jvm_executable_jar_filename
Data type: Any
Optional. Manages the executableJARFilename
setting for the cluster member's JVM.
Default value: undef
jvm_generic_jvm_arguments
Data type: Any
Optional. Manages the genericJvmArguments
setting for the cluster member's JVM.
Default value: undef
jvm_disable_jit
Data type: Any
Optional. Manages the disableJIT
setting for the cluster member's JVM.
Default value: undef
replicator_entry
Data type: Any
This parameter is inactive.
Default value: undef
total_transaction_timeout
Data type: Any
Optional. Manages the totalTranLifetimeTimeout
for the Application Server.
Default value: undef
threadpool_webcontainer_min_size
Data type: Any
Optional. Manages the minimumSize
setting for the WebContainer ThreadPool.
Default value: undef
threadpool_webcontainer_max_size
Data type: Any
Optional. Manages the maximumSize
setting for the WebContainer ThreadPool.
Default value: undef
umask
Data type: Any
Optional. Manages the ProcessExecution
umask for a cluster member.
Default value: undef
wsadmin_user
Data type: Any
Optional. The username for wsadmin
authentication if security is enabled.
Default value: undef
wsadmin_pass
Data type: Any
Optional. The password for wsadmin
authentication if security is enabled.
Default value: undef
weight
Data type: Any
Optional. Manages the cluster member weight (memberWeight
) when adding a cluster member.
Default value: undef
manage_service
Data type: Any
Specifies whether the corresponding service for the cluster member should be managed here or not. This uses the websphere_cluster_member_service
type to do so.
Default value: true
dmgr_host
Data type: Any
The DMGR host to add this cluster member to. This is required if you're exporting the cluster member for a DMGR to collect. Otherwise, it's optional.
Default value: undef
websphere_application_server::ihs::instance
Define to manage the installation of IBM HTTPServer (IHS) instances
Examples
Install an instance of IBM HTTP Server
websphere_application_server::ihs::instance { 'HTTPServer':
target => '/opt/IBM/HTTPServer',
package => 'com.ibm.websphere.IHSILAN.v85',
version => '8.5.5000.20130514_1044',
repository => '/mnt/myorg/ihs/repository.config',
install_options => '-properties user.ihs.httpPort=80',
user => 'webadmin',
group => 'webadmins',
manage_user => false,
manage_group => false,
log_dir => '/opt/log/websphere/httpserver',
admin_username => 'httpadmin',
admin_password => 'password',
webroot => '/opt/web',
}
Parameters
The following parameters are available in the websphere_application_server::ihs::instance
defined type.
base_dir
Data type: Any
Specifies the full path to the base directory that IHS and IBM instances should be installed to. The IBM default is /opt/IBM
.
Default value: $::websphere_application_server::base_dir
target
Data type: Any
The target directory to where this instance of IHS should be installed to. The IBM default is /opt/IBM/HTTPServer
.
The module default is ${base_dir}/${title}
, where $title
is the title of this resource. So if we declared it as such:
websphere_application_server::ihs::instance { 'HTTPServer85': }
And assumed IBM defaults, it would be installed to /opt/IBM/HTTPServer85
.
Default value: undef
package
Data type: Any
Required in the absence of a response file. The IBM package name to install for the HTTPServer installation. This is the first part (before the first underscore) of IBM's full package name.
For example, a full name from IBM looks like: com.ibm.websphere.IHSILAN.v85_8.5.5000.20130514_1044
. The package name is the first part of that. In this example, com.ibm.websphere.IHSILAN.v85
.
This corresponds to the repository metadata provided with IBM packages.
Default value: undef
version
Data type: Any
Required in the absence of a response file. The IBM package version to install for the HTTPServer installation. This is the second part (after the first underscore) of IBM's full package name.
For example, a full name from IBM looks like: com.ibm.websphere.IHSILAN.v85_8.5.5000.20130514_1044
. The package version is the second part of that. In this example, 8.5.5000.20130514_1044
This corresponds to the repository metadata provided with IBM packages.
Default value: undef
repository
Data type: Any
Required in the absence of a response file. The full path to the installation repository file to install IHS from. This should point to the location that the IBM package is extracted to. When extracting an IBM package, a repository.config
is provided in the base directory.
Example: /mnt/myorg/ihs/repository.config
Default value: undef
response_file
Data type: Any
Optional. Specifies the full path to a response file to use for installation. The response file must already be created and available for installation. Typically, a response file includes, at a minimum, a package name, version, target, and repository information.
Default value: undef
install_options
Data type: Any
Specifies options to be appended to the base set of options.
When using a response file, the base options are: input /path/to/response/file
.
When not using a response file, the base set of options are: install ${package}_${version} -repositories ${repository} -installationDirectory ${target} -acceptLicense
.
Default value: undef
imcl_path
Data type: Any
The full path to the imcl
tool provided by the IBM Installation Manager.
The IBM default is /opt/IBM/InstallationManager/eclipse/tools/imcl
.
This will attempt to be auto-discovered by the ibm_pkg
provider, which parses IBM's data file in /var/ibm
to determine where InstallationManager is installed.
You can leave this blank unless imcl
was not auto discovered.
Default value: undef
manage_user
Data type: Any
Specifies whether this instance should manage the user specified by the user
parameter.
Default value: true
manage_group
Data type: Any
Specifies whether this instance should manage the group specified by the group
parameter.
Default value: true
user
Data type: Any
Specifies the user that should own this instance of IHS.
Default value: $::websphere_application_server::user
group
Data type: Any
Specifies the user that should own this instance of IHS.
Default value: $::websphere_application_server::group
user_home
Data type: Any
Specifies the home directory for the user
. This is only relevant if you're managing the user with this instance (e.g. not via the base class). So if manage_user
is true
, this is relevant.
Default value: $::websphere_application_server::user_home
log_dir
Data type: Any
Specifies the full path to where log files should be placed. In websphere_application_server::ihs::instance
, this only manages the directory.
Default value: undef
webroot
Data type: Any
Specifies the full path to where individual document roots will be stored. This is basically the base directory for doc roots. In websphere_application_server::ihs::instance
, this only manages the directory.
Default value: undef
admin_listen_port
Data type: Any
Specifies the port that the IHS administration is listening on.
Default value: '8008'
adminconf_template
Data type: Any
Specifies an ERB template to use for the resulting admin.conf
file. By default, the module includes one. The value of this parameter should refer to a Puppet-accessible source, like $module_name/template.erb
.
Default value: undef
replace_config
Data type: Any
Specifies whether Puppet should continue to manage the admin.conf
configuration after it's already placed it. If the file does not exist, Puppet creates it accordingly. If it does already exist, Puppet does not replace it.
This parameter might yield unexpected results. If IBM provides an admin.conf
file by default, then setting this parameter to false
causes the module to never manage the file.
Default value: true
server_name
Data type: Any
Specifies the server's name that will be used in the HTTP configuration for the ServerName
option for the admin configuration.
Default value: $::fqdn
manage_htpasswd
Data type: Any
Specifies whether this defined type should manage the htpasswd
authentication for the administrator credentials. These are used by WebSphere consoles to query and manage an IHS instance.
If true
, the htpasswd
utility is used to manage the credentials. If false
, the user is responsible for configuring this.
Default value: true
admin_username
Data type: Any
The administrator username that a WebSphere Console can use for authentication to query and manage this IHS instance.
Default value: 'httpadmin'
admin_password
Data type: Any
The administrator password that a WebSphere Console can use for authentication to query and manage this IHS instance.
Default value: 'password'
websphere_application_server::ihs::server
Manage web server (http) instances on IHS
Examples
Set up an IHS Server
websphere_application_server::ihs::server { 'test':
target => '/opt/IBM/HTTPServer',
log_dir => '/opt/log/websphere/httpserver',
plugin_dir => '/opt/IBM/Plugins/config/test',
plugin_base => '/opt/IBM/Plugins',
cell => 'CELL_01',
config_file => '/opt/IBM/HTTPServer/conf/httpd_test.conf',
access_log => '/opt/log/websphere/httpserver/access_log',
error_log => '/opt/log/websphere/httpserver/error_log',
listen_port => '10080',
require => Ibm_pkg['Plugins'],
}
Parameters
The following parameters are available in the websphere_application_server::ihs::server
defined type.
target
Data type: Any
Required. Specifies the full path to the IHS installation that this server should belong to.
Example: /opt/IBM/HTTPServer
status
Data type: Any
Ensure status for the server service.
Default value: 'running'
httpd_config
Data type: Any
Specifies the full path to the HTTP configuration file to manage. Assembled as ${target}/conf/httpd_${title}.conf
.
Default value: undef
user
Data type: Any
The user that should own and run this server instance. The service will be managed as this user. This also corresponds to the "User" option in the HTTP configuration.
Default value: $::websphere_application_server::user
group
Data type: Any
The group that should own and run this server instance. This also corresponds to the "Group" option in the HTTP configuration.
Default value: $::websphere_application_server::group
docroot
Data type: Any
Specifies the full path to the document root for this server instance. Assembled as ${target}/htdocs
.
Default value: undef
instance
Data type: Any
This parameter is inactive. Defaults to the resource's title.
Default value: $title
httpd_config_template
Data type: Any
Specifies a Puppet-readable location for a template to use for the HTTP configuration. One is provided, but this allows you to use your own custom template. Assembled as ${module_name}/ihs/httpd.conf.erb
.
Default value: "${module_name}/ihs/httpd.conf.erb"
timeout
Data type: Any
Specifies the value for Timeout
.
Default value: '300'
max_keep_alive_requests
Data type: Any
Specifies the value for MaxKeepAliveRequests
.
Default value: '100'
keep_alive
Data type: Any
Specifies the value for KeepAlive
. Valid values are On
or Off
.
Default value: 'On'
keep_alive_timeout
Data type: Any
Specifies the value for KeepAliveTimeout
.
Default value: '10'
thread_limit
Data type: Any
Specifies the value for ThreadLimit
.
Default value: '25'
server_limit
Data type: Any
Specifies the value for ServerLimit
.
Default value: '64'
start_servers
Data type: Any
Specifies the value for StartServers
.
Default value: '1'
max_clients
Data type: Any
Specifies the value for MaxClients
.
Default value: '600'
min_spare_threads
Data type: Any
Specifies the value for MinSpareThreads
.
Default value: '25'
max_spare_threads
Data type: Any
Specifies the value for MaxSpareThreads
.
Default value: '75'
threads_per_child
Data type: Any
Specifies the value for ThreadsPerChild
.
Default value: '25'
max_requests_per_child
Data type: Any
Specifies the value for MaxRequestsPerChild
.
Default value: '25'
limit_request_field_size
Data type: Any
Specifies the value for LimitRequestFieldSize
.
Default value: '12392'
listen_address
Data type: Any
Specifies the address for the Listen
HTTP option. To listen on all available addresses, set to an asterisk (*).
Default value: $::fqdn
listen_port
Data type: Any
Specifies the port for the Listen
HTTP option.
Default value: '10080'
server_admin_email
Data type: Any
Specifies the value for the ServerAdmin
e-mail address
Default value: 'user@example.com'
server_name
Data type: Any
Specifies the value for the ServerName
HTTP option. Typically, an HTTP ServerName option will look like:
ServerName host:port
This specifies the host part of that.
Default value: $::fqdn
server_listen_port
Data type: Any
Specifies the port value for the ServerName
HTTP option. See the server_name
parameter above for more information.
Default value: '80'
pid_file
Data type: Any
Specifies the base filename for a PID file. Defaults to the resource's title. This isn't the full path, just the filename.
Default value: "${title}.pid"
replace_config
Data type: Any
Specifies whether Puppet should replace this server's HTTP configuration once it's present. If the file doesn't exist, Puppet creates it. If this parameter is set to true
, Puppet ensures that the configuration file matches what is described. If this value is false
, Puppet ignores the file's contents. We recommend that you leave this set to true
and manage the config file through Puppet exclusively.
Default value: true
directory_index
Data type: Any
Specifies the DirectoryIndex
for this instance. Should be a string that has space-separated filenames.
Example: index.html index.html.var
Default value: 'index.html index.html.var'
log_dir
Data type: Any
Specifies the full path to where access/error logs should be stored. Assembled as ${target}/logs
.
Default value: undef
access_log
Data type: Any
The filename for the access log.
Default value: 'access_log'
error_log
Data type: Any
The filename for the error log.
Default value: 'error_log'
export_node
Data type: Any
Specifies whether a websphere_node
resource should be exported. This is intended to be used for DMGRs to collect to create an unmanaged node.
Default value: true
export_server
Data type: Any
Specifies whether a websphere_web_server
resource should be exported for this server. This allows a DMGR to collect it to create a web server instance.
Default value: true
node_name
Data type: Any
Required if export_node
is true
. Specifies the node name to use for creation on a DMGR.
Default value: $::fqdn
node_hostname
Data type: Any
Specifies the resolvable address for this server for creating the node. The DMGR host needs to be able to reach this server at this address.
Default value: $::fqdn
node_os
Data type: Any
Specifies the operating system for this server. This is used for the DMGR to create an unmanaged node for this server. We currently only support 'aix' and 'linux'.
Default value: undef
cell
Data type: Any
Required if export_node
is true
. The cell that this node should be a part of.
Default value: undef
admin_username
Data type: Any
This is required if export_server
is true. Specifies the administrator username that a DMGR can query and manage this server with.
Default value: 'httpadmin'
admin_password
Data type: Any
This is required if export_server
is true. Specifies the administrator password that a DMGR can query and manage this server with.
Default value: 'password'
plugin_base
Data type: Any
Specifies the full path to the plugin base directory.
Default value: '/opt/IBM/Plugins'
propagate_keyring
Data type: Any
Specifies whether the plugin keyring should be propagated from the DMGR to this server after the web server instance is created on the DMGR. This is only relevant if export_server
is true
.
Default value: true
dmgr_host
Data type: Any
This is required if you're exporting the server for a DMGR to collect. The DMGR host to add this server to.
Default value: undef
websphere_application_server::instance
Manages the base installation of a WebSphere instance.
Examples
Install an instance of AppServer version 8
websphere_application_server::instance { 'WebSphere85':
target => '/opt/IBM/WebSphere/AppServer',
package => 'com.ibm.websphere.NDTRIAL.v85',
version => '8.5.5000.20130514_1044',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
repository => '/mnt/myorg/was/repository.config',
}
Install AppServer version 9
websphere_application_server::instance { 'WebSphere90':
target => '/opt/IBM/WebSphere/AppServer',
package => 'com.ibm.websphere.ND.v90',
version => '9.0.0.20160526_1854',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
jdk_package_name => 'com.ibm.websphere.IBMJAVA.v71',
jdk_package_version => '7.1.2000.20141116_0823',
repository => '/mnt/myorg/was/repository.config',
}
Install using an response file
websphere_application_server::instance { 'WebSphere85':
response => '/mnt/myorg/was/was85_response.xml',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
}
Parameters
The following parameters are available in the websphere_application_server::instance
defined type.
base_dir
Data type: Any
This should point to the base directory that WebSphere instances should be installed to. IBM's default is /opt/IBM
Default value: undef
target
Data type: Any
The full path where this instance should be installed. The IBM default is '/opt/IBM/WebSphere/AppServer'. The module default for target
is "${base_dir}/${title}/AppServer", where title
refers to the title of the resource.
Default value: undef
package
Data type: Any
This is the first part (before the first underscore) of IBM's full package name. For example, a full name from IBM looks like: "com.ibm.websphere.NDTRIAL.v85_8.5.5000.20130514_1044". The package name for this example is com.ibm.websphere.NDTRIAL.v85". This corresponds to the repository metadata provided with IBM packages. This parameter is required if a response file is not provided.
Default value: undef
version
Data type: Any
This is the second part (after the first underscore) of IBM's full package name. For example, a full name from IBM looks like: "com.ibm.websphere.NDTRIAL.v85_8.5.5000.20130514_1044". The package version in this example is "8.5.5000.20130514_1044". This corresponds to the repository metadata provided with IBM packages. This parameter is required if a response file is not provided.
Default value: undef
repository
Data type: Any
The full path to the installation repository file to install WebSphere from. This should point to the location that the IBM package is extracted to. When extracting an IBM package, a repository.config
is provided in the base directory. Example: /mnt/myorg/was/repository.config
Default value: undef
response_file
Data type: Any
Specifies the full path to a response file to use for installation. It is the user's responsibility to have a response file created and available for installation. Typically, a response file will include, at a minimum, a package name, version, target, and repository information.
Default value: undef
install_options
Data type: Any
Specifies options to be appended to the base set of options. When using a response file, the base options are: input /path/to/response/file
. When not using a response file, the base set of options are:install ${package}_${version} -repositories ${repository} -installationDirectory ${target} -acceptLicense
.
Default value: undef
imcl_path
Data type: Any
The full path to the imcl
tool provided by the IBM Installation Manager. The ibm_pkg
provider attempts to automatically discover this path by parsing IBM's data file in /var/ibm
to determine where InstallationManager is installed.
Default value: undef
profile_base
Data type: Any
Specifies the full path to where WebSphere profiles will be stored. The IBM default is /opt/IBM/WebSphere/AppServer/profiles
.
Default value: undef
jdk_package_name
Data type: Any
Starting with WebSphere 9, you must specify the JDK package you wish to install alongside WebSphere AppServer. Like the package
parameter, this is the IBM package name. Example: 'com.ibm.websphere.IBMJAVA.v71'
Default value: undef
jdk_package_version
Data type: Any
The version string for the JDK you would like to install. Example: '7.1.2000.20141116_0823'
Default value: undef
manage_user
Data type: Any
Specifies whether this instance should manage the user specified by the user
parameter.
Default value: false
manage_group
Data type: Any
Specifies whether this instance should manage the group specified by the group
parameter.
Default value: false
user
Data type: Any
Specifies the user that should own this instance of WebSphere.
Default value: $::websphere_application_server::user
group
Data type: Any
Specifies the group that should own this instance of WebSphere.
Default value: $::websphere_application_server::group
user_home
Data type: Any
Specifies the home directory for the user
. This is only relevant if you're managing the user with this instance (that is, not via the base class). So if manage_user
is true
, this is relevant. Defaults to $target
Default value: undef
websphere_application_server::ownership
We provide this for a couple of reasons:
- IBM software wants to be installed as root. It's possible to install as a different user, but the Installation Manager (the package manager) data won't know about that installation. To keep things centralized so that we can reliably query it, we install as root.
- Since we installed as root, the instance is "owned" by root. This seems to cause some configuration tasks to fail to run, even if the "profiles" are owned by the service account. E.g. some tasks attempt to create file locks within the instance directory that's owned by root.
- Basically, we need to install as root and then make sure the thing gets owned by the service account afterwards.
- Ultimately, this is what IBM documents - a series of 'chown' on various directories.
- See also
- http://www-01.ibm.com/support/knowledgecenter/SSAW57_6.1.0/com.ibm.websphere.nd.multiplatform.doc/info/ae/ae/tpro_nonrootpro.html?cp=SSAW57_6.1.0%2F3-4-0-10-4-1
- http://www-10.lotus.com/ldd/portalwiki.nsf/dx/Installing_and_Configuring_WebSphere_Portal_v8_as_a_non-root_user
- http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/tsec_isprfchg.html
- ftp://ftp.software.ibm.com/software/iea/content/com.ibm.iea.infosphere_is/infosphere_is/8.5/configuration/ConfigWebSphere.pdf
Parameters
The following parameters are available in the websphere_application_server::ownership
defined type.
user
Data type: Any
Required. Specifies the user that should own this path. All files and directories under path
will be owned by this user.
group
Data type: Any
Required. Specifies the group that should own this path. All files and directories under path
will be owned by this group.
path
Data type: Any
The full path to the directory whose ownership should be managed. Defaults to the resource title.
Default value: $title
websphere_application_server::profile::appserver
Manages WAS application servers.
Examples
Create a basic AppServer profile
websphere_application_server::profile::appserver { 'PROFILE_APP_001':
instance_base => '/opt/IBM/WebSphere/AppServer',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
cell => 'CELL_01',
template_path => '/opt/IBM/WebSphere/AppServer/profileTemplates/managed',
dmgr_host => 'dmgr.example.com',
node_name => 'appNode01',
manage_sdk => true,
sdk_name => '1.7.1_64',
}
Parameters
The following parameters are available in the websphere_application_server::profile::appserver
defined type.
instance_base
Data type: Any
Required. The full path to the installation of WebSphere that this profile should be created under. The IBM default is '/opt/IBM/WebSphere/AppServer'.
profile_base
Data type: Any
Required. The full path to the base directory of profiles. The IBM default is '/opt/IBM/WebSphere/AppServer/profiles'.
cell
Data type: Any
Required. The cell name to create. For example: 'CELL_01'.
node_name
Data type: Any
Required. The name for this "node". For example: 'appNode01'.
profile_name
Data type: Any
The name of the profile. The directory that gets created will be named this. Example: 'PROFILE_APP_01' or 'appProfile01'. Recommended to keep this alpha-numeric.
Default value: $title
user
Data type: Any
The user that should own this profile.
Default value: $::websphere_application_server::user
group
Data type: Any
The group that should own this profile.
Default value: $::websphere_application_server::group
dmgr_host
Data type: Any
The address for the DMGR host.
Default value: undef
dmgr_port
Data type: Any
The SOAP port that should be used for federation. You normally don't need to specify this, as it's handled by exporting and collecting resources.
Default value: undef
template_path
Data type: Any
Should point to the full path to profile templates for creating the profile.
Default value: undef
options
Data type: Any
The options that are passed to manageprofiles.sh to create the profile. If you specify a value for options, none of the defaults are used. Defaults to '-create -profileName ${profile_name} -profilePath ${profile_base}/${profile_name} -templatePath ${_template_path} -nodeName ${node_name} -hostName ${::fqdn} -federateLater true -cellName standalone' For application servers, the default cell name is standalone. Upon federation (which we aren't doing as part of the profile creation), the application server federates with the specified cell.
Default value: undef
manage_federation
Data type: Any
Specifies whether federation should be managed by this defined type or not. If not, the user is responsible for federation. The websphere_federate
type is used to handle the federation. Federation, by default, requires a data file to have been exported by the DMGR host and collected by the application server. This defined type collects any exported datafiles that match the DMGR host and cell.
Default value: true
manage_service
Data type: Any
Specifies whether the service for the app profile should be managed by this defined type instance. In IBM terms, this is startNode.sh and stopNode.sh.
Default value: true
manage_sdk
Data type: Any
Specifies whether SDK versions should be managed by this defined type instance or not. Essentially, when managed here, it sets the default SDK for servers created under this profile. This is only relevant if manage_federation
is true
.
Default value: false
sdk_name
Data type: Any
The SDK name to set if manage_sdk
is true
. This parameter is required if manage_sdk
is true
. Example: 1.71_64. Refer to the details for the websphere_sdk
resource type for more information. This is only relevant if manage_federation
and manage_sdk
are true
.
Default value: undef
wsadmin_user
Data type: Any
Optional. The username for wsadmin
authentication if security is enabled.
Default value: undef
wsadmin_pass
Data type: Any
Optional. The password for wsadmin
authentication if security is enabled.
Default value: undef
websphere_application_server::profile::dmgr
Manages a DMGR profile.
Examples
Create a basic Deployment Manager profile
websphere_application_server::profile::dmgr { 'PROFILE_DMGR_01':
instance_base => '/opt/IBM/WebSphere/AppServer',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
cell => 'CELL_01',
node_name => 'dmgrNode01',
}
Parameters
The following parameters are available in the websphere_application_server::profile::dmgr
defined type.
instance_base
Data type: Any
Required. The full path to the installation of WebSphere that this profile should be created under. The IBM default is '/opt/IBM/WebSphere/AppServer'.
cell
Data type: Any
Required. The cell name to create. For example: 'CELL_01'.
node_name
Data type: Any
Required. The name for this "node". For example: 'dmgrNode01'.
profile_base
Data type: Any
Required. The full path to the base directory of profiles. The IBM default is '/opt/IBM/WebSphere/AppServer/profiles'.
Default value: undef
profile_name
Data type: Any
The name of the profile. The directory that gets created will be named this. Example: 'PROFILE_DMGR_01' or 'dmgrProfile01'. Recommended to keep this alpha-numeric.
Default value: $title
user
Data type: Any
The user that should own this profile.
Default value: $::websphere_application_server::user
group
Data type: Any
The group that should own this profile.
Default value: $::websphere_application_server::group
dmgr_host
Data type: Any
The address for this DMGR system. Should be an address that other hosts can connect to.
Default value: $::fqdn
template_path
Data type: Any
Should point to the full path to profile templates for creating the profile.
Default value: undef
options
Data type: Any
String. Defaults to '-create -profileName ${profile_name} -profilePath ${profile_base}/${profile_name} -templatePath ${_template_path} -nodeName ${node_name} -hostName ${::fqdn} -cellName ${cell}'. These are the options that are passed to manageprofiles.sh to create the profile.
Default value: undef
manage_service
Data type: Any
Specifies whether the service for the DMGR profile should be managed by this defined type instance. In IBM terms, this is startManager.sh and stopManager.sh.
Default value: true
manage_sdk
Data type: Any
Specifies whether SDK versions should be managed by this defined type instance. When managed here, it sets the default SDK for servers created under this profile.
Default value: false
sdk_name
Data type: Any
The SDK name to set if manage_sdk is true
. This parameter is required if manage_sdk is true
. By default, it has no value set. Example: 1.71_64. Refer to the details for the websphere_sdk
resource type for more information.
Default value: undef
collect_nodes
Data type: Any
Specifies whether to collect exported websphere_node
resources. This is useful for instances where unmanaged servers export websphere_node
resources to dynamically add themselves to a cell. Refer to the details for the websphere_node
resource type for more information.
Default value: true
collect_web_servers
Data type: Any
Specifies whether to collect exported websphere_web_server
resources. This is useful for instances where IHS servers export websphere_web_server
resources to dynamically add themselves to a cell. Refer to the details for the websphere_web_server
resource type for more information
Default value: true
collect_jvm_logs
Data type: Any
Specifies whether to collect exported websphere_jvm_log
resources. This is useful for instances where application servers export websphere_jvm_log
resources to manage their JVM logging properties. Refer to the details for the websphere_jvm_log
resource type for more information.
Default value: true
wsadmin_user
Data type: Any
Optional. The username for wsadmin
authentication if security is enabled.
Default value: undef
wsadmin_pass
Data type: Any
Optional. The password for wsadmin
authentication if security is enabled.
Default value: undef
websphere_application_server::profile::service
Manages the node service for WAS profiles.
Examples
Manage a Deployment Manager profile service
websphere_application_server::profile::service { 'PROFILE_DMGR_01':
type => 'dmgr',
ensure => 'running',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
}
Parameters
The following parameters are available in the websphere_application_server::profile::service
defined type.
type
Data type: Any
Specifies the type of service. Valid values are 'dmgr' and 'app'. DMGR profiles are managed via IBM's startManager and stopManager scripts. Application servers are managed via the startNode and stopNode scripts.
profile_base
Data type: Any
Required. The full path to the base directory of profiles. The IBM default is '/opt/IBM/WebSphere/AppServer/profiles'.
profile_name
Data type: Any
The name of the profile. The directory that gets created will be named this. Example: 'PROFILE_APP_01' or 'appProfile01'. Recommended to keep this alpha-numeric.
Default value: $title
user
Data type: Any
The user that should own this profile.
Default value: 'root'
ensure
Data type: Any
Specifies the state of the service. Valid values are 'running' and 'stopped'.
Default value: 'running'
start
Data type: Any
Specifies a command to start the service with. This differs between DMGR hosts and Application Servers.
On a DMGR, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/startManager.sh -profileName ${profile_name}'
On an application server, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/startNode.sh'
Default value: undef
stop
Data type: Any
Specifies a command to stop the service with. This differs between DMGR hosts and Application Servers.
On a DMGR, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/stopManager.sh -profileName ${profile_name}'
On an application server, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/stopNode.sh'
Default value: undef
status
Data type: Any
Specifies a command to check the status of the service with. This differs between DMGR hosts and Application Servers.
On a DMGR, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/serverStatus.sh dmgr -profileName ${profile_name} | grep -q STARTED'
On an application server, the default is:
/bin/su - ${user} -c '${profile_base}/${profile_name}/bin/serverStatus.sh nodeagent -profileName ${profile_name} | grep -q STARTED'
Default value: undef
restart
Data type: Any
Specifies a command to restart the service with. By default, we do not define anything. Instead, Puppet will stop the service and start the service to restart it.
Default value: undef
wsadmin_user
Data type: Any
Optional. The username for wsadmin
authentication if security is enabled.
Default value: undef
wsadmin_pass
Data type: Any
Optional. The password for wsadmin
authentication if security is enabled.
Default value: undef
Resource types
websphere_app_server
Manage the existence of WebSphere Application Servers'
Properties
The following properties are available in the websphere_app_server
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_app_server
type.
dmgr_profile
Required. The name of the DMGR profile to create this application server under.
Examples: PROFILE_DMGR_01
or dmgrProfile01
"
name
namevar
The name of the application server to create or manage.
node_name
Required. The name of the node to create this server on. Refer to the
websphere_node
type for managing the creation of nodes.
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
Required. The full path to the profiles directory where the
dmgr_profile
can be found. The IBM default is
/opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_app_server
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
user
Optional. The user to run the wsadmin
command as. Defaults to "root"
Default value: root
wsadmin_pass
Optional. The password for wsadmin
authentication if security is
enabled.
wsadmin_user
Optional. The username for wsadmin
authentication if security is
enabled.
websphere_cluster
Manages the creation or removal of WebSphere server clusters.
Properties
The following properties are available in the websphere_cluster
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_cluster
type.
dmgr_profile
Required. The name of the DMGR profile to create this application server under.
Examples: PROFILE_DMGR_01
or dmgrProfile01
name
namevar
The name of the cluster to manage.
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
Required. The full path to the profiles directory where the
dmgr_profile
can be found. The IBM default is
/opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_cluster
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
user
Optional. The user to run the wsadmin
command as. Defaults to "root"
Default value: root
wsadmin_pass
Optional. The password for wsadmin
authentication if security is
enabled.
wsadmin_user
Optional. The username for wsadmin
authentication if security is
enabled.
websphere_cluster_member
Manages members of a WebSphere server cluster.
- TODO - Parameter validation
- Sane defaults for parameters
- Other things?
- Better documentation for params?
- Maybe make this take a hash instead of a million parameters?
Properties
The following properties are available in the websphere_cluster_member
type.
client_inactivity_timeout
Manages the clientInactivityTimeout for the TransactionService
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
jvm_debug_args
Manages the debugArgs setting for the cluster member's JVM
jvm_debug_mode
Manages the debugMode setting for the cluster member's JVM
jvm_disable_jit
Manages the disableJIT setting for the cluster member's JVM
jvm_executable_jar_filename
Manages the executableJarFileName setting for the cluster member's JVM
jvm_generic_jvm_arguments
Manages the genericJvmArguments setting for the cluster member's JVM
jvm_hprof_arguments
Manages the hprofArguments setting for the cluster member's JVM
jvm_initial_heap_size
Manages the initialHeapSize setting for the cluster member's JVM
Default value: 1024
jvm_maximum_heap_size
Manages the maximumHeapSize setting for the cluster member's JVM
Default value: 1024
jvm_run_hprof
Manages the runHProf setting for the cluster member's JVM
Default value: false
jvm_verbose_garbage_collection
Manages the verboseModeGarbageCollection setting for the cluster member's JVM
Default value: false
jvm_verbose_mode_class
Manages the verboseModeClass setting for the cluster member's JVM
Default value: false
jvm_verbose_mode_jni
Manages the verboseModeJNI setting for the cluster member's JVM
Default value: false
runas_group
Manages the runAsGroup for a cluster member
runas_user
Manages the runAsUser for a cluster member
threadpool_webcontainer_max_size
Manages the maximumSize setting for the WebContainer ThreadPool
threadpool_webcontainer_min_size
Manages the minimumSize setting for the WebContainer ThreadPool
total_transaction_timeout
Manages the totalTranLifetimeTimeout for the ApplicationServer
umask
Manages the ProcessExecution umask for a cluster member
Default value: 022
Parameters
The following parameters are available in the websphere_cluster_member
type.
cell
The name of the cell the cluster member belongs to
cluster
The name of the cluster
dmgr_host
The DMGR host to add this cluster member to.
This is required if you're exporting the cluster member for a DMGR to collect. Otherwise, it's optional.
dmgr_profile
The name of the DMGR profile to manage. E.g. PROFILE_DMGR_01
gen_unique_ports
Specifies whether the genUniquePorts when adding a cluster member
Default value: true
node_name
Required. The name of the node to add as a cluster member.
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
The absolute path to the profile base directory. E.g. /opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_cluster_member
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
replicator_entry
This parameter is inactive.
server
namevar
The server to add to the cluster
user
The user to run 'wsadmin' with
Default value: root
weight
Manages the cluster member weight (memberWeight) when adding a cluster member
Default value: 2
wsadmin_pass
Specifies the password for using 'wsadmin'
wsadmin_user
Specifies the username for using 'wsadmin'
websphere_cluster_member_service
Manages the a WebSphere cluster member's service.
- TODO - Parameter validation
- Sane defaults for parameters
- Other things?
- Better documentation for params?
Properties
The following properties are available in the websphere_cluster_member_service
type.
ensure
Valid values: stopped
, running
, false
, true
Aliases: "false"=>"stopped", "true"=>"running"
Valid values: running
or stopped
Defaults to running
. Specifies whether the service should be running or not.
Parameters
The following parameters are available in the websphere_cluster_member_service
type.
cell
The name of the cell the cluster member belongs to
cluster
Required. The cluster that the cluster member belongs to.
dmgr_host
The DMGR host to add this cluster member service to.
This is required if you're exporting the cluster member for a DMGR to collect. Otherwise, it's optional.
dmgr_profile
The name of the DMGR profile to manage. E.g. PROFILE_DMGR_01
name
namevar
The name of the cluster member that this service belongs to.
node_name
Required. The name of the node that this cluster member is on. Refer to
the websphere_node
type for managing the creation of nodes.
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
The absolute path to the profile base directory. E.g. /opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_cluster_member_service
resource. You will seldom need to specify this
--- Puppet will usually discover the appropriate provider for your platform.
user
Specifies the user to execute wsadmin as
Default value: root
wsadmin_pass
Specifies the password for using 'wsadmin'
wsadmin_user
Specifies the username for using 'wsadmin'
websphere_federate
By default, this resource expects that a data file will be available in
Puppet's $vardir
containing information about the DMGR cell to federate
with.
By default, this module's websphere::profile::dmgr
defined type will
export a file resource containing this information. The application
servers that have declared websphere::profile::appserver
will collect
that exported resource and place it under
${vardir}/dmgr_${dmgr_host}_${cell}.yaml
For example:
/var/opt/lib/pe-puppet/dmgr_dmgr.example.com_cell01.yaml
This is all
automatic behind the scenes.
To federate, the application server needs to know the DMGR SOAP port, which is included in this exported/collected file. Optionally, you may provide it as a parameter value if you're using this resource type directly.
Essentially, the provider for this resource type executes addNode.sh
to do
the federation.
Properties
The following properties are available in the websphere_federate
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_federate
type.
cell
Required. The name of the DMGR cell to federate with
dmgr_host
Required. The dmgr host to federate with
dmgr_profile
Optional. The dmgr_profile of the server to use for executing wsadmin commands. Will default to profile if not set.
node_name
Required. The node name to federate
options
Custom options to pass to addNode or removeNode.sh
password
The password for federation (for addNode.sh)
profile
namevar
Required. The profile to federate
profile_base
The base directory that profiles are stored. Example: /opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_federate
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
soap_port
The soap port to connect to for federation
user
User to run the federation commands with
Default value: root
username
The username for federation (for addNode.sh)
wsadmin_pass
Specifies the password for using 'wsadmin'
wsadmin_user
Specifies the username for using 'wsadmin'
websphere_jdbc_datasource
Manages datasources.
Examples
Create a datasource at the node scope
websphere_jdbc_datasource { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'node',
cell => 'CELL_01',
node_name => 'appNode01',
server => 'AppServer01',
jdbc_provider => 'Puppet Test',
jndi_name => 'myTest',
data_store_helper_class => 'com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper',
container_managed_persistence => true,
url => 'jdbc:oracle:thin:@//localhost:1521/sample',
description => 'Created by Puppet',
}
Properties
The following properties are available in the websphere_jdbc_datasource
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_jdbc_datasource
type.
cell
The name of the cell to create this application server on
cluster
The name of the cluster to create this application server on
component_managed_auth_alias
The alias used for database authentication at run time. This alias is only used when the application resource reference is using res-auth=Application.
String: Optional
container_managed_persistence
Valid values: true
, false
Use this data source in container managed persistence (CMP)
Boolean: true or false
Default value: true
data_store_helper_class
Example: 'com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper'
database
The database name for DB2 and Microsoft SQL Server.
This is only relevant when the 'data_store_helper_class' is one of: 'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper' 'com.ibm.websphere.rsadapter.MicrosoftSQLServerDataStoreHelper'
db2_driver
The driver for DB2.
This only applies when the 'data_store_helper_class' is 'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper'
db_port
The database server port.
This is only relevant when the 'data_store_helper_class' is one of: 'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper' 'com.ibm.websphere.rsadapter.MicrosoftSQLServerDataStoreHelper'
db_server
The database server address.
This is only relevant when the 'data_store_helper_class' is one of: 'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper' 'com.ibm.websphere.rsadapter.MicrosoftSQLServerDataStoreHelper'
description
A description for the data source
dmgr_profile
The dmgr profile that this should be created under" Example: dmgrProfile01"
jdbc_provider
The name of the JDBC Provider to use.
jndi_name
The JNDI name. This corresponds to the wsadmin argument '-jndiName'
Example: 'jdbc/foo'
name
namevar
The name of the datasource
node_name
The name of the node to create this application server on
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin'
Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_jdbc_datasource
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
scope
The scope to manage the JDBC Datasource at. Valid values are: node, server, cell, or cluster
server
The name of the server to create this application server on
url
JDBC URL for Oracle providers.
This is only relevant when the 'data_store_helper_class' is: 'com.ibm.websphere.rsadapter.Oracle11gDataStoreHelper'
Example: 'jdbc:oracle:thin:@//localhost:1521/sample'
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_jdbc_datasource_custom_property
This manages WebSphere JDBC datasource custom properties.
Examples
websphere_jdbc_datasource_custom_property { 'exampleCustomProperty':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
java_type => 'String',
jdbc_provider => 'ORACLE_JDBC_DRIVER_TEST_CLUSTER',
jdbc_datasource => 'TEST_DS_01',
property_value => 'ValueGoesHere',
description => 'Created by Puppet',
}
Properties
The following properties are available in the websphere_jdbc_datasource_custom_property
type.
description
The description of the datasource custom property.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this custom property should exist or not.
Default value: present
property_value
The value of the datasource custom property.
Parameters
The following parameters are available in the websphere_jdbc_datasource_custom_property
type.
cell
namevar
The name of the cell to create this application server on
cluster
namevar
The name of the cluster to create this application server on
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01
java_type
Specifies the Java lang type of this property.
jdbc_datasource
namevar
Required. The name of the JDBC Datasource to use.
jdbc_provider
namevar
The name of the JDBC Provider to use.
name
namevar
The name of the resource
node
namevar
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_jdbc_datasource_custom_property
resource. You will seldom need to
specify this --- Puppet will usually discover the appropriate provider for your platform.
scope
namevar
Required. The scope of this configuration. Valid values: cell, node, cluster, node group or server . If scope is node, the cell and the node must be specified in their parameters. If scope is cluster, the cell and the cluster must be specified in their parameters. If scope is server, the cell, the node, and the server must be specified in their parameters.
server
namevar
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_jdbc_datasource_jaas_auth_data
This manages WebSphere JDBC JAAS Auth Data. Also known as auth aliases.
Examples
websphere_jdbc_datasource_jaas_auth_data { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
user_id => 'User_test',
password => 'password123',
description => 'Created by Puppet',
}
Properties
The following properties are available in the websphere_jdbc_datasource_jaas_auth_data
type.
description
The description of the auth alias.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this JAAS auth data should exist or not.
Default value: present
password
The password of the auth alias.
user_id
The user id of the auth alias
Parameters
The following parameters are available in the websphere_jdbc_datasource_jaas_auth_data
type.
cell
namevar
The name of the cell to create this application server on
cluster
The name of the cluster to create this application server on
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01"
name
namevar
The name of the resource
node
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_jdbc_datasource_jaas_auth_data
resource. You will seldom need to
specify this --- Puppet will usually discover the appropriate provider for your platform.
server
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_jdbc_provider
Manages the existence of a WebSphere JDBC provider. The current provider does not manage parameters post-creation.
Examples
Create a JDBC provider
websphere_jdbc_provider { 'Puppet Test':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
scope => 'cell',
cell => 'CELL_01',
dbtype => 'Oracle',
providertype => 'Oracle JDBC Driver',
implementation => 'Connection pool data source',
description => 'Created by Puppet',
classpath => '${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar',
}
Properties
The following properties are available in the websphere_jdbc_provider
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_jdbc_provider
type.
cell
Required. The cell that this provider should be managed under.
classpath
The classpath for this provider. This corresponds to the wsadmin argument "-classpath"
Examples: "${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar" "${DB2_JCC_DRIVER_PATH}/db2jcc4.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar"
Consult IBM's documentation for valid classpaths.
cluster
Required if scope
is cluster.
dbtype
The type of database for the JDBC Provider. This corresponds to the wsadmin argument "-databaseType" Examples: DB2, Oracle
Consult IBM's documentation for the types of valid databases.
description
An optional description for this provider
dmgr_profile
Required. The name of the DMGR profile that this provider should be managed under.
implementation
The implementation type for this JDBC Provider. This corresponds to the wsadmin argument "-implementationType"
Examples: "Connection pool data source"
Consult IBM's documentation for valid implementation types.
name
namevar
The name of the provider.
nativepath
The nativepath for this provider. This corresponds to the wsadmin argument "-nativePath"
This can be blank.
Examples: "${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}"
Consult IBM's documentation for valid native paths.
node_name
Required if scope
is server or node.
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
Required. The full path to the profiles directory where the
dmgr_profile
can be found. The IBM default is
/opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_jdbc_provider
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
providertype
The provider type for this JDBC Provider. This corresponds to the wsadmin argument "-providerType"
Examples: "Oracle JDBC Driver" "DB2 Universal JDBC Driver Provider" "DB2 Using IBM JCC Driver"
Consult IBM's documentation for valid provider types.
scope
The scope to manage the JDBC Provider at. Valid values are: node, server, cell, or cluster
server
Required if scope
is server.
user
Optional. The user to run the wsadmin
command as. Defaults to 'root'
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_jvm_custom_property
This manages WebSphere jvm custom properties.
Examples
websphere_jvm_custom_property { 'exampleCustomProperty':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
server => 'AppServer_01',
property_value => 'ValueGoesHere',
description => 'Created by Puppet',
}
# DMGR
websphere_jvm_custom_property { '/opt/IBM/WebSphere/AppServer/profiles:PROFILE_DMGR_01:CELL_01:DMGR_01:dmgr:PuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'DMGR_01',
server => 'dmgr',
property_value => 'ValueGoesHere',
description => 'Created by Puppet',
}
# AppServer nodeagent
websphere_jvm_custom_property { '/opt/IBM/WebSphere/AppServer/profiles:PROFILE_DMGR_01:CELL_01:AppNode_01:nodeagent:PuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode_01',
server => 'nodeagent',
property_value => 'ValueGoesHere',
description => 'Created by Puppet',
}
Properties
The following properties are available in the websphere_jvm_custom_property
type.
description
The description of the datasource custom property.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this custom property should exist or not.
Default value: present
property_value
The value of the datasource custom property.
Parameters
The following parameters are available in the websphere_jvm_custom_property
type.
cell
namevar
The name of the cell to create this application server on
cluster
The name of the cluster to create this application server on
dmgr_host
The DMGR host to add this cluster member to.
This is required if you're exporting the cluster member for a DMGR to collect. Otherwise, it's optional.
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01
name
namevar
The name of the resource
node
namevar
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_jvm_custom_property
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
scope
namevar
Required. The scope of this configuration. Valid values: cell, node, cluster, node group or server . If scope is node, the cell and the node must be specified in their parameters. If scope is cluster, the cell and the cluster must be specified in their parameters. If scope is server, the cell, the node, and the server must be specified in their parameters.
server
namevar
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_jvm_log
This manages a WebSphere JVM Logging Properties'
Properties
The following properties are available in the websphere_jvm_log
type.
err_filename
The file System.err filename. Can include WebSphere variables
err_maxnum
Maximum number of historical log files. 1-200
err_rollover_period
Time period (log repeat time) for time-based log rotation. 1-24
err_rollover_size
Filesize in MB for log rotation
err_rollover_type
Valid values: size
, SIZE
, time
, TIME
, both
, BOTH
Type of log rotation to enable. Must be size, time, or both
err_start_hour
Start time for time-based log rotation. 1-24
out_filename
The file System.out filename. Can include WebSphere variables
out_maxnum
Maximum number of historical log files. 1-200
out_rollover_period
Time period (log repeat time) for time-based log rotation. 1-24
out_rollover_size
Filesize in MB for log rotation
out_rollover_type
Valid values: size
, SIZE
, time
, TIME
, both
, BOTH
Type of log rotation to enable. Must be size, time, or both
out_start_hour
Start time for time-based log rotation. 1-24
Parameters
The following parameters are available in the websphere_jvm_log
type.
cell
namevar
Required. The cell that the node or server belongs to.
dmgr_profile
The profile to run 'wsadmin' under. This can be an appserver profile or a DMGR profile as long as it can run 'wsadmin'.
Examples: dmgrProfile01, PROFILE_APP_001
node_name
namevar
Required. The node to manage properties on.
profile
The profile to run 'wsadmin' under. This can be an appserver profile or a DMGR profile as long as it can run 'wsadmin'.
Examples: dmgrProfile01, PROFILE_APP_001
profile_base
The base directory that profiles are stored. Example: /opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_jvm_log
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
scope
Valid values: node
, NODE
, server
, SERVER
The scope for the variable. Valid values: node or server
server
namevar
The server in the scope for this variable.
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_namespace_binding
This manages WebSphere namespace bindings.
Examples
websphere_namespace_binding { 'corbaPuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
binding_type => 'corba',
name_in_name_space => 'corbaPuppetTestNameInNameSpace',
string_to_bind => undef,
ejb_jndi_name => undef,
application_server_name => undef,
application_node_name => undef,
corbaname_url => 'corba.example.com',
federated_context => false,
provider_url => undef,
initial_context_factory => undef,
jndi_name => undef,
}
websphere_namespace_binding { 'ejbPuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
binding_type => 'ejb',
name_in_name_space => 'ejbPuppetNameInNameSpace',
string_to_bind => undef,
ejb_jndi_name => 'jndiNameExample',
application_server_name => 'example.com',
application_node_name => undef,
corbaname_url => undef,
federated_context => undef,
provider_url => undef,
initial_context_factory => undef,
jndi_name => undef,
}
websphere_namespace_binding { 'stringPuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
binding_type => 'string',
name_in_name_space => 'stringPuppetNameInNameSpace',
string_to_bind => 'PuppetString',
ejb_jndi_name => undef,
application_server_name => undef,
application_node_name => undef,
corbaname_url => undef,
federated_context => undef,
provider_url => undef,
initial_context_factory => undef,
jndi_name => undef,
}
websphere_namespace_binding { 'indirectPuppetTest':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
binding_type => 'indirect',
name_in_name_space => 'indirectPuppetNameInNameSpace',
string_to_bind => undef,
ejb_jndi_name => undef,
application_server_name => undef,
application_node_name => undef,
corbaname_url => undef,
federated_context => undef,
provider_url => 'example.com',
initial_context_factory => 'PuppetInitialContext',
jndi_name => 'jndi_name',
}
Properties
The following properties are available in the websphere_namespace_binding
type.
application_node_name
The applicationNodeName value used in the EjbNameSpaceBinding.
application_server_name
The applicationServerName value used in the EjbNameSpaceBinding.
corbaname_url
The corbanameUrl value used in the CORBAObjectNameSpaceBinding.
ejb_jndi_name
The ejbJndiName value used in the EjbNameSpaceBinding.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this namespace binding should exist or not.
Default value: present
federated_context
Valid values: true
, false
The federatedContext value used in the CORBAObjectNameSpaceBinding.
initial_context_factory
The initialContextFactory value used in the IndirectLookupNameSpaceBinding.
jndi_name
The jndiName value used in the IndirectLookupNameSpaceBinding.
name_in_name_space
Required. The name of the name space relative to lookup name prefix.
provider_url
The providerURL value used in the IndirectLookupNameSpaceBinding.
string_to_bind
The stringToBind value used in the StringNameSpaceBinding.
Parameters
The following parameters are available in the websphere_namespace_binding
type.
binding_type
Required. The binding type of the namespace.
cell
namevar
The name of the cell to create this application server on
cluster
namevar
The name of the cluster to create this application server on
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01
name
namevar
The name of the resource
node
namevar
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_namespace_binding
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
scope
namevar
Required. The scope of namespace binding. Valid values: cell, node, cluster, node group or server . If scope is node, the cell and the node must be specified in their parameters. If scope is cluster, the cell and the cluster must be specified in their parameters. If scope is server, the cell, the node, and the server must be specified in their parameters.
server
namevar
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_node
In wsadmin
terms using jython, this basically translates to the
AdminTask.createUnmanagedNode
task.
Examples
Add an IHS Server node to CELL_01
websphere_node { 'IHS Server':
node_name => 'ihsServer01',
os => 'linux',
hostname => 'ihs01.example.com',
cell => 'CELL_01',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmins',
}
Exported resource
An IHS server can export a resource:
@@websphere_node { $::fqdn:
node_name => $::fqdn,
os => 'linux',
hostname => $::fqdn,
cell => 'CELL_01',
A DMGR can collect it and append its profile information to it:
Websphere_node <<| cell == 'CELL_01' |>> {
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/Websphere/AppServer/profiles',
user => 'webadmins',
}
Properties
The following properties are available in the websphere_node
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_node
type.
cell
The cell that this node should be a part of.
The purpose of this parameter is so that a DMGR instance can determine which nodes belong to it when collecting exported resources.
dmgr_host
The DMGR host to add this node to.
This is required if you're exporting the node for a DMGR to collect. Otherwise, it's optional.
dmgr_profile
The dmgr profile that this node should be managed under Example: dmgrProfile01
hostname
The hostname for the unmanaged node.
node_name
namevar
The name of the node to manage. Defaults to the name
parameter value.
os
The node's operating system. Defaults to 'linux'
Default value: linux
profile
Optional. The profile of the server to use for executing wsadmin commands. Will default to dmgr_profile if not set.
profile_base
The base directory that profiles are stored.
Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_node
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_sdk
This manages WebSphere SDK/JDK versions'
Properties
The following properties are available in the websphere_sdk
type.
command_default
Manages the SDK name that script commands in the app_server_root/bin, app_client_root/bin, or plugins_root/bin directory are enabled to use when no profile is specified by the command and when no profile is defaulted by the command.
new_profile_default
Manages the SDK name that is currently configured for all profiles that are created with the manageprofiles command. The -sdkname parameter specifies the default SDK name to use. The sdkName value must be an SDK name that is enabled for the product installation.
sdkname
The name of the SDK to modify. Example: 1.7.1_64
Parameters
The following parameters are available in the websphere_sdk
type.
dmgr_profile
Optional: The dmgr_profile to use as base profile. Will use profile if unset.
instance_base
The base directory that WebSphere is installed.
Example: /opt/IBM/WebSphere/AppServer/
node_name
Required: The node name this sdk is to be managed on.
password
The password for 'managesdk.sh' authentication
profile
The profile to modify. Specify 'all' for all profiles. 'all' corresponds to the 'managesdk.sh' option '-enableProfileAll'
A specific profile name can also be provided. Example: PROFILE_APP_001. This corresponds to 'managesdk.sh' options -enableProfile -profileName
profile_base
The profile base directory
provider
The specific backend to use for this websphere_sdk
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
server
The server in the scope for this variable. This can be a specific server or 'all' to affect all servers
'all' corresponds to the 'managesdk.sh' option '-enableServers'
user
The user to run 'wsadmin' with
Default value: root
username
The username for 'managesdk.sh' authentication
wsadmin_pass
The username for authentication if security is enabled.
wsadmin_user
The username for authentication if security is enabled.
websphere_security_custom_property
This manages a WebSphere Global Security Custom Property'
Examples
websphere_security_custom_property { 'com.ibm.websphere.tls.disabledAlgorithms':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'DMGR_01',
property_value => 'SSLv3,TLSv1,RC4,DH keySize < 768,MD5withRSA',
}
Properties
The following properties are available in the websphere_security_custom_property
type.
description
The description of the security custom property.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this namespace binding should exist or not.
Default value: present
property_value
The value of the custom property.
Parameters
The following parameters are available in the websphere_security_custom_property
type.
cell
namevar
The name of the cell to create this application server on
cluster
The name of the cluster to create this application server on
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01
name
namevar
The name of the resource
node
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_security_custom_property
resource. You will seldom need to specify this
--- Puppet will usually discover the appropriate provider for your platform.
server
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_shared_library
This manages WebSphere Shared libraries.
Examples
websphere_shared_library { 'exampleClusterSharedLibrary':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
scope => 'cluster',
class_path => [
'/opt/IBM/shared_libraries/example',
'/tmp/shared_libraries/example',
],
native_path => [
'/tmp',
],
isolated_class_loader => false,
description => 'Created by Puppet',
}
Properties
The following properties are available in the websphere_shared_library
type.
class_path
Required. Specifies a class path that contains the JAR files for this library. Entries must not contain path separator characters (such as ';' or ':'). Class paths can contain variable (symbolic) names that can be substituted using a variable map.
description
The description of the shared library.
ensure
Valid values: present
, absent
Valid values: present
, absent
Defaults to true
. Specifies whether this shared library should exist or not.
Default value: present
isolated_class_loader
Valid values: true
, false
Use an isolated class loader for this shared library.
native_path
Specifies an optional path to any native libraries (DLL or SO files) required by this shared library.
Parameters
The following parameters are available in the websphere_shared_library
type.
cell
namevar
The name of the cell to create this application server on
cluster
namevar
The name of the cluster to create this application server on
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01
name
namevar
The name of the resource
node
namevar
The name of the node to create this application server on
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Basically, where can we find the 'dmgr_profile' so we can run 'wsadmin' Example: /opt/IBM/WebSphere/AppServer/profiles"
provider
The specific backend to use for this websphere_shared_library
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
scope
namevar
Required. The scope of namespace binding. Valid values: cell, node, cluster, node group or server . If scope is node, the cell and the node must be specified in their parameters. If scope is cluster, the cell and the cluster must be specified in their parameters. If scope is server, the cell, the node, and the server must be specified in their parameters.
server
namevar
The name of the server to create this application server on
user
The user to run 'wsadmin' with
Default value: root
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_variable
This manages a WebSphere environment variable
Examples
websphere_variable { 'PuppetTestVariable':
ensure => 'present',
dmgr_profile => 'PROFILE_DMGR_01',
profile_base => '/opt/IBM/WebSphere/AppServer/profiles',
user => 'webadmin',
cell => 'CELL_01',
node_name => 'AppNode01',
cluster => 'TEST_CLUSTER',
value => 'TestValue',
}
Properties
The following properties are available in the websphere_variable
type.
description
A description for the variable
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
value
The value the variable should be set to.
Parameters
The following parameters are available in the websphere_variable
type.
cell
namevar
The cell that this variable should be set in
cluster
namevar
The cluster that a variable should be set in
dmgr_profile
namevar
The dmgr profile that this variable should be set under. Basically, where
are we finding wsadmin
This is synonomous with the 'profile' parameter.
Example: dmgrProfile01"
node
namevar
The node that this variable should be set under
profile
The profile to run 'wsadmin' under
profile_base
namevar
The base directory that profiles are stored. Example: /opt/IBM/WebSphere/AppServer/profiles
provider
The specific backend to use for this websphere_variable
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
scope
namevar
The scope for the variable. Valid values: cell, cluster, node, or server
server
namevar
The server in the scope for this variable
user
The user to run 'wsadmin' with
Default value: root
variable
namevar
Required. The name of the variable to create/modify/remove. For example,
LOG_ROOT
wsadmin_pass
The password for wsadmin authentication
wsadmin_user
The username for wsadmin authentication
websphere_web_server
Manages WebSphere web servers in a cell.
Properties
The following properties are available in the websphere_web_server
type.
ensure
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Parameters
The following parameters are available in the websphere_web_server
type.
access_log
The path for the access log
What are plans?
Modules can contain plans that take action outside of a desired state managed by Puppet. It’s perfect for troubleshooting or deploying one-off changes, distributing scripts to run across your infrastructure, or automating changes that need to happen in a particular order as part of an application deployment.
Change log
All notable changes to this project will be documented in this file. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v2.1.0 (2020-07-28)
Added
- Add resources, improve existing resources #201 (bFekete)
- (IAC-746) - Add ubuntu 20.04 support #200 (david22swan)
- A Puppet Plan which can be used to clone an IBM WAS Package/FixPack repository #188 (psreed)
v2.0.1 (2020-01-21)
Fixed
- Ensure jdbc classpath param is properly quoted #190 (sheenaajay)
v2.0.0 (2019-05-20)
Changed
- pdksync - (MODULES-8444) - Raise lower Puppet bound #165 (david22swan)
Fixed
- Modules 7472 - Websphere_application_server: Instance installation fails with nil conversion #162 (lionce)
1.4.2 (2019-02-12)
1.4.1 (2019-01-30)
Fixed
- (MODULES-7815) - Fix issues with WebSphere 9 cluster membership #147 (eimlav)
- pdksync - (FM-7655) Fix rubygems-update for ruby \< 2.3 #142 (tphoney)
1.4.0 (2018-09-27)
Added
- pdksync - (FM-7392) - Puppet 6 Testing Changes #133 (pmcmaw)
- pdksync - (MODULES-6805) metadata.json shows support for puppet 6 #132 (tphoney)
- (FM-7257) - Addition of support for Ubuntu 18.04 #123 (david22swan)
1.3.0
Summary
This is a feature release enabling the installation of WebSphere AppServer 9.
Added
$jdk_package_name
and$jdk_package_version
parameters for thewebsphere_application_server::instance
type. Using these parameters requires puppetlabs-ibm_installation_manager >= 0.5.0. (MODULES-4738)
Supported Release 1.2.0
Summary
This is a 'minor' feature release, that implements a variety of changes across websphere to ensure that it complies with the set rubocop rules and that it works with the pdk tool.
Added
- Code has been changed to work with the PDK tool. (MODULES-6461)
Fixed
- Code has been updated to comply with the set Rubocop rules. (MODULES-6518)
Supported Release 1.1.0
Summary
This is a 'small' feature release, allowing the user to install WAS as a non-root user
Added
- passing of $user to
ibm_pkg
resource inwebsphere_application_server::instance
(MODULES-4903)
Supported Release 1.0.1
Summary
This is a bugfix release that also features several modulesync updates.
Fixed
cell
parameter for jdbc resources is now validated by Puppet (FM-6126)- Find wsadmin script in profile with backup (FM-5980)
- IHS exported resources (FM-5946)
- Adds check in get_xml_val to verify that server_xml exists (FM-6002)
Supported Release 1.0.0
Summary
This is the first supported release of websphere_application_server on the forge. This release features support for Ubuntu, in addition to many bugfixes and a full acceptance test suite.
Features
- Adds support for Ubuntu 14.04 and 16.04.
- Adds service management to IHS Server.
Bugfixes
- Fixes pluginsync autoload problems
- Fixes
sync_nodes
failure on federation - (FM-5418) Fix jython command options for jdbc_datasource provider
- Fixes all
exec
calls to be idempotent - Fixes a permissions issue when running on RHEL7
- Adjusts acceptable return codes from wsadmin scripts.
- Fixes an error due to incorrect path to puppet bin directory.
- Fixes a bug when trying to retrieve xml values on appservers
Backwards Incompatibility
- The
node
parameter in all defined and custom types have been renamed tonode_name
to workaround an issue with puppet-lint.
Release 0.2.0
Summary
This is the initial release of websphere_application_server on the forge. This module has the capability to install and configure websphere application servers, deployment managers, and websphere ihs via the IBM Installation Manager. This module does not support Liberty profiles.
* This Changelog was automatically generated by github_changelog_generator
Dependencies
- puppetlabs/concat (>= 1.1.0 < 7.0.0)
- puppetlabs/stdlib (>= 4.6.0 < 7.0.0)
- puppetlabs/ibm_installation_manager (>= 0.2.4 < 3.0.0)
This Module is only available for use with (1) the Puppet Enterprise Free License for up to 10 Nodes or as part of a Puppet Enterprise paid license, both subject to the Master License Agreement located at https://puppet.com/legal or other existing valid license agreement between user and Puppet (“Agreement”) governing the use of Puppet Enterprise or (2) Puppet Bolt for up to a ninety (90) day period from the date this Module is downloaded, subject to the open source license for Puppet Bolt. With the exception of Puppet Bolt, this Module is not available for users of any other open source Puppet software. Any terms not defined herein shall have the meaning set forth in the Agreement. By downloading this Module, you represent that you have agreed to a valid Agreement for Puppet Enterprise or the applicable open source license for Puppet Bolt and you further agree that your use of the Module is governed by the terms of such Agreement and license, respectively.