Configure a webserver and an appserver profile on the same machine

 

 

+

Search Tips   |   Advanced Search

 

Overview

The first part of this document describes describes installing the webserver and its webserver plug-in for a stand-alone WAS (WAS) and the appserver on the same machine.

The second part of this document shows how to configure a webserver and a distributed appserver profile on the same machine

When multiple profiles exist, the plug-ins installer configures only the default profile.

Some of the Web servers that WAS provides a binary plug-in for include...

If the WAS product family does not provide a binary plug-in for a particular brand of webserver, then the webserver is not supported. The purpose of the binary plug-in is to provide the communication protocol between the webserver and the appserver.

Suppose that you create a new profile. Suppose also to use a webserver. Install a new webserver for the new profile and use the Plug-ins installation wizard to install the binary plug-in module and to configure both the webserver and the appserver.

If the webserver is not already installed, you can still install the plug-ins for future use. If the WAS product is not installed, you can still install the plug-ins. However, it is recommended that you install the webserver and the WAS product before installing the plug-ins for the supported webserver.

This procedure configures the appserver profile that is the default profile on the machine. A one-to-one relationship exists between a webserver and the appserver.

However, a stand-alone appserver profile and a managed profile can each have multiple Web servers defined, each in a separate webserver definition.

This topic describes how to create the following topology:

The set of steps leading up to the next diagram show how to configure a stand-alone appserver. The set of steps after the next diagram show how to configure an appserver that is federated into a deployment manager cell. The wizard performs three steps to properly configure a webserver for V6. The wizard performs the steps in the following order:

  1. The wizard installs the unique binary plug-in module for the supported webserver after collecting the following information:

    • The type of webserver

    • The location of the configuration file for the webserver that the wizard configures

    • The plug-ins installation root directory for the webserver plug-in modules that the wizard installs

    • The installation root directory of the WAS product, where the wizard creates a webserver definition

    If administrative security is enabled, the Plug-ins installation wizard prompts for the administrative user ID and password for the profile.

  2. The wizard prompts you for the location of the configuration file or files for the webserver. You must browse for and select the correct file.

    The wizard edits the configuration file or files for a webserver by creating directives that point to the location of the binary plug-in module and the plug-in configuration file.

    The name of the binary plug-in module varies per webserver type. The plug-in configuration file is always the plugin-cfg.xml file.

  3. The wizard creates a webserver definition in the configuration of the appserver unless one already exists.

    You can use the administrative console to manage the webserver configuration. For example, when you install an application on the appserver, you can also choose to install it on the webserver definition. If so, the updated plugin-cfg.xml file shows that the new application is available. When the webserver reads the updated plug-in configuration file, the webserver becomes aware of the new application that it can serve to Web clients.

    If you choose not to install the new application on the webserver definition, the application is not added to the plug-in configuration file. The webserver is not aware of the application and cannot serve it to Web clients.

Use the following procedure to install the webserver plug-in, configure the webserver, and create a webserver definition in the default appserver profile.

 

