5.2.4 Application server configuration

The WAS configuration is stored in XML files under...

PROFILE/config

The same core files are used at the application server instance level in each of the WAS editions. There are some differences in the configuration at the higher level between the high availability WAS editions and the standalone edition.

A WAS unit of management is called a cell, which in a high availability environment such as that from the WAS ND edition, is made up of...

The node agents on the node are responsible for keeping the configuration of all WAS instances on the node in sync with the configuration held on the deployment manager, both of which are WAS instances in their own right that have specialized configurations and purposes.

Core to all of the installations of WAS are the server.xml file and the serverindex.xml file for the given instance. However, other configuration files are also important.

The XML configuration files listed below should only be updated via administration system console operations or when scripting via wsadmin.

File Purpose
admin-authz.xml Server instance role assignments and mappings from users and groups of users to these internal roles.
cell.xml Small amount of information as to whether the cell is STANDALONE or DISTRIBUTED.
coregroup.xml Configuration of core groups for high availability fast failover of singletons by the WAS HAManager for the Network Deployment edition and above.
cluster.xml High availability cluster topology configuration for the cluster node to enable it to identify its place in the cluster with the other cluster members.
hamanagerservice.xml Timeout, thread pool configuration, and buffer management configuration for each core group managed by the HAManager in the WAS ND environments and above.
installed-channels.xml Details of the installed channels for the environment. This is little used and often contains no real configuration.
libraries.xml Optional libraries to be deployed into a particular application environment, such as those for the JSF standard that adds additional functionality to the Web container.
multibroker.xml Reliable multicast messaging configuration for the data replication for high availability.
namestore.xml Data persistence binding configuration.
naming-authz.xml Security configuration of roles and user and group mappings to those roles for naming operations.
nodes.xml Node topology information for the cell so the cell can identify its place in the cell.
pmi-config.xml PMI performance metrics module configuration to identify what is being monitored and how WAS is monitoring it (that is, what level of monitoring, what components within that PMI configuration item are being monitored, and what Java level components are involved in that monitoring or reporting on that monitoring).
perftuners.xml Rule configuration for the WAS built-in application-level and system-level monitoring advisors. WAS can simply, with minimal overhead, be configured to monitor itself according to a set of rules to allow it to advise on any misconfiguration or improvements that can be made for a particular usage and set of applications. The mapping of the rules to the Java code that validates the environment against those rules and reports against them is configured in this file.
plugin-cfg.xml Configuration file for the Web server plug-in that configures the Web servers for application mappings, weightings for use of a particular cluster member, and general cluster load balancing and high availability configuration to be used in routing decisions when forwarding a request from a Web server to an application server instance.
pmirm.xml PMI request metrics configuration for what subsystems metrics are available for and to be monitored for, and any filtering that is to be applied.
resources-cei.xml Common Event Infrastructure (CEI) provider resource configuration for Common Business Events (CBE) that applications can emit and subscribe to. This is seen to best effect in the WebSphere Business Integration Server Foundation and WebSphere Process Server families. This was introduced with WAS 5.1.
resources-pme502.xml WAS 5.02 programming model extensions (PME) configuration such as the Dynamic Caching (dynacache). This was introduced with WAS 5.0.2.
resources-pme.xml WAS programming model extensions for the more general WAS 5.0 products and above, such as the Object Pool Provider, the Work Manager Provider, and Scheduler Provider.
resources.xml J2C/JCA resource adapter providers that provide the underpinnings for EJB entity bean access to a particular DBMS, messaging provider configuration, and EIS integration product WAS configuration such as for integration with CICS or IMS. This file also contains the configuration for how these resource adapters are administered from within the WAS/J2EE environment.
security.xml WAS, J2EE, and JCA security configuration for the server. Configuration for single signon, trust association interceptors, CSIv2 IIOP security, and so on all goes in here. If there is an issue with integrating WAS security with platform security, such as for Kerberos, examine the contents of this file. It also contains some user ID and password data in some configurations, access information to key stores, key information, and SSL configuration. If WAS is to be locked down securely, this file should be understood. It is one of the most important configuration files in any WAS environment.
server.xml Contains the majority of the configuration for a particular WAS instance. It contains mappings, connection and buffer configuration, and component enablement configuration for the communications channels for the core WAS containers (that is, the Web Container, the EJB Container, the Service Integration Bus, and so on), thread pool configuration, and the majority of configuration items that are not covered elsewhere. This is the most important configuration file for a WAS instance.
serverindex.xml Contains the port listener configuration and mappings from WAS variable names configured elsewhere within the WAS configuration to actual values. This is important for a platform and network administrator to be aware of because the majority of these ports must be open at the platform level through any firewalls for WAS to function correctly. This is one of the most important configuration files in a WAS environment.
sib-service.xml Contains the Service Integration Bus (SIB) service configuration.
systemapps.xml Contains the configuration for the instance to enable system-level applications such as the file transfer service or management EJBs.
variables.xml Contains the substitution mappings from internal configuration variables (like environment variables) to their actual values for the specific WAS environment; for example, the WAS_CELL_NAME variable might be mapped to myhostnameWASCellName01.
virtualhosts.xml Contains the virtual host configuration and mime.types for that host for each of the virtual hosts configured for the environment. This will at the very least contain the configuration and mime types for default_host.
ws-security.xml Contains the security key and certificate store configuration, the login type and configuration, encryption configuration, and other security configuration for the WS-Security standard for Web services for WAS.

WAS XML configuration files

Many of the configuration files in Table 5-2 occur in multiple places in the profile directory hierarchy. This allows a particular application server instance to override the configuration of the cluster and node it is part of, and to override some of the configuration at the cell level if needed.

The structure of the directories is shown in Example 5-1.

Example 5-1 Configuration file directory structure

cells
    cell1
        applications
             application1.ear
             application2.ear
        clusters
              cluster1
              cluster2
        coregroups
             DefaultCoreGroup
        nodegroups
             DefaultNodeGroup
        nodes
            node1
                servers
                    server1
                    server2
            node2
                servers
                    server1
                    server2
    cell2
        applications
            application1.ear
             application2.ear
        clusters
              cluster1
              cluster2
        coregroups
             DefaultCoreGroup
        nodegroups
             DefaultNodeGroup
        nodes
            node1
                servers
                    server1
                    server2
            node2
                servers
                    server1
                    server2

The directory structure shown in Example 5-1 is only fully implemented and meaningful in WAS ND and above, although parts of it still apply to the standalone edition of WAS.

The applications subdirectory contains the code and J2EE configuration for the applications configured at the level at which the applications directory is found. Because J2EE applications are EAR files which themselves contain Java code and WAR, EJB-JAR and JAR files, these directories are named after the EAR file for the given application and thus, have a .ear file extension1.

Other non-XML files are used for some configuration. For example, some security configuration for LTPA tokens and keystores is found in ltpa.jceks, key.p12, and trust.p12, although this is not directly configurable

1For more details about this configuration, refer to the J2EE standard documentation at: http://java.sun.com