Red Hat Training

A Red Hat training course is available for Red Hat JBoss Web Server

12.5. Configure a Basic Cluster with ISAPI

Task: Configure ISAPI to serve a Basic Cluster

Complete this task to configure ISAPI to manage applications common to all servers on a single IP address range, and route application requests to the correct server instance.
Use the configuration as an example when configuring your ISAPI cluster.

Note

This task does not provide instructions for load-balancing or server outage fail over. Refer to Section 12.6, “Configure a Load-balancing Cluster with ISAPI” for configuration instructions.

Prerequisites

  1. Create isapi_redirect.properties file

    Create a new file named isapi_redirect.properties in the C:\connectors\jboss-ep-5.1\native\sbin\ directory.

    Important

    The isapi_redirect.properties file must be in the same directory as the isapi_redirect.dll file.
    Append the following configuration lines into the file:
    # Configuration file for the ISAPI Redirector
    # Extension uri definition
    extension_uri=/jboss/isapi_redirect.dll
    
    # Full path to the log file for the ISAPI Redirector
    log_file=c:\connectors\isapi_redirect.log
    
    # Log level (debug, info, warn, error or trace)
    # Use debug only testing phase, for production switch to info
    log_level=debug
    
    # Full path to the workers.properties file
    worker_file=c:\connectors\workers.properties
    
    # Full path to the uriworkermap.properties file
    worker_mount_file=c:\connectors\uriworkermap.properties
    
    #Full path to the rewrite.properties file 
    rewrite_rule_file=c:\connectors\rewrite.properties
  2. Optional: Create rewrite.properties file

    The rewrite.properties file allows you to specify simple URL rewrites specific to an application. This configuration file is optional, and can be excluded from the isapi_redirect.properties file if URL rewrites are not required.
    The functionality offered is similar to Apache mod_rewrite, but is less powerful. You specify the rewrite path using name-value pairs. A simple example is where the app_01 application has an abstract directory name containing images, and you want to remap that directory to something more intuitive.
    #Simple example, images are accessible under abc path
    /app-01/abc/=/app-01/images/
  3. Create uriworkermap.properties file

    The uriworkermap.properties file contains deployed application mapping configuration information. Append the following lines into the file.
    # images and css files for path /status are provided by worker01
    /status=worker01
    /images/*=worker01
    /css/*=worker01
    
    # Path /web-console is provided by worker02
    # IIS (customized) error page is used for http errors with number greater or equal to 400
    # css files are provided by worker01
    /web-console/*=worker02;use_server_errors=400
    /web-console/css/*=worker01
    
    # Example of exclusion from mapping, logo.gif won't be displayed  
    # !/web-console/images/logo.gif=*
    
    # Requests to /app-01 or /app-01/something will be routed to worker01
    /app-01|/*=worker01
    
    # Requests to /app-02 or /app-02/something will be routed to worker02
    /app-02|/*=worker02
  4. Create workers.properties file

    The worker.properties file contains mapping definitions between worker labels and server instances. Append the following lines into the file.
    # An entry that lists all the workers defined
    worker.list=worker01, worker02
    
    # Entries that define the host and port associated with these workers
    
    # First EAP server definition, port 8009 is standard port for AJP in EAP 
    worker.worker01.host=127.0.0.1
    worker.worker01.port=8009
    worker.worker01.type=ajp13
    
    # Second EAP server definition
    worker.worker02.host= 127.0.0.100
    worker.worker02.port=8009
    worker.worker02.type=ajp13
  5. Restart IIS

    Restart your IIS server to implement the changes. Execute the following commands for the IIS version you are running:
    IIS 6
    C:\> net stop iisadmin /Y
    C:\> net start w3svc
    IIS 7
    C:\> net stop was /Y
    C:\> net start w3svc
  6. Verify the Logs

    Ensure you check the ISAPI logs once IIS has restarted. The logs are saved to the file location specified in the log_file property in isapi_redirect.properties. You should also check IIS logs and the Event Viewer for other events.