Procedure

  1. Log on to the operating system.

    For *nix boxes select a umask that would allow the owner to read/write to the files, and allow others to access them according to the prevailing system policy. For root, a umask of 022 is recommended. For non-root users a umask of 002 or 022 could be used, depending on whether or not the users share the group. To verify the umask setting,...

    umask
    To set the umask setting to 022,...

    umask 022

    When installing on a Windows system, a Windows service is automatically created to autostart the appserver if your installer user account has the following advanced user rights:

    For example, on some Windows systems, click...

    Administrative Tools | Local Security Policy | User Rights Assignments

    ...to set the advanced options. See your Windows documentation for more information.

    [Windows] If you plan to run the appserver as a Windows service, do not install from a user ID that contains spaces. A user ID with spaces cannot be validated. Such a user ID is not allowed to continue the installation. To work around this problem, install with a user ID that does not contain spaces.

  2. Install WAS ND on Machine A.

  3. Install the IBM HTTP Server or another supported Web server on Machine B, or refer to the product documentation for your webserver for more information.

  4. Launch the Plug-ins installation wizard on the machine with the webserver.

    Select the Plug-ins installation wizard from the launchpad or change directories to the ./plugin directory on the product disc or in the downloaded installation image and issue the install command.

  5. Stop the stand-alone appserver before installing the webserver plug-ins. For example, assuming that the profile name is default, use one of the following commands.

    • [AIX]

      /usr/IBM/WAS/AppServer/profiles/default/bin/stopServer.sh server1

    • [HP-UX] [Linux] [Solaris]

      /opt/IBM/WAS/AppServer/profiles/default/bin/stopServer.sh server1

    • [Windows]

      C:\IBM\WebSphere\AppServer\profiles\default\bin\stopServer.sh server1

  6. Clear the check box for the roadmap or select the check box to view the roadmap, then click Next.

    If you are unsure of which installation scenario to follow, display the roadmap instead. Print and keep the roadmap as a handy overview of the installation steps.

    Press Ctrl-P to print the roadmap if the Web browser navigation controls and the menu bar are not present on the browser window that displays the Plug-ins roadmap. Press Ctrl-W to close the browser window if the navigation controls and the menu bar do not display. Or close the browser window with the window control in the title bar.

  7. Read the license agreement and accept the agreement it if you agree to its terms. Click Next when you are finished.

  8. If your system does not pass the prerequisites check, stop the installation, correct any problems, and restart the installation.

    If your system passes the prerequisites check, click Next. Look for the appropriate log file for information about missing prerequisites:

    • If you stop the installation, see the temporaryPluginInstallLog.txt file in the temporary directory of the user who installed the plug-ins.

      For example, the file...

        /tmp/temporaryPluginInstallLog.txt

      ...might exist if the root user installed the plug-ins on an operating system such as AIX or Linux.

    • If you continue the installation in spite of warnings about missing prerequisites, see...

      plugins_root/logs/install/log.txt

  9. Select the type of webserver that you are configuring and click Next.

    The Plug-ins installation wizard panel prompts you to identify the webservers to configure. Actually you can select only one webserver each time you run the Plug-ins installation wizard.

    Stop any webserver while you are configuring it. A step later in the procedure directs you to start the webserver as you begin the snoop servlet test.

    If you select the webserver identification option labeled None, the webserver installs the binary plug-ins but does not configure the webserver.

  10. Select Application Server machine (local) and click Next.

  11. Accept the default location for the installation root directory for the plug-ins. Click Next.

    You can type another new directory or click Browse to select an empty directory. The fully qualified path identifies the plug-ins installation root directory.

    The default location is shown in Directory conventions.

    A possibility exists that the webserver might run on a platform that WAS does not support.

  12. Click Browse on the Application Server Installation Location panel to browse for the location of the appserver profile if necessary.

    Click Next when the installation root directory is correct.

    The fully qualified path identifies the installation root directory for the WAS product, which is referred to as...

    app_server_root

    ...throughout the information center.

  13. Enter an administrative user ID and password if administrative security is enabled on the appserver.

  14. Click Browse to select the configuration file for your webserver, verify that the webserver port is correct, and then click Next when you are finished.

    Select the file and not just the directory of the file. Some webservers have two configuration files and require you to browse for each file.

    The following list shows configuration files for supported webservers:

    Apache HTTP Server

    apache_root/config/httpd.conf

    Domino Web Server

    names.nsf and Notes.jar

    The wizard prompts for the notes.jar file. The actual name is Notes.jar.

    The Plug-ins installation wizard verifies that the files exist but the wizard does not validate either file.

    IBM HTTP Server

    IHS_root/conf/httpd.conf

    Microsoft Internet Information Services (IIS)

    The Plug-ins installation wizard can determine the correct files to edit.

    Sun ONE Web Server 6.0 or Sun Java System Web Server, V6.1

    obj.conf and magnus.conf

    The wizard displays a naming panel for the nickname of the webserver definition.

  15. Specify a nickname for the webserver. Click Next when you are finished.

    The wizard uses the value to name configuration folders in the plug-ins installation root directory. The wizard also uses the name in the configuration script for the appserver to name the webserver definition.

    If the appserver profile already has a webserver definition, delete the webserver definition before continuing. Use the following commands to delete the webserver definition:

    $AdminTask deleteServer { -serverName webserver1 -nodeName webserver1_node }
    $AdminTask removeUnmanagedNode { -nodeName webserver1_node }
    $AdminConfig save
    In these commands, webserver1 is the webserver name.

  16. Specify the location for the plugin-cfg.xml file and click Next.

    This is a critical selection.

    See Plug-ins configuration for a description of the logic that determines what path is configured by default. The following possibilities exist for the default location of the plug-in configuration file. The wizard determines the characteristics of the appserver to determine the best path for the file:

    • An appserver that has an existing webserver definition has the following path:

      plugins_root/config/web_server_name/plugin-cfg.xml

    • A stand-alone appserver that does not have a webserver definition has the following path:

      profile_root/config/cells/cell_name/nodes/web_server_name_node/servers/web_server_name/plugin-cfg.xml

    You can accept the default value if the appserver does not have a webserver definition.

    If the appserver has a webserver definition, the wizard cannot create a new webserver definition within the appserver configuration. However, the wizard can reconfigure the webserver. Click Browse and select the existing plugin-cfg.xml file in the appserver configuration.

    The plug-in configuration file in a stand-alone appserver can be found in...

    profile_root/config/cells/cell_name/nodes/web_server_name_node/servers/web_server_name/plugin-cfg.xml

    If the existing web_server_name is different than the nickname that you gave the webserver in the wizard, click Back to return to the naming panel for the webserver and change the name to match the existing webserver definition name. If you cannot find an existing plugin-cfg.xml file after all, install the temporary plugin-cfg.xml file. In such a case, type the path to the plug-ins installation root directory so that the wizard can install the temporary plug-in configuration file:

    plugins_root/config/web_server_name/plugin-cfg.xml

  17. Click Next after verifying the characteristics of the plug-ins installation or click Back to make changes.

    Once created, a webserver definition on a stand-alone appserver node cannot be removed except through scripting.

    You can, however, reuse the same definition for a different type of webserver. Run the Plug-ins installation wizard to configure a new webserver in that situation. The Plug-ins installation wizard configures the new webserver to use the existing plugin-cfg.xml file.

  18. Click Next on the pre-installation summary panel to begin the installation or click Back to change any characteristics of the installation.

    The wizard begins installing the plug-ins and configuring the webserver and the appserver.

    The wizard shows an installation status panel as it installs the plug-ins.

    The wizard displays the Installation summary panel at the completion of the installation.

  19. Verify the success of the installation on the Installation summary panel and click Finish to exit the wizard.

    If a problem occurs and the installation is unsuccessful, examine the logs in...

    plugins_root/logs
    Correct any problems and reinstall.

     

  20. Domino Web server only: Set the WAS_PLUGIN_CONFIG_FILE environment variable.

    On platforms such as AIX or Linux, sourcing a script to the parent shell allows child processes to inherit the exported variables. On Windows systems, run the script as you would run any other command. Sourcing is automatic on Windows systems.

    1. Open a command window.

    2. Change directories to the plug-ins installation root directory.

    3. Issue the appropriate command for the script...

      plugins_root/bin/setupPluginCfg.sh

      • [AIX] [HP-UX] [Solaris]

        . plugins_root/bin/setupPluginCfg.sh

        Notice the space between the period and the installation root directory.

      • [Linux]

        source plugins_root/bin/setupPluginCfg.sh

    The script is also in...

    lotus_root/notesdata

    ...directory on operating systems such as AIX or Linux.

    Issue the appropriate command for the script before starting the Domino Web Server.

  21. Start the Snoop servlet to verify the ability of the webserver to retrieve an application from the Application Server.

    Test your environment by starting your Application Server, your webserver, and using the snoop servlet with an IP address.

    1. Start the Application Server.

      In a ND environment, the Snoop servlet is available in the cell only if you included the DefaultApplication when adding the Application Server to the cell. The -includeapps option for the addNode command migrates the DefaultApplication to the cell. If the application is not present, skip this step.Change directories to...

      profile_root/bin
      and run the startServer command:

    2. Start the IBM HTTP Server or the webserver that you are using.

      Use a command window to change the directory to the IBM HTTP Server installed image, or to the installed image of your webserver. Issue the appropriate command to start the webserver, such as these commands for IBM HTTP Server:

      To start the IBM HTTP Server from the command line...

      • For *nix...

        cd IBMHttpServer/bin
        ./apachectl start

      • Windows...

        cd IBMHttpServer/bin
        apache

    3. 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 webserver plug-in.

      The HTTP Transport port is 9080 by default and must be unique for every profile. The port is associated with a virtual host named default_host, which is configured to host the installed DefaultApplication and any installed Samples. The snoop servlet is part of the DefaultApplication. Change the port to match your actual HTTP Transport port.

    4. Verify that snoop is running.

      Either Web address should display the Snoop Servlet - Request/Client Information page.

       

    5. Remote IBM HTTP Server only:

      Verify that the automatic propagation function can work on a remote IBM HTTP Server by using the following steps. This procedure is not necessary for local Web servers.

      1. Create a user=adminUser, password=adminPassword in...

        IHS_root/conf/admin.passwd

        For example...

        c:\ws\ihs60\bin\htpasswd -cb c:\ws\ihs60\conf\admin.passwd adminUser adminPassword

      2. Use the console of the deployment manager or the Application Server to enter the User ID and password information that you created for the administrative user of IBM HTTP Server. Go to...

        Servers | webserver | Web_server_definition | Remote webserver administration

        Set the following values:

        • admin Port=8008
        • User Id=adminUser
        • Password=adminPassword

      3. Set the correct read/write permissions for the httpd.conf file and the plugin-cfg.xml file. See...

        IHS_root/logs/admin_error.log

      Automatic propagation of the plug-in configuration file requires the IBM HTTP administrative server to be up and running. If you are managing an IBM HTTP Server using the WAS console, the following error might display:

      "Could not connect to IHS Administration server error"
      Perform the following procedure to correct the error:

      1. Verify that the IBM HTTP Server administration server is running.

      2. Verify that the webserver host name and the port that is defined in the WAS console matches the IBM HTTP Server administration host name and port.

      3. Verify that the fire wall is not preventing you from accessing the IBM HTTP Server administration server from the WAS administrative console.

      4. Verify that the user ID and password that is specified in the WebSphere Application Server console under remote managed, is created in the admin.passwd file, using the htpasswd command.

      5. If you are trying to connect securely, verify that you export the IBM HTTP Server administration server keydb personal certificate into the WAS key database as a signer certificate. This key database is specified by the directive...

        com.ibm.ssl.trustStore

        ...in...

        sas.client.props

        ..in the profile where the console is running.

        This consideration is primarily for self-signed certificates.

      6. If you still have problems, check the IBM HTTP Server admin_error.log file and the WAS logs (trace.log file) to determine the cause of the problem.

 

