Replicas in eDirectory
Articles and Tips: article
Senior Research Engineer
Novell AppNotes
01 Jul 2002
This month let's look at replicas in eDirectory. A replica is a copy or an instance of a user-defined partition that is distributed to an eDirectory server. Each server can store more than 65,000 eDirectory replicas; however, only one replica of the same user-defined partition can exist on the same server.
Note: When referring to Novell's Directory product, eDirectory refers to the product and is used extensively to market the product. NDS refers to the underlying technology that makes eDirectory perform its magic.
There are four types of replicas that can be stored on an eDirectory server:
Master replica
Read/Write replica
Read-Only replica
Subordinate Reference replica
The following table shows the differences between the four replica types. A discussion of each replica type follows.
Replica Type
|
NDS Partition
Operations
|
NDS Object
Modifications
(Writable Replica)
|
NDS Bindery
Emulation
(Writable Replica)
|
NDS Object Reads
(Readable Replica)
|
Fault Tolerance
(Contains all objects
within the Partition
Boundaries)
|
NDS Directory
Tree Connectivity
(Contains Partition
Root Object)
|
Master Replica |
X |
X |
X |
X |
X |
|
Read-Write Replica |
X |
X |
X |
X |
X |
|
Read Only Replica |
X |
X |
X |
|||
Subordinate Reference Replica |
X |
Master Replica
The Master replica is a writable replica type used to initiate changes to an object and/or partition. The Master replica manages NDS partition operations such as:
Adding replicas to servers
Removing replicas from servers
Creating new partitions in the eDirectory tree
Removing existing partitions from the eDirectory tree
Relocating a partition in the eDirectory tree
The Master replica is also used to perform eDirectory object operations, such as:
Adding new objects to the eDirectory tree
Removing, renaming, or relocating existing objects in the eDirectory tree
Authenticating objects to the eDirectory tree
Adding new object attributes to the eDirectory tree
Modifying or removing existing attributes
The Master replica is also a readable replica type that reads information about objects within the partition's boundaries, and encompasses all objects within its boundaries. Since the Master replica is responsible for managing partition operations, such as removing a replica from a server, you cannot remove a Master replica from a server without first designating a replica on another server as the new Master.
The Master replica also provides bindery emulation for compatibility with previous versions of the NetWare Operating System.
Read/Write Replica
The Read/Write replica is a writable replica type used to initiate object changes. The Read/Write replica also performs object operations, such as:
Adding new objects to the eDirectory tree
Removing, renaming, or relocating existing objects in the eDirectory tree
Authenticating objects to the eDirectory tree
Adding new object attributes to the eDirectory tree
Modifying or removing existing object attribute
The Read/Write replica is also a readable replica type used to read information about all objects in a partition's boundaries. Additionally, like the Master replica, the Read/Write replica can provide bindery emulation.
The Read/Write replica provides eDirectory tree fault tolerance. If the Master replica is destroyed or damaged, a Read/Write replica can be promoted to become the new Master replica.
Read-Only Replica
The Read-Only replica is a readable replica type used to read information about all objects in a partition's boundaries. This replica type is not able to provide bindery emulation. The Read-Only replica provides eDirectory tree fault tolerance. If the Master replica and all read/write replicas are destroyed or damaged, the Read-Only replica can be promoted to become the new Master replica.
Subordinate Reference Replica
The Subordinate Reference replica is used primarily for eDirectory tree connectivity. By encompassing only the partition root object, a Subordinate Reference replica is able to provide the identity of the servers that hold a readable replica of a partition.
The Subordinate Reference replica is neither a readable nor writable replica type. In addition, the Subordinate Reference replica cannot provide bindery emulation, but is added to and removed from a server by an NDS process (and not by a user) and therefore cannot be removed from a server. Lastly, the Subordinate Reference replica does not provide eDirectory tree fault tolerance.
Replica States
NDS replica states act as milestones that track partition or replica operations. The replica states, the values representing the states, and their basic meanings are described in the table, below.
Replica State
|
Value
|
Meaning
|
On |
0 |
Indicates that the replica is not participating in any partition or replica operation. |
New |
0 x 1h |
Indicates that the Master replica is currently placing the replica on the server and the replica is not yet available. This state is used by the NDS partition operation Add Replica. |
Dying |
0 x 2h |
Indicates that the replica is currently being removed from the server and is not available. This replica state is used by the NDS partition operation Remove Replica. |
Locked |
0 x 3h |
Indicates that another partition operation is currently using the replica and no new partition operation can begin on the replica until the current partition operation completes. |
Change Replica Type Level 0 & Level 1 |
0 x 4h & 0 x 5h |
Indicates that the server designated as holding the Master replica is currently being changed. |
Transition On |
0 x 6h |
Indicates that the replica has recently been added to the server using the partition operation Add Replica. |
Dead Replica |
0 x 7h |
Indicates that other servers are being notified that a replica is dying. After a replica goes through replica state 2 (dying), there still may be servers that need to be notified that the replica is going away. The replica stays in this state until the server holding the replica synchronizes successfully to another server, letting it know that the replica is ready to be removed. |
Begin Add |
0 x 8h |
Indicates that a replica is being added. This is the initial state that begins the process of adding a new replica. |
Master Start |
0 x Bh |
Indicates that the replica type is being changed. |
Master Done |
0 x Ch |
Indicates that the servers involved in the change of the replica types have all been updated and the replica's next state is on. |
Federated |
0 x Dh |
Indicates that a partition is federated. |
Split State Level 0 & Level 1 |
0 x 30h & 0 x 31h |
Indicate that the replica is currently involved in the partition operation Split Partition, which is used to create partitions. |
Join State Level 0, Level 1 & Level 2 |
0 x 40h, 0 x 41h & 0 x 42h |
Indicate that the replica is currently involved in the partition operation Join Partition, which is used to merge two partitions together and eliminate the child partition from the eDirectory tree. |
Move State Level 0, Level 1 & Level 2 |
0 x 50h, 0 x 51h & 0 x 52h |
Indicates that the replica is currently involved in the partition operation Move Sub-Tree, which is used to relocate a partition from its existing parent partition to a different parent partition. |
Replica Ring
Each partition root object has one or more replica attributes that contain information about the servers that are holding the replicas of the partition. This collection of replica attributes on the partition root object is referred to as the replica ring.
Replica Number
Each eDirectory replica is assigned a number that is used to identify the modifications made by the server holding the replica. Each replica number must be unique within the replica ring of the partition; how- ever, the replica numbers do not have to be unique across replica rings from different partitions. In addition, replica numbers do not have to be a continuous sequence of numbers.
Replica Depth
The replica depth of an eDirectory partition is determined by the location of its partition root object within the hierarchical structure of the eDirectory tree. Each object that is superior to its partition root object within the hierarchical structure of the eDirectory tree increases the replica depth of the partition by one.
Conclusion
This month we discussed eDirectory replicas and the NDS technology that makes them operate. We talked about the four types of eDirectory replicas and the states that each of these can be in at any given time. Next month, we'll provide you with another tasty eDirectory concept!
* Originally published in Novell AppNotes
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.