The workload manager (WLM) shall be implemented on all AIX systems. On most systems WLM will be running in "passive" mode, which does not limit resources. In MtXia's environment, only a few selected systems will have WLM implemented in "active" mode to control and regulate resources. If there is any question as to whether WLM should be implemented in "active" or "passive" mode, default to "passive".
The WLM provides a mechanism to classify and segment resources by process, user, group, etc. The classification scheme must be constructed by the AIX system administrator. This WLM classification scheme in the MtXia environment is based on the concept of the Resource Group. Each Resource Group will be represented in WLM as a class. Multiple instances of an application within a single resource group shall be represented in WLM as subclasses.
In order to configure WLM, the system administrator must first define the resource groups names. Once the resource group names have been defined, then a WLM class must be defined using the resource group name as the WLM class name.
To define a new WLM class using smitty, start smitty using the "wlm" fastpath.
smitty wlm
Select "Add a class" to define a new WLM class.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
Enter the resource group name as the WLM class name, and provide a description of this WLM class. The Tier level will normally be 0 (zero) unless there is a specific reason to change this. The "Resource Set Inheritance" value will normally be set to "Yes".
The user and group values will be dependent upon the nature of the resource group. It may be desirable to specify a non-root user and group that is permitted to administer the WLM class and/or assign processes to the class. This will have to be determined on a resource group by resource group basis. If this information is unknown, default to "root" for the user values and "system" for the group values.
General characteristics of a class
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Class name [egapdtu1]
Description [EGATE Production Database for Mt Xia, Instance 0]
Tier [0]
Resource Set
Inheritance [Yes]
User authorized to assign its processes to this class [oracle]
Group authorized to assign its processes to this class [dba]
User authorized to administrate this class [root]
(Superclass only)
Group authorized to administrate this class [system]
(Superclass only)
Localshm [No]
Class rules are used to determine which processes are assigned to which WLM classes and the order of the rules is significant. The first rule that matches is used to determine the WLM class assignment, so the class rules should be ordered from highly specific to less specific.
To define WLM class rules using smitty, start smitty using the "wlm" fastpath.
smitty wlm
Select "Class assignment rules" to define a new WLM class.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
Select "Class assignment rules" to define a new WLM class rule.
Class assignment rules
Move cursor to desired item and press Enter.
List all Rules
Create a new Rule
Change / Show Characteristics of a Rule
Delete a Rule
Attribute value groupings
In the following example, a rule is defined to assign all processes owned by oracle or the group dba to the the WLM class "egapdtu1". Again the order of the rules is important. The rules should be ranked in order of highly specific, starting at 1, to less specific.
Create a new Rule
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Order of the rule [1]
* Class name [egapdtu1
* User [oracle]
* Group [dba]
Application [-]
Type [-]
Tag [-]
To define a new WLM subclass using smitty, start smitty using the "wlm" fastpath.
smitty wlm
Select "Add a class" to define a new WLM subclass.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
When defining a subclass, again enter the resource group name, followed by a period (.) followed by the name of the subclass to create. The Tier level will normally be 1 (one) for a subclass, unless there is a specific reason to change this. The "Resource Set Inheritance" value will normally be set to "Yes".
The user and group values will be dependent upon the nature of the resource group. It may be desirable to specify a non-root user and group that is permitted to administer the WLM class and/or assign processes to the class. This will have to be determined on a resource group by resource group basis. If this information is unknown, default to "root" for the user values and "system" for the group values.
General characteristics of a class
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Class name [egapdtu1.oracleex511]
Description [EGATE Production Database for Mt Xia, Instance 511]
Tier [1]
Resource Set
Inheritance [Yes]
User authorized to assign its processes to this class [oracle]
Group authorized to assign its processes to this class [dba]
User authorized to administrate this class [root]
(Superclass only)
Group authorized to administrate this class [system]
(Superclass only)
Localshm [No]
To define a class rule for a subclass requires an additional step. First select a set of WLM subclasses to work on, then define the rule. To define a rule for a WLM subclass using smitty, start smitty using the "wlm" fastpath.
smitty wlm
Select "Work on a set of Subclasses" to select the subclass for which to define a rule.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
Select the WLM class that contains the subclass for which the rule will be defined, press enter, then return to the main WLM menu.
Select a Superclass or -
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Superclass name [egapdtu1]
Select "Class assignment rules" to define a new WLM subclass rule.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
Select "Class assignment rules" to define a new WLM subclass rule.
Class assignment rules
Move cursor to desired item and press Enter.
List all Rules
Create a new Rule
Change / Show Characteristics of a Rule
Delete a Rule
Attribute value groupings
In the following example, a rule is defined to assign all processes owned by oracle or the group dba to the the WLM subclass "egapdtu1.oracleex511". Again the order of the rules is important. The rules should be ranked in order of highly specific, starting at 1, to less specific.
Create a new Rule
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Order of the rule [1]
* Class name oracleex511
* User [oracle]
* Group [dba]
Application [-]
Type [-]
Tag [-]
After all classes, subclasses, and rules have been defined, start WLM.
smitty wlm
Select "Work on a set of Subclasses" to select the subclass for which to define a rule.
Workload Manager
Move cursor to desired item and press Enter.
Manage time-based configuration sets
Work on alternate configurations
Work on a set of Subclasses
Show current focus (Configuration, Class Set)
List all classes
Add a class
Change / Show Characteristics of a class
Remove a class
Class assignment rules
Start/Stop/Update WLM
Assign/Unassign processes to a class/subclass
Select "Start Workload Manager"
Start/Stop/Update WLM
Move cursor to desired item and press Enter.
Start Workload Manager
Update Workload Manager
Stop Workload Manager
Show WLM status
For the options on this page, select the "current" configuration set, choose the "Passive" management mode, and choose "Both" for the start option.
Start Workload Manager
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Configuration, or for a set: set name/currently current
applicable configuration
Management mode Passive
Enforce Resource Set bindings Yes
Disable class total limits on resource usage Yes
Disable process total limits on resource usage Yes
Start now, at next boot, or both ? Both
Any subsequent changes to the WLM configuration will require that WLM be stopped and restarted in order for the changes to take effect.
An example WLM configuration of the EGATE Production Database server for Mt Xia follows. The "standard" WLM configuration for this machine contains a single WLM class called "egapdtu1". It is important to recognize that the "standard" WLM configuration will be different for every machine. The term "standard" is used in reference to the local machine, this is not enterprise wide terminology used here.
System:
Default:
Shared:
egapdtu1:
description = "Oracle Concurrent"
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
adminuser = "root"
admingroup = "system"
The class rules associated with this "standard" configuration assign any processes owned by "oracle" or by the group "dba" to the WLM class "egapdtu1". All processes owned by "root" are assigned to the class "System", and all other processes are assigned to the class "Default".
*class resvd user group application type tag
egapdtu1 - oracle dba - - -
System - root - - - -
Default - - - - - -
Multiple subclasses are defined for the class "egapdtu1". These subclasses are intended to segment the processes by oracle instance. The definition of subclasses will be customized for each individual resource group.
Default:
Shared:
oracleex011:
description = "Instance ex011"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleex061:
description = "Instance ex061"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleex071:
description = "Instance ex071"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleexa11:
description = "Instance a11"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleex031:
description = "Instance ex031"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleex041:
description = "Instance ex041"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
oracleex051:
description = "Instance ex051"
tier = 1
inheritance = "yes"
authuser = "oracle"
authgroup = "dba"
The rules associated with each subclass of the class "egapdtu1" associate all processes owned by "oracle" or the group "dba" to the subclass. In this instance the processes are not automatically assigned to subclasses by WLM, instead they are assigned by the oracle startup script.
*class resvd user group application type tag
oracleex011 - oracle - - - -
oracleex031 - oracle - - - -
oracleex041 - oracle - - - -
oracleex051 - oracle - - - -
oracleex061 - oracle - - - -
oracleex071 - oracle - - - -
oracleexa11 - oracle - - - -