A configuration group provides a mechanism for ensuring consistent configuration among ATG server instances. At startup, instances that are members of a configuration group download group configuration properties from the group’s master server. At runtime, group members can periodically download updates that pertain to their group.

Note: Like other configuration changes, group configuration changes generally take effect only on instance startup; they have no effect on a running Nucleus component.

In order to join a group, an ATG instance must define itself as a group client or server by setting a ConfigurationClient or a ConfigurationServer component:

One ConfigurationServer is designated as the default group master. Changes to group settings must be set on the master ConfigurationServer; it then distributes those changes to other ConfigurationServers and ConfigurationClients in the group.

A group can have one or more ConfigurationServers. If the primary master fails, another ConfigurationServer assumes the role of group master until the primary master resumes operation. The order of succession is established by the primary master and distributed to other ConfigurationServers.

Note: An ATG instance that serves as a configuration server can also act as a configuration client, and typically does so.

Requirements

To use group configuration, the following requirements apply to each ATG server instance in the group:

Group Identifiers and Node Types

A configuration group is identified by its group name, where each ConfigurationClient and ConfigurationServer in the group is configured with the same Configuration.groupName property. Settings that are specific to a group are known only to the member ATG instances. An ATG instance can belong to only one group at a time.

Note: A configuration group can overlap multiple ATG server clusters — for example, publishing and production clusters.

Within a group, ATG server types are differentiated through their node types. For example, a configuration group might contain these servers:

In order to differentiate settings among server types, each server’s configuration client sets its Configuration.nodeType property to a value that corresponds to its server type. Given the previous server types, you might set their respective Configuration.nodeType properties as follows:

The following diagram shows how a configuration group might be composed:

 
loading table of contents...