Network Deployment (Distributed operating systems), v8.0 > Reference > Administrator best practices
Plug-ins configuration
The Web Server Plug-ins Configuration Tool configures an application server for a web server type and creates a web server definition in the configuration of the application server. This overview shows the different processing paths that the Web Server Plug-ins Configuration Tool can use.
This topic describes the three ways that the Web Server Plug-ins Configuration Tool can configure a web server and create the plugin-cfg.xml file, which is the plug-in configuration file.
Tip: As an alternative to using the Web Server Plug-ins Configuration Tool, you can use the pct command-line tool with a response file to configure a web server. Read Configure a web server plug-in using the WCT command-line utility for more information.
Before you begin: The plug-ins and web-server configuration files are updated during plug-ins configuration. If you are using the Web Server Plug-ins Configuration Tool or the pct command-line tool as a non-root user, verify that we have appropriate privileges to update the configuration files for the Web Server Plug-ins as well as the configuration files for your web server (such as IHS) before starting a configuration—especially if you are not the owner of these files.
Configuration flows for the Network Deployment product
The Web Server Plug-ins Configuration Tool resolves all configurations of a web server and WAS to three scenarios: a remote application server, local distributed application server, and local standalone application server. The logic implemented in determining which scenario applies to a configuration is shown in the following diagram.
Legend:
Installation type?
The installation type is either remote or local. When the Web server and application server are not on the same computer, choose the remote scenario. When both the web server and application server are on the same computer, choose the local scenario.
Profile?
If the product is installed but the Profile Management Tool has not yet created a profile, the scenario is considered to be a remote installation.
Standalone application server with web server definition?
If the profile is an application server with an existing web server definition, the installation is considered a remote installation.
Profile_type?
The Web Server Plug-ins Configuration Tool can configure only one profile at a time. These three paths show how processing varies for different types of profiles.
Federated?
If the application server node is federated, the Web Server Plug-ins Configuration Tool configures the web server definition on the managed node. This has advantages. Suppose the web server and the managed node are on a separate machine. The plugin-cfg.xml file is automatically propagated to the remote node during node synchronization because the web server definition is part of the node configuration.
Distributed profile?
If the dmgr has a federated custom node (custom profile), the Web Server Plug-ins Configuration Tool configures the web server definition on the managed node. This has advantages. Suppose the web server and the managed node are on a separate machine. The plugin-cfg.xml file is automatically propagated to the remote node during node synchronization because the web server definition is part of the node configuration. Scenario 1. Local standalone plug-in configuration
The Web Server Plug-ins Configuration Tool creates a web server definition within the application server profile.
The Web Server Plug-ins Configuration Tool configures the web server to use the plugin-cfg.xml file that is within the application server profile. The standalone application server regenerates the PROFILE_ROOT/config/cells/cell_name/nodes/web_server_name
node/servers/web_server_name
plugin-cfg.xml file whenever a change occurs in the application server configuration that affects deployed applications.
After installing the binary plug-in for the local web server, you can start the application server and the web server immediately upon completion of the installation.
Suppose that you create a web server definition on a standalone application server and then federate the node. The web server definition is not federated into the cell because the web server definition is defined as a separate node in a standalone application server. We must recreate the web server definition on the managed node. See Scenario 2.
Configuration that qualifies for the local standalone application server scenario.
Profile type Federation status Automatic creation of web server definition? Web server already defined in application server configuration? Application server Not federated Yes No Redirection to Scenario 3
An unfederated standalone application server that has an existing web server definition should be processed as a remote plug-in configuration.
An existing web server definition on a standalone application server requires that the Web Server Plug-ins Configuration Tool follow the remote installation path. A standalone application server can have just one web server definition.
See Scenario 3 for a description of this type of node.
Redirection to Scenario 2
A federated standalone application server should be processed as a local distributed plug-in configuration. See Scenario 2 for a description of this type of node.
Overview of the verification procedure
The following overview shows the procedure for verifying the web server configuration:
- Start the web server with the proper procedure for your web server.
For example, start the IBM HTTP Server from a command line:
- (AIX) (Solaris) ./IHS_root/bin/apachectl start
- (Windows) IHS_root\bin\apache
- Start the application server.
Change directories to the PROFILE_ROOT/bin directory and run the startServer command:
- (AIX) (Solaris) ./PROFILE_ROOT/bin/startServer.sh server1
- (Windows) PROFILE_ROOT\bin\startServer server1
Open the admin console and save the changed configuration.
- Point your browser to http://localhost:9080/snoop to test the internal HTTP transport provided by the application server. Point your browser to http://Host_name_of_Web_server_machine/snoop to test the web server plug-in.
- Verify that both web addresses display the Snoop Servlet - Request/Client Information page.
Scenario 2. Local distributed plug-in configuration
The Web Server Plug-ins Configuration Tool does not automatically create a web server definition within a federated application server profile. The tool creates the configureweb_server_name
script instead in the plugins_root/bin directory.
The Web Server Plug-ins Configuration Tool configures the web server to use the plugin-cfg.xml file that will be created within the application server profile when you run the script. The dmgr regenerates the plugin-cfg.xml file in the PROFILE_ROOT/config/cells/cell_name/nodes/node_name/servers/web_server_name
directory. Regeneration occurs whenever a change occurs in the application server configuration that affects deployed applications on the managed node.
After installing the binary plug-in for the local web server, run the script before you can start the web server. The web server has already been configured to use the plugin-cfg.xml file in the application server configuration. That file does not exist until you run the configureweb_server_name
script.
Configurations that qualify for the local distributed application server scenario.
Profile type Federation status Creation of web server definition? Web server already defined in application server configuration? Application server profile Federated By script N/A Custom profile Not federated By script N/A Custom profile Federated By script N/A Deployment manager profile with a managed node (distributed profile) N/A By script N/A The following overview shows the procedure for completing the configuration and verifying the web server configuration:
- Start the dmgr.
- If you are planning to add an application server node into a dmgr cell but have not done so yet, federate the node before installing the plug-ins. If the web server definition exists when you federate the node, the web server definition is lost when you federate.
- Create the web server definition in the application server. You have two options:
- Use the admin console of the dmgr to create a web server definition for a managed node. Click Servers > Web servers > New and use the Create new web server entry wizard to create the web server definition.
- Run the script to manually create the web server definition within the configuration of the dmgr. Run the script from the plugins_root/bin directory. The script can address the dmgr on the same machine.
Open a command window to run the appropriate script:
- (AIX) (Solaris) ./configureweb_server_name
sh
- (Windows) configureweb_server_name
bat
The webserverNodeName value in the script is a concatenation of the nick name we have chosen for the web server and the suffix -node. It is automatically created during plug-in installation and cannot be changed. For example, if you named your web server myserver during plug-in installation, the value for the associated web server definition created after you ran the script would be myserver-node.
If we have enabled security or changed the default JMX connector type, edit the script and include the appropriate parameters.
- Start the web server with the proper procedure for your web server.
For example, start the IBM HTTP Server from a command line:
- (AIX) (Solaris) ./IHS_root/bin/apachectl start
- (Windows) IHS_root\bin\apache
- Start the application server.
Change directories to the PROFILE_ROOT/bin directory and run the startServer command:
- (AIX) (Solaris) ./PROFILE_ROOT/bin/startServer.sh server1
- (Windows) PROFILE_ROOT\bin\startServer server1
- Open the admin console of the dmgr. Wait for node synchronization to occur and save the changed configuration that includes the new web server definition.
- Point your browser to http://localhost:9080/snoop to test the internal HTTP transport provided by the application server. Point your browser to http://Host_name_of_Web_server_machine/snoop to test the web server plug-in.
- Verify that both web addresses display the Snoop Servlet - Request/Client Information page.
Scenario 3. Remote plug-in configuration
The Web Server Plug-ins Configuration Tool does not automatically create a web server definition within the distributed profile on a remote machine. The tool creates the configureweb_server_name
script instead.
The Web Server Plug-ins Configuration Tool configures the web server to use the plugin-cfg.xml file that will be maintained on the web server machine in the plugins_root/config/web_server_name
directory. This file requires periodic propagation. Propagation is copying the current plugin-cfg.xml file from the application server machine to replace the plugins_root/config/web_server_name
plugin-cfg.xml file.
After installing the binary plug-in for the local web server, you do not have to run the script before you can start the application server and the web server. However, you do not have the benefits of a Web server definition in the application server node until you run the script.
Configurations that qualify for the remote application server scenario.
Profile type Federation status Creation of web server definition? Web server already defined in application server configuration? Any profile anywhere if you select a remote installation type in the Web Server Plug-ins Configuration Tool N/A By script N/A No profile N/A By script N/A Unfederated standalone application server profile with an existing web server definition Not federated By script Yes Deployment manager profile with no managed nodes N/A By script N/A Test the application server without a web server definition: The following overview shows the procedure for verifying the temporary plugins_root/config/web_server_name
plugin-cfg.xml file.
The web server communicates with the remote application server using the temporary plugin-cfg.xml file.
If the application server has an HTTP Transport port assignment other than 9080, the test is not successful. Continue to the next section to create the web server definition on the application server and complete your test of the configuration.
- Start the web server with the proper procedure for your web server.
For example, start the IBM HTTP Server from a command line:
- (AIX) (Solaris) ./IHS_root/bin/apachectl start
- (Windows) IHS_root\bin\apache
- Start the application server on the remote machine.
Change directories to the PROFILE_ROOT/bin directory and run the startServer command:
- (AIX) (Solaris) ./PROFILE_ROOT/bin/startServer.sh server1
- (Windows) PROFILE_ROOT\bin\startServer server1
- Point your browser to http://localhost:9080/snoop to test the internal HTTP transport provided by the application server. Point your browser to http://Host_name_of_Web_server_machine/snoop to test the web server plug-in.
- Verify that both web addresses display the Snoop Servlet - Request/Client Information page.
Complete the installation by configuring a web server definition: The following overview shows the procedure for completing the configuration. The configuration is not complete until the Web server definition exists in the configuration of the application server node. The web server definition is a central element in the regeneration of a valid plug-in configuration file, plugin-cfg.xml.
- Start the dmgr if you are configuring the dmgr or a managed node.
- Federate a remote application server node or custom node now if you are planning to federate the node at some point. If a web server definition already exists when you federate a node, the definition is lost.
- Create the web server definition in the application server. You have two options for a managed node. Use the script option for a dmgr node without managed nodes.
- Use the admin console of the dmgr to create a web server definition for a managed node. Click Servers > Web servers > New and use the Create new web server entry wizard to create the web server definition.
- Run the script to manually create the web server definition within the configuration of the application server node:
- Copy the script from the plugins_root/bin directory to the remote WAS_HOME/bin directory.
- Open a command window and run the script:
- (AIX) (Solaris) ./configureweb_server_name
sh
- (Windows) configureweb_server_name
bat
The webserverNodeName value in the script is a concatenation of the nick name we have chosen for the web server and the suffix -node. It is automatically created during plug-in installation and cannot be changed. For example, if you named your web server myserver during plug-in installation, the value for the associated web server definition created after you ran the script would be myserver-node.
If we have enabled security or changed the default JMX connector type, edit the script and include the appropriate parameters.
- Open the admin console of the dmgr if the node is federated. Wait for node synchronization to occur on the managed node, and save the changed configuration that includes the new Web server definition. If the remote node is not federated, open the administrative console of the application server and save the changed configuration.
- Copy the current plug-in configuration file, plugin-cfg.xml, in the PROFILE_ROOT/config/cells/cell_name/nodes/web_server_name
node/servers/web_server_name
directory. Paste the file on the web server machine to replace the temporary plugins_root/config/web_server_name
plugin-cfg.xml file. The IBM HTTP Server supports automatic propagation. Other web servers require manual propagation.
- Start the web server with the proper procedure for your web server.
- Point your browser to http://localhost:9080/snoop to test the internal HTTP transport provided by the application server. Point your browser to http://Host_name_of_Web_server_machine/snoop to test the web server plug-in.
- Verify that both web addresses display the Snoop Servlet - Request/Client Information page.
Summary
Three scenarios exist for Web Server Plug-ins. Each scenario revolves around a unique location for the plug-in configuration file, plugin-cfg.xml. The application server generates the plug-in configuration file. The purpose of the file is to publish the location of all of the application server elements that are relevant to a web server. Such elements include applications, virtual hosts for serving applications, clusters, and cluster members for example.
If the web server cannot get to the file on the application server machine, take the file to the web server. That process is called "propagation." Propagation is reserved for the remote plug-in configuration scenario, which is Scenario 3 in this topic.
In each of the local scenarios, the Web server can get to the plugin-cfg.xml file because it is on the same machine as the file. Two local scenarios exist because of two distinct locations for a local plugin-cfg.xml file.
The configuration scheme for WAS puts the plug-in configuration file in a web server definition that is either within a web server node or a managed node. The type of node is the difference between Scenario 2 and Scenario 1 in this topic. All Scenario 2 configurations require the web server definition to exist within a managed application server node. All Scenario 1 configurations have the web server definition within its own web server node.
Limited management options do not let you create or delete the one web server definition in the admin console of a standalone application server. The inability of a standalone application server to create a web server definition is the basis for the configuration scripts created by the Web Server Plug-ins Configuration Tool. Without the scripts you could not easily create a web server definition on a standalone application server node.
The location of the plugin-cfg.xml file for each configuration described in this topic is shown in the following table:
Plug-in configuration file locations.
Scenario Profile type Location of the plugin-cfg.xml file plugins_root PROFILE_ROOT: within the managed node PROFILE_ROOT: within the web server node 1 Application server profile X 2 Application server profile X Custom profile X Deployment manager profile with a managed node (distributed profile) X 3 Any profile anywhere if you select a remote installation type in the Web Server Plug-ins Configuration Tool X No profile X Unfederated (standalone) application server profile with an existing web server definition X Deployment manager profile with no managed nodes X Legend:
plugins_root
plugins_root /config/web_server_nameplugin-cfg.xml
PROFILE_ROOT: within the managed node
PROFILE_ROOT/config/cells/cell_name/nodes/node_name_of_AppServer/servers/web_server_nameplugin-cfg.xml
PROFILE_ROOT: within the web server node
PROFILE_ROOT/config/cells/cell_name/nodes/web_server_namenode/servers/web_server_name
plugin-cfg.xml
Web server configuration
Configure a web server plug-in using the WCT command-line utility
Install and uninstall the Web Server Plug-ins