Introduction
Leaderless mode is a Mendix Runtime clustering model without a permanently assigned cluster leader. This means that all nodes are equal and should also have equal configuration and dynamically elect a leader when necessary. All nodes coordinate through the database to determine which node performs database synchronization.
Environment
- Mendix Runtime 10.24 and later
- Mendix Cloud
- Mendix on Kubernetes
- Mendix Portable Runtime
Details
Leaderless mode support depends on the deployment type:
| Deployment type | Leaderless mode support |
|---|---|
| Mendix Cloud | Enabled by default for apps based on Mendix 10.24 and later. |
| Mendix on Kubernetes | Can be enabled for apps based on Mendix 10.24 and later and Operator 2.23 or later. |
| Mendix Portable Runtime | Enabled by default from Mendix 10.24.19 LTS, 11.6.5 MTS, 11.9, and later versions. |
| Docker Buildpack | Not supported. Docker Buildpack only supports the cluster leader and follower model. There are no plans to add leaderless mode. |
| Cloud Foundry Buildpack (Deprecated) | Not supported. Uses the cluster leader and follower model. |
In leaderless mode, every node checks whether database synchronization is needed. Nodes use a lock on the deployment ID entry in the SystemProperties table to ensure that only one node performs synchronization.
- When the deployment ID matches the current model version, no synchronization is needed.
- When the deployment ID differs and the entry is unlocked, the first node to acquire the lock performs database synchronization.
- Other nodes wait until the lock is released.
- After synchronization, the node updates the deployment ID to the current model version and releases the lock.
- Waiting nodes then detect that synchronization is no longer needed.
This coordination prevents multiple nodes from applying database synchronization at the same time.
As a side note, when leaderless mode is enabled, com.mendix.core.isClusterSlave is not required.
Internal information related
- 283592, 283218
- RUN-4919
- C3T260XGA/p1784271840191409, C0161BEMQ4B/p1785309071861629, CA82XPUQG/p1784538714981459
Additional information
Not applicable yet
0 Comments