Removing Operators
Remove operators from your existing distributed validator cluster using the charon alpha edit remove-operators command.
This is an alpha feature and is not yet recommended for production use.
You can remove operators from your cluster using the charon alpha edit remove-operators command. This operation leaves all validators intact whilst removing specified operators from the cluster.
Prerequisites
Review the
edit remove-operatorscommand CLI reference.For remaining operators: Keep the DV node running during the process and ensure you have a copy of the current cluster lock file and validator private key shares.
For operators being removed: A copy of the cluster lock file is required to participate in the ceremony (if participating).
Identify the Charon ENR addresses of the operators you wish to remove from the cluster.
Understanding Fault Tolerance
Before removing operators, it's crucial to understand your cluster's fault tolerance:
Fault tolerance (f) =
number of operators - thresholdIf you're removing more operators than the fault tolerance, you must use the
--participating-operator-enrsflag to specify which operators will participate in the ceremony.
For example, if your cluster has 4 operators with a threshold of 3 (f=1), removing 2 operators requires specifying at least 3 participating operators.
Removing Operators Process
Standard Removal (Within Fault Tolerance)
If you're removing operators within the fault tolerance, all remaining operators can participate automatically:
Advanced Removal (Exceeding Fault Tolerance)
If you're removing more operators than the fault tolerance allows, you must specify participating operators:
For Operators Being Removed
Operators being removed have two options:
If participating (when explicitly included in
--participating-operator-enrs): Run the same command as other participants with the--output-dirflagIf not participating: Do not run the command at all; simply ignore the ceremony
Customising the Threshold
By default, the new threshold is calculated as ceil(n * 2 / 3), where n is the new number of operators. You can override this with the --new-threshold flag:
Using a non-default threshold value decreases security. All operators must use the same value. Only override this if you fully understand the implications.
Making the DV Stack Use the New Configuration
The example below is designed for the CDVN repository, but the process is similar for other setups.
For Remaining Operators
Stop the current Charon and validator client instances:
Back up and remove the existing
.charondirectory, then move theoutputdirectory to.charon:
Restart the Charon and validator client instances:
All remaining operators must fully shut down their existing cluster nodes before starting with the new configuration. The old cluster must be completely stopped before the new cluster with the reduced operator set can begin operating.
For Removed Operators
Operators who have been removed can safely shut down their nodes after the ceremony completes:
Current Limitations
The new cluster configuration will not be reflected on the Launchpad.
The new cluster configuration will have a new cluster hash, so the observability stack will display new cluster data under a different identifier.
All remaining operators must have valid validator keys to participate in the removal ceremony.
When removing more operators than the fault tolerance, at least
thresholdoperators must participate in the ceremony.
Last updated
Was this helpful?

