Skip Headers
Distributed Configuration Management Administrator's Guide
10g Release 2 (10.1.2)
B13997-02
  Go To Table Of Contents
Contents
Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Index
Index

Previous
Previous
Next
Next
 

1 Distributed Configuration Management Overview

This chapter briefly describes the Distributed Configuration Management (DCM) architecture and functionality.

This chapter covers the following topics:

1.1 What is Distributed Configuration Management?

Distributed Configuration Management is a management framework that enables you to create and manage multiple Oracle Application Server Instances that you can manage as a single Oracle Application Server Instance. Multiple Oracle Application Server Instances enable the application server to handle large volumes of traffic reliably, since the workload is distributed among multiple Oracle Application Server Instances.

Distributed Configuration Management enables you to:

With DCM, you can manage configuration information for the following Oracle Application Server components and applications:

1.1.1 Elements of a Distributed Configuration

Distributed configuration management enables you to synchronize the configuration of, archive, and import and export multiple Oracle Application Server Instances as if they were a single Oracle Application Server Instance. This guide refers to such configurations as "DCM-configured". To provide the management functionality, DCM keeps information about an Oracle Application Server Instance's configuration in the DCM Metadata Repository. The repository and the Oracle Application Server Instances comprise the distributed configuration. In this section, each element of the distributed configuration and its relationship to other elements is described in detail.

1.1.1.1 What is an Oracle Application Server Instance?

The fundamental element of the distributed configuration is the Oracle Application Server Instance: the set of processes required to operate the components that are configured. The terms "instance" and "installation" are sometimes used interchangeably, but note the distinction: an instance is the set of processes that operate the components, whereas an installation is the set of files installed into an Oracle home. The distinction is important in the context of DCM management, because the DCM management scope does not extend to all files installed in the Oracle home—only those related to the set of processes that are needed to operate the configured components.

1.1.1.2 What is a DCM-Managed Oracle Application Server Cluster?

A DCM-Managed OracleAS Cluster is a collection of Oracle Application Server Instances with identical configuration and application deployment characteristics. To become members of a DCM-Managed OracleAS Cluster, Oracle Application Server Instances must be of the same installation type and version, reside on a like operating system (for example, UNIX and Linux) and contain only Oracle HTTP Server, OC4J, OPMN, and JAZN components.

1.1.1.3 What is an Oracle Application Server Farm?

An Oracle Application Server Farm is a collection of OracleAS Clusters and Oracle Application Server Instances that share the same DCM Metadata Repository. The shared repository is called the repository host. Section 1.1.1.4.2, "File-based Repository (Repository Host)" describes the repository host and its use.

An Oracle Application Server Farm may be of one of the following types: an OracleAS File-Based Farm or an OracleAS Database-based Farm.

1.1.1.4 Understanding the DCM Metadata Repository

In order to manage configurations, DCM stores information about the configuration (called configuration metadata in this guide) in the DCM Metadata Repository.

All configuration data is stored in the DCM Metadata Repository. The DCM Metadata Repository is a distinct metadata repository that is not dependent on the Oracle Application Server Metadata Repository.

The DCM Metadata Repository contains:

  • Configuration files for Oracle HTTP Server, OC4J, OPMN, and JAZN components

  • Deployed J2EE applications

  • Information about the Oracle Application Server Instance or OracleAS Cluster

A DCM Metadata Repository is stored in the file system or in the database, in one of the following configurations:

1.1.1.4.1 File-based Repository (Standalone Oracle Application Server Instance)

A single Oracle Application Server Instance that is not part of an OracleAS Cluster or Farm is called a standalone Oracle Application Server Instance. Every Oracle Application Server Instance has a local file-based repository. When an Oracle Application Server Instance is associated with an OracleAS File-Based Farm, but is not the repository host, the local file-based repository contains the Bill of Materials (BOM) that DCM uses to validate that the Oracle Application Server Instances's configuration is synchronized with the configuration metadata in the repository. When the Oracle Application Server Instance is not associated with an Oracle Application Server Farm, the local file-based repository is the only stored representation of the Oracle Application Server Instance's configuration information.

1.1.1.4.2 File-based Repository (Repository Host)

When an Oracle Application Server Instance is defined as the repository host for an OracleAS File-Based Farm, the repository for that Oracle Application Server Instance contains the configuration metadata for all Oracle Application Server Instances in the OracleAS File-Based Farm.