Configure a webserver and a distributed appserver profile on the same machine

The rest of these steps describe how to configure an appserver that is federated into a deployment manager cell.

The following topology is considered a local distributed topology because it involves a cell:

This part of the procedure assumes that you have already installed the ND product on both machines. Also assumed is that you have already configured a deployment manager profile on Machine A and an appserver profile on Machine B.

If you are planning to add the appserver node into a deployment manager cell but have not done so yet, start the deployment manager and federate the node before installing the plug-in. You cannot add an appserver with a webserver definition into the deployment manager cell.

A webserver definition on a federated appserver is installed on the same managed node as the appserver. There is one node, but with two server processes, the appserver and the webserver definition.

If you are installing the plug-ins for use with a federated appserver, start the deployment manager. Verify that the node agent process on the managed node is also running. Both the deployment manager and the node agent must be running to successfully configure a managed node.

  1. Install IBM HTTP Server or another supported Web server on Machine B, or refer to the product documentation for your webserver for more information.

  2. Launch the Plug-ins installation wizard on the machine with the webserver.

  3. Clear the check box for the roadmap or select the check box to view the roadmap, then click Next.

  4. Read the license agreement and accept the agreement it if you agree to its terms, then click Next.

  5. If your system does not pass the prerequisites check, stop the installation, correct any problems, and restart the installation. If your system passes the prerequisites check, click Next.

  6. Select the type of webserver that you are configuring, then click Next.

  7. Select Application Server machine (local) and click Next.

  8. Accept the default location for the installation root directory for the plug-ins, then click Next.

  9. Click Browse on the Application Server installation location panel to browse for the location of the Application Server profile, if necessary. Click Next when the installation root directory is correct.

  10. Click Browse to select the configuration file for your webserver, verify that the webserver port is correct, and then click Next.

  11. Specify a nickname for the webserver, then click Next.

  12. Specify the location for the plugin-cfg.xml file and click Next. This is a critical selection. A federated appserver that does not have a webserver definition has the following path:

    profile_root/config/cells/cell_name/nodes/node_name_of_AppServer/servers/web_server_name/plugin-cfg.xml
    An appserver that has an existing webserver definition has the following path:

    plugins_root/config/web_server_name/plugin-cfg.xml

    See Plug-ins configuration for a description of the logic that determines what path is configured by default.

  13. Click Next after verifying the characteristics of the plug-ins installation or click Back to make changes.

    You can use the console of the deployment manger to delete an existing webserver or to create new ones. Federated nodes can have more than one webserver definition.

  14. Click Next on the pre-installation summary panel to begin the installation or click Back to change any characteristics of the installation.

    The wizard begins installing the plug-ins and configuring the webserver and the appserver.

    The wizard shows an installation status panel as it installs the plug-ins.

    The wizard displays the Installation summary panel at the completion of the installation.

  15. Verify the success of the installation on the Installation summary panel and click Finish to exit the wizard.

  16. Complete the installation by creating the Web server definition.

    You can use the console of the deployment manager to create the webserver definition on a federated node. Or, you can run the configuration script that the Plug-ins installation wizard created.

    The script already contains all of the information that gather when using the console option. Select one of the following options:

       

    • Use the console. Click...

      Servers | webservers | New

      ...and use the Create new webserver entry wizard to create the webserver definition.

    • Run the configure script...

      If you have enabled security or changed the default JMX connector type, edit the script and include the appropriate parameters on the wsadmin command.

      On a Windows system you can enter authentication interactively...

  17. From the console of the deployment manager, click...

    System administration | Save Changes to Master Repository | Synchronize changes with Nodes | Save

  18. Source the Domino webserver script if necessary.

  19. Start the snoop servlet.

 

