Generating the plug-in configuration in a high availability environment
In a high availability environment, you can configure the web server to generate the plug-in configuration. By doing so, you ensure that the configuration is generated by one process in the cell, regardless of other processes that might not be available.
Before you begin
- Establish your high availability environment. For more information, read about setting up a high availability environment.
- Using the high availability
plugin-cfg
generation service does not automatically disable the on demand router (ODR)plugin-cfg
generation, if it is enabled. The two services are independent. It is redundant to enable both services; when you enable the high availabilityplugin-cfg
generation service, disable any previously configured ODRplugin-cfg
generation. For more information, read about configuring an ODR to dynamically update the web server plug-in configuration. - If you enable Intelligent Management for a web server, do not use the option to dynamically generate the plugin-cfg.xml file for that web server. Dynamically generating the plugin-cfg.xml file overwrites the Intelligent Management settings in the plugin-cfg.xml file.
About this task
- Define a set of custom properties at the cell level for each plugin-cfg.xml
file that you want to generate. The custom properties are formatted as
ODCPluginCfg<property>_<definitionID>=value, where
<property> is one of the following elements:
- OdrList
- OutputPath
- UpdateScript
- OdrClusterList
- Disabled
Valid usage example of the <definitionID> variable when specifying the same ODCPluginCfg<property>- ODCPluginCfgOdrList_1=ABC
- ODCPluginCfgOdrList_2=XYZ
- ODCPluginCfgOutputPath_1=EFG
- ODCPluginCfgOutputPath_2=HIJ
Invalid usage example of the <definitionID> variable when specifying the same ODCPluginCfg<property>- ODCPluginCfgOdrList_1=ABC
- ODCPluginCfgOdrList_1=XYZ
- ODCPluginCfgOutputPath_1=EFG
- ODCPluginCfgOutputPath_1=HIJ
ODCPluginCfgUpdateScript_<definitionID>
value can
be set with the same options as the values in the Plugin config change script
text box. For more information, read about configuring an ODR to dynamically update the web server
plug-in configuration.- To generate
HAPluginCfgGeneration
definitions on demand:- Disable automatic generation. Set the cell custom property
ODCPluginCfgDisabled_<definitionID>
to true. - To generate a new plug-in, run this
command:
where:<WAS_HOME>/bin/wsadmin.sh -lang jython -f <WAS_HOME>/bin/manageODC.py generateHAPluginCfgs <generationDefinitionIDs> <nodeName> <serverName>
- generationDefinitionIDs
- is a list of
HAPluginCfgGeneration
IDs separated by commas of the formODCPluginCfg_<definitionID>
. - nodeName
- is the name of the node that performs the generation.
- serverName
- is the process name that performs the generation. Any Intelligent Management augmented process
can generate the
HAPluginCfgs
configuration on demand, except forXDAGENT
processes. For example:<WAS_HOME>/bin/wsadmin.sh -lang jython -f <WAS_HOME>/bin/manageODC.py generateHAPluginCfgs ODCPluginCfg_1,ODCPluginCfg_2 dmgrNodeName dmgr
- Disable automatic generation. Set the cell custom property
- To limit how often the
HAPluginCfgGeneration
definitions are regenerated, set the cell custom propertyODCPluginCfgMinGenerationDelay
with a value that represents the time in minutes between possible generations. For example:
The configuredODCPluginCfgMinGenerationDelay = 10
HAPluginCfgGeneration
definitions are regenerated every 10 minutes at the most. If the generator receives notification to rebuild thepluginCfgs
, it delays the generation ofpluginCfgs
written within the last 10 minutes. - To limit how often an ODR generated plugin-cfg.xml file is regenerated, set
the JVM property
com.ibm.ws.odr.plugincfg.minGenerationDelay
to a value that represents the time in minutes between possible generations and then cycle the ODR. - By default, the configured static runtime weight value is used to include stopped ODR processes in a generated plugin-cfg.xml file.
- To include stopped ODR processes in a generated plugin-cfg.xml file based
on the current runtime weight value (always 0), configure the following settings:
- For the
HAPluginCfgGenerator
, set the cell custom propertyODCPluginCfgOdrIncludeStoppedStatic
to false. - For ODR generated plugin-cfg.xml files, set the JVM property
com.ibm.ws.odr.plugincfg.odrIncludeStoppedStatic
to false, and then cycle the ODR.
- For the
Procedure
Example
Property name | Property value | Description |
---|---|---|
ODCPluginCfgOdrList_1 |
myCell:*:* |
Generates a plug-in configuration that will route to all ODRs in the myCell cell. |
ODCPluginCfgOutputPath_1 |
/tmp/plugin-cfg1.xml |
Writes the generated plug-in configuration to the /tmp/plugin-cfg1.xml file. |
ODCPluginCfgUpdateScript_1 |
/root/bin/pluginCfgUpdate1 |
The path to the script that will be invoked each time the /tmp/plugin-cfg1.xml file is updated. |
_2
, which ties them together into a single configuration.
Property name | Property value | Description |
---|---|---|
ODCPluginCfgOdrClusterList_2 |
myCell:myOdrCluster |
Generates a plug-in configuration that will route to all ODRs of the myOdrCluster cluster in the myCell cell. |
ODCPluginCfgOutputPath_2 |
/tmp/plugin-cfg2.xml |
Writes the generated plug-in configuration to the /tmp/plugin-cfg2.xml file. |
ODCPluginCfgUpdateScript_2 |
/root/bin/pluginCfgUpdate2 |
The path to the script that is ran each time the /tmp/plugin-cfg2.xml file is updated. |
ODCPluginCfgOdrIncludeStopped_2 |
true or false |
Includes or excludes stopped ODRs. |
What to do next
Because the generation of the plugin-cfg.xml file can occur on any node in the cell, you can determine the specific location in which the generation service is running:
In the administrative console, click HAPluginCfgGenerator
is displayed in the table.