Overview

This resource allows you to manage workmanagers in an WebLogic domain.

Here is an example on how you should use this:

wls_workmanager { 'WorkManagerConstraints':
  ensure                => 'present',
  capacity              => 'CapacityConstraint',
  maxthreadsconstraint  => 'MaxThreadsConstraint',
  minthreadsconstraint  => 'MinThreadsConstraint',
  fairsharerequestclass => 'FairShareReqClass',
  stuckthreads          => '0',
  target                => ['WebCluster'],
  targettype            => ['Cluster'],
}

In this example you are managing a work manager in the default domain. When you want to manage a work manager in a specific domain, you can use:

wls_workmanager { 'my_domain/WorkManagerConstraints':
  ensure                => 'present',
  capacity              => 'CapacityConstraint',
  maxthreadsconstraint  => 'MaxThreadsConstraint',
  minthreadsconstraint  => 'MinThreadsConstraint',
  fairsharerequestclass => 'FairShareReqClass',
  stuckthreads          => '0',
  target                => ['WebCluster'],
  targettype            => ['Cluster'],
}

Experience the Power of Puppet for WebLogic

If you want to play and experiment with Puppet and WebLogic, please take a look at our playgrounds. At our playgrounds, we provide you with a pre-installed environment, where you experiment fast and easy.

For WebLogic   here at our playground...

Attributes

Attribute Name Short Description
application_scope Specifies whether this work manager should be scoped to an application.
capacity The capacity constraint name
   
context_request_class The mapping of Request Classes to security names and groups.
deployment_order A priority that the server uses to determine when it deploys an item.
disable_autorequire Puppet supports automatic ordering of resources by autorequire.
disable_corrective_change Disable the modification of a resource when Puppet decides it is a corrective change.
disable_corrective_ensure Disable the creation or removal of a resource when Puppet decides is a corrective change.
domain With this parameter, you identify the domain, where your objects is in.
ensure The basic property that the resource should be in.
fair_share_request_class Get the FairShareRequestClass for this WorkManager
   
fairsharerequestclass The fairshare request class name
   
ignore_stuck_threads Specifies whether this Work Manager ignores “stuck” threads.
max_threads_constraint The maximum number of concurrent threads that can be allocated to execute requests.
maxthreadsconstraint The max threads constraint name
   
min_threads_constraint The minimum number of threads allocated to resolve deadlocks.
minthreadsconstraint The min threads constraint name
   
name The name.
notes Optional information that you can include to describe this configuration.
provider resource.
response_time_request_class The response time goal (in milliseconds).
stuckthreads The stuckthreads of a workmanager
   
tags Return all tags on this Configuration MBean
   
target An array of target names.
targettype An array of target types.
timeout Timeout for applying a resource.
work_manager_shutdown_trigger Configure a shutdown trigger for this WorkManager.
workmanager_name The workmanager name
   

application_scope

Specifies whether this work manager should be scoped to an application. By default, work managers are scoped to an application. Set this value to false if the work manager is to be scoped to a domain

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   application_scope => 1,
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:application_scope']
   ...
}

This help text generated from MBean text of the WebLogic server.

Valid values are absent, 1, 0.

Back to overview of wls_workmanager

capacity

The capacity constraint name

Back to overview of wls_workmanager

context_request_class

The mapping of Request Classes to security names and groups.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   context_request_class => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:context_request_class']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

deployment_order

A priority that the server uses to determine when it deploys an item. The priority is relative to other deployable items of the same type. For example, the server prioritizes and deploys all EJBs before it prioritizes and deploys startup classes. Items with the lowest Deployment Order value are deployed first. There is no guarantee on the order of deployments with equal Deployment Order values. There is no guarantee of ordering across clusters.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   deployment_order => '1000'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:deployment_order']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

disable_autorequire

Puppet supports automatic ordering of resources by autorequire. Sometimes, however, this causes issues. Setting this parameter to true, disables autorequiring for this specific resource.

USE WITH CAUTION!!

Here is an example on hopw to use this:

...{'domain_name/...':
  disableautorequire => true,
  ...
}

Back to overview of wls_workmanager

disable_corrective_change

Disable the modification of a resource when Puppet decides it is a corrective change.

(requires easy_type V2.11.0 or higher)

When using a Puppet Server, Puppet knows about adaptive and corrective changes. A corrective change is when Puppet notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet is managing. The normal Puppet process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.

Using the disable_corrective_change parameter, you can disable corrective changes on the current resource.

Here is an example of this:

crucial_resource {'be_carefull':
  ...
  disable_corrective_change => true,
  ...
}

When a corrective ensure does happen on the resource Puppet will not modify the resource and signal an error:

    Error: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change
    Error: /Stage[main]/Main/Crucial_resource[be_carefull]/parameter: change from '10' to '20' failed: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change. (corrective)

Back to overview of wls_workmanager

disable_corrective_ensure

Disable the creation or removal of a resource when Puppet decides is a corrective change.

(requires easy_type V2.11.0 or higher)

When using a Puppet Server, Puppet knows about adaptive and corrective changes. A corrective change is when Puppet notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet is managing. The normal Puppet process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.

Using the disable_corrective_ensure parameter, you can disable corrective ensure present or ensure absent actions on the current resource.

Here is an example of this:

crucial_resource {'be_carefull':
  ensure                    => 'present',
  ...
  disable_corrective_ensure => true,
  ...
}

