Removing Operators

Remove operators from your existing distributed validator cluster using the charon alpha edit remove-operators command.

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

  1. Review the edit remove-operators command CLI reference.

  2. 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.

  3. For operators being removed: A copy of the cluster lock file is required to participate in the ceremony (if participating).

  4. Identify the Charon ENR addresses of the operators you wish to remove from the cluster.

The ceremony uses a different p2p relay from your running cluster to avoid conflicts. The default relay address is already configured differently, so no special action is required.

Understanding Fault Tolerance

Before removing operators, it's crucial to understand your cluster's fault tolerance:

  • Fault tolerance (f) = number of operators - threshold

  • If you're removing more operators than the fault tolerance, you must use the --participating-operator-enrs flag 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:

When using --participating-operator-enrs, you must have at least threshold number of operators participating. Operators being removed can participate if explicitly included in this list.

For Operators Being Removed

Operators being removed have two options:

  1. If participating (when explicitly included in --participating-operator-enrs): Run the same command as other participants with the --output-dir flag

  2. If 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:

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

  1. Stop the current Charon and validator client instances:

  1. Back up and remove the existing .charon directory, then move the output directory to .charon:

  1. Restart the Charon and validator client instances:

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 threshold operators must participate in the ceremony.

Last updated

Was this helpful?