Since the repository host Oracle Application Server Instance stores configuration information on its file system, the repository host Oracle Application Server Instance should use mirrored or RAID disks to increase availability. However, when the repository host Oracle Application Server Instance is unavailable:

  • OracleAS Clusters using it still function normally, but cannot update any configuration information.

  • Read-only configuration operations are not affected on any running Oracle Application Server Instance (the Oracle Application Server Farm's cluster-wide configuration information is distributed and managed through the local repository.

  • Operations that attempt to change configuration information in the repository will cause an error. These operations must be delayed until the repository host Oracle Application Server Instance is available, or until the repository host Oracle Application Server Instance is relocated to another Oracle Application Server Instance within the Oracle Application Server Farm (see repositoryRelocated).

1.1.1.4.3 Database-based repository

A Database-based repository is comprised of DCM schema. Storing the DCM Metadata Repository in a database may be useful as part of a site's high availability and backup strategy. Using a Database-based repository, the database serves as the repository host.

For all three types of DCM Metadata Repository: Database-based repository, file-based repository in standalone mode, or file-based repository host mode, an Oracle Application Server Instance always has a local file-based repository. In cases in which the Oracle Application Server Instance is not included in an OracleAS Farm, the local file-based repository is the sole persistent storage for that Oracle Application Server Instance's configuration metadata.

When you make configuration changes using either Oracle Enterprise Manager 10g Application Server Control Console or the dcmctl utility, the configuration management system updates the DCM Metadata Repository to reflect your changes.


See Also:

Section 2.2.1, "Designating the OracleAS File-Based Farm Repository Host" , Section 2.2.2, "Adding Instances to an OracleAS Farm" and Section 2.2.3, "Creating a DCM-Managed OracleAS Cluster" for information on setting up the file-based repository and working with Oracle Application Server Instances and OracleAS Clusters.

1.1.1.5 Understanding Synchronization of the Metadata Repository and the Oracle Application Server Instance

The DCM Metadata Repository is the definitive source for DCM-managed configuration information. If there is a difference between the Oracle Application Server Instance configuration stored in the repository and the Oracle Application Server Instance configuration in the associated ORACLE_HOME file system, the configuration in the file system is updated with the configuration in the repository. When the DCM repository and the file system configuration information are identical, the configuration is synchronized; its In Sync Status is true. (See getState and resyncInstance.)

Immediately after a configuration change, DCM automatically attempts to resynchronize the members of an OracleAS Cluster. If an Oracle Application Server Instance in an OracleAS Cluster is not available, the resynchronization occurs the next time the DCM daemon on the Oracle Application Server Instance is started. The DCM daemon can be started manually with the opmnctl startproc ias-component="dcm-daemon" command.

When a configuration change is made in a Oracle Application Server Farm or in a OracleAS Cluster, DCM attempts to ensure that the change will be successful by first applying the change to the local Oracle Application Server Instance, before attempting to propagate the change to other Oracle Application Server Instances. If the configuration change fails in the local Oracle Application Server Instance, its effects are automatically rolled back; no changes are made to any Oracle Application Server Instance.

In some cases, a configuration change may succeed on the local Oracle Application Server Instance, but fail on other Oracle Application Server Instances in the Oracle Application Server Farm or OracleAS Cluster. This could occur for many reasons, including insufficient disk space, file system security, or connectivity from the Oracle Application Server Instance to a dependent service such as Oracle Internet Directory or the database. In these cases, the In Sync status of the Oracle Application Server Instance is set to false.

When the In Sync status is set to false, the event is recorded, with details, in the DCM log file. When the problem that caused the status to be set to false is resolved, you should resynchronize the Oracle Application Server Instance, using the dcmctl resyncinstance command to copy the configuration stored in the repository for an Oracle Application Server Instance to the file system for the Oracle Application Server Instance (see resyncInstance).

The updateConfig command is another synchronization command that requires special handling. The updateConfig command takes configuration information from the file system and places this configuration information in the DCM repository. Ensure that you understand the guidelines for using the updateConfig command before you use it (see updateConfig).

1.2 Distributed Configuration Management Architecture

Distributed Configuration Management consists of clients, a daemon, and the DCM Metadata Repository. Figure 1-1 shows the relationship between these and other Oracle Application Server components. The clusterable plugin's configuration is managed within the DCM Metadata Repository; clusterable plugins have a copy of persistent data stored in the DCM Metadata Repository. Non-clusterable plugins do not.

Figure 1-1 Distributed Configuration Management Architecture

Distributed Configuration Management Architecture
Description of "Figure 1-1 Distributed Configuration Management Architecture"

The Oracle Enterprise Manager 10g Application Server Control Console and dcmctl contain the DCM client JAR file.

1.2.1 The Distributed Configuration Management Bootstrap Sequence

It is helpful at times to understand the order in which components are started upon initialization. The DCM bootstrap sequence is as follows:

  1. The DCM client checks to determine whether Oracle Process Manager and Notification Server is running.

    1. If not, it starts Oracle Process Manager and Notification Server.

    2. If yes, it discovers and uses it.

  2. The DCM client checks to determine whether the DCM daemon is running.

    1. If not, it starts the daemon.

    2. If yes, it discovers and uses it.


      Note:

      Do not stop the DCM daemon explicitly (using the opmnctl stopall command) when an active DCM client is in use. If you stop the DCM daemon explicitly, then you must restart the DCM client.

  3. The DCM daemon checks the configuration file version of Oracle HTTP Server, OC4J, Oracle Process Manager and Notification Server, and Java Authentication and Authorization Service (using the configurable plug-ins shown in Figure 1-1).

  4. The DCM daemon updates the configuration file versions, if required.

  5. The DCM daemon restarts Oracle Process Manager and Notification Server, if required.