When a corrective ensure does happen on the resource Puppet will not create or remove the resource and signal an error:

    Error: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure.
    Error: /Stage[main]/Main/Crucial_resource[be_carefull]/ensure: change from 'absent' to 'present' failed: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure. (corrective)

Back to overview of wls_workmanager

domain

With this parameter, you identify the domain, where your objects is in.

The domain name is part of the full qualified name of any WebLogic object on a system. Let’s say we want to describe a WebLogic server. The full qualified name is:

wls_server{'domain_name/server_name':
  ensure => present,
  ...
}

When you don’t specify a domain name, Puppet will use default as domain name. For every domain you want to manage, you’ll have to put a wls_settings in your manifest.

Back to overview of wls_workmanager

ensure

The basic property that the resource should be in.

Valid values are present, absent.

Back to overview of wls_workmanager

fair_share_request_class

Get the FairShareRequestClass for this WorkManager

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   fair_share_request_class => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:fair_share_request_class']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

fairsharerequestclass

The fairshare request class name

Back to overview of wls_workmanager

ignore_stuck_threads

Specifies whether this Work Manager ignores “stuck” threads. Typically, stuck threads will cause the associated Work Manager to take some action: either switching the application to Admin mode, shutting down the server, or shutting down the Work Manager. If this flag is set, then no thread in this Work Manager is ever considered stuck. If you do not explicitly specify IGNORE_STUCK_THREADS=TRUE, the default behavior is that upon encountering stuck threads, the server will take one of the aforementioned actions.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   ignore_stuck_threads => 1,
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:ignore_stuck_threads']
   ...
}

This help text generated from MBean text of the WebLogic server.

Valid values are absent, 1, 0.

Back to overview of wls_workmanager

max_threads_constraint

The maximum number of concurrent threads that can be allocated to execute requests.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   max_threads_constraint => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:max_threads_constraint']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

maxthreadsconstraint

The max threads constraint name

Back to overview of wls_workmanager

min_threads_constraint

The minimum number of threads allocated to resolve deadlocks.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   min_threads_constraint => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:min_threads_constraint']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

minthreadsconstraint

The min threads constraint name

Back to overview of wls_workmanager

name

The name.

Back to overview of wls_workmanager

notes

Optional information that you can include to describe this configuration. WebLogic Server saves this note in the domain’s configuration file (config.xml) as XML PCDATA. All left angle brackets (<) are converted to the XML entity &lt;. Carriage returns/line feeds are preserved. <dl> <dt>Note:</dt> <dd> If you create or edit a note from the Administration Console, the Administration Console does not preserve carriage returns/line feeds. </dd> </dl>

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   notes => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:notes']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

provider

The specific backend to use for this wls_workmanager resource. You will seldom need to specify this — Puppet will usually discover the appropriate provider for your platform.Available providers are:

simple
Manage workmanagers of a WebLogic domain

Back to overview of wls_workmanager

response_time_request_class

The response time goal (in milliseconds).

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   response_time_request_class => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:response_time_request_class']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

stuckthreads

The stuckthreads of a workmanager

Valid values are absent, 1, 0.

Back to overview of wls_workmanager

tags

Return all tags on this Configuration MBean

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   tags => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:tags']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

target

An array of target names.

The array of targets for this resource. A target can be a WebLogic Server, a WebLogic cluster, or a JMS Server. When specifying a target, you’ll also have to specify targettype. Here is an example on how you can specify a target.

..{ 'aResource':
  ...
  target     => ['myServer','myCluster'],
  targettype => ['Server','Cluster'],
  ...
}

here is an example on specifying the target and targettype for a regular WebLogic cluster:

wls_cluster{ 'aCluster':
  ...
  target     => ['myServer','myCluster'],
  targettype => ['Server','Cluster'],
  ...
}

Back to overview of wls_workmanager

targettype

An array of target types.

The array of target types for this resource. A target can be a WebLogic Server, a WebLogic cluster, or a JMS Server. When specifying a targettype, you’ll also have to specify a target. Here is an example on how you can specify a target.

...{ 'aResource':
  ...
  target     => ['myServer','myCluster'],
  targettype => ['Server','Cluster'],
  ...
}

here is an example on specifying the target and targettype for a regular WebLogic cluster:

wls_cluster{ 'aCluster':
  ...
  target     => ['myServer','myCluster'],
  targettype => ['Server','Cluster'],
  ...
}

Back to overview of wls_workmanager

timeout

Timeout for applying a resource.

To be sure no Puppet operation, hangs a Puppet daemon, all operations have a timeout. When this timeout expires, Puppet will abort the current operation and signal an error in the Puppet run.

With this parameter, you can specify the length of the timeout. The value is specified in seconds. In this example, the timeout is set to 600 seconds.

wls_server{'my_server':
  ...
  timeout => 600,
}

The default value for timeout is 120 seconds.

Back to overview of wls_workmanager

work_manager_shutdown_trigger

Configure a shutdown trigger for this WorkManager. Specifies the condition to be used to shutdown the WorkManager. The Server health monitoring periodically checks to see if the conidtion is met and shuts down the work manager if needed.

An example on how to use this:

wls_workmanager {a_wls_workmanager :
   ...
   work_manager_shutdown_trigger => 'a_value'
   ...
}

This is an extended property. Before you can use it add it to the wls_settings property extra_properties.

wls_setting{'domain':
   ...
  extra_properties => ['wls_workmanager:work_manager_shutdown_trigger']
   ...
}

This help text generated from MBean text of the WebLogic server.

Back to overview of wls_workmanager

workmanager_name

The workmanager name

Back to overview of wls_workmanager