|
|
2 lat temu | |
|---|---|---|
| .. | ||
| etc | ce3ec351c7 chore: remove unused conf comments | 2 lat temu |
| include | 8d83dc12e7 chore(rebalance): move apps from lib-ee, add READMEs | 2 lat temu |
| src | 423b586c56 fix(dialyzer): fix some dialyzer issues found on otp 26 | 2 lat temu |
| test | 22f7cc1622 test: replace 'slave' and 'ct_slave' with 'peer' | 2 lat temu |
| BSL.txt | 8d83dc12e7 chore(rebalance): move apps from lib-ee, add READMEs | 2 lat temu |
| README.md | 8d83dc12e7 chore(rebalance): move apps from lib-ee, add READMEs | 2 lat temu |
| rebar.config | 5e100f52b8 style: erlfmt all `rebar.config` files and `bin/nodetool` | 2 lat temu |
emqx_node_rebalance is a part of the node evacuation/node rebalance feature in EMQX.
It implements high-level scenarios for node evacuation and rebalancing.
emqx_node_rebalance application's core concept is a rebalance coordinator.
Rebalance сoordinator is an entity that implements the rebalancing logic and orchestrates the rebalancing process.
In particular, it:
We have two implementations of the rebalance coordinator:
emqx_node_rebalance - a coordinator that implements node rebalancing;emqx_node_rebalance_evacuation - a coordinator that implements node evacuation.emqx_node_rebalance is a high-level application that is loosely coupled with the rest of the system.
It uses Eviction Agent to perform the required operations.
The application provides API (CLI and HTTP) to perform the following operations:
Also, an HTTP endpoint is provided for liveness probes.
The rebalancing concept is described in the corresponding EIP.
Please see our contributing.md.