Results

The installation of the binary plug-in modules results in the creation of the Plugins directory and several subdirectories. The following directories are among those created on a Linux system...

plugins_root/uninstall The uninstaller program
plugins_root/bin Binary plug-ins for all supported webservers
plugins_root/logs Log files
plugins_root/properties Version information
plugins_root/roadmap Roadmap for the Plug-ins installation wizard

The Plug-ins installation wizard creates a webserver definition within the appserver profile unless one already exists.

The Plug-ins installation wizard configures the webserver to use...

profile_root/plugin-cfg.xml

The appserver regenerates the webserver plug-in configuration file, plugin-cfg.xml whenever an event occurs that affects the file. Such events include the addition or removal of an application, server, or virtual host. The stand-alone appserver regenerates the file in the following location:

profile_root/config/cells/cell_name/nodes/web_server_name_node/servers/web_server_name/plugin-cfg.xml
On a federated node, the creation or removal of clusters and cluster members also causes file regeneration. The deployment manager regenerates the file for a federated appserver in the following location:

profile_root/config/cells/cell_name/nodes/node_name_of_AppServer/servers/web_server_name/plugin-cfg.xml

 

What to do next

You can start a stand-alone appserver and the webserver immediately after installing of the binary plug-in for the local webserver. Open the console of the appserver after you start the server and save the changed configuration.

After installing the binary plug-in for the local webserver, you can start a federated appserver and the webserver after running the configuration script that completes the installation. Open the console of the deployment manager. Wait for node synchronization to occur. Save the changed configuration that includes the new webserver definition.

See Selecting a webserver topology diagram and roadmap for an overview of the installation procedure.

See Plug-ins configuration for information about the location of the plug-in configuration file.

See webserver configuration for information about the files involved in configuring a webserver.

See Edit webserver configuration files for information about how the Plug-ins installation wizard configures supported webservers.

See Installing webserver plug-ins for information about other installation scenarios for installing webserver plug-ins.


 

Related concepts


Plug-ins configuration
webserver configuration

 

Related tasks


Installing webserver plug-ins