How to Disable vCLS on a vSphere Cluster Using Retreat Mode

The vSphere Cluster Services (vCLS) are a critical part of maintaining cluster features like vSphere DRS and HA in your VMware environment. But there might be scenarios where you need to disable vCLS on a cluster — for example, for troubleshooting or special configurations. This is where Retreat Mode comes in.

In this post, you’ll learn:

  • What Retreat Mode is
  • The impact of using it
  • How to enable or disable it safely across different vSphere versions

📌 What is vCLS and Retreat Mode?

vCLS deploys lightweight agent VMs in every vSphere cluster to maintain cluster services. Without these VMs, some services like vSphere DRS and HA cannot function properly in vSphere versions prior to 9.0.

Retreat Mode is a way to tell vCenter: “Stop running vCLS VMs on this cluster.” This disables vCLS for that cluster — but at a cost.

👉 Good news:
Starting with vSphere 9.0, you can disable vCLS without losing DRS or HA functionality!

👉 Important for older versions:
In versions before vSphere 9.0, disabling vCLS means DRS will stop working and HA placement will be suboptimal. Also, vSAN cluster health might show as degraded.

⚠️ Risks and Impacts of Retreat Mode

If you enter Retreat Mode on a cluster:

  • vCLS VMs will be removed
  • DRS will stop balancing workloads automatically
  • HA can still restart VMs, but may pick less optimal hosts
  • vSAN cluster health may show “Degraded”

Use Retreat Mode only when absolutely necessary.


🛠️ How to Enable Retreat Mode

vSphere 7.0 U3o, 8.0 U2, and Later

VMware has made this easy in recent updates:

  1. Log in to the vSphere HTML5 Client.
  2. Go to Hosts and Clusters.
  3. Select your cluster.
  4. Click the Configure tab.
  5. Under vSphere Cluster Services, click General.
  6. Click EDIT VCLS MODE (top right).
  7. Select Retreat Mode and click OK.

Done! The vCLS VMs will be cleaned up automatically.


Older Versions (before 7.0 U3o / 8.0 U2)

This takes a few extra steps:

1️⃣ Log in to vSphere Client.
2️⃣ Go to your cluster and copy its domain ID from the URL. Example:

domain-c1006

⚠️ Only use the domain-c<number>! Using the wrong ID can break vCenter.

3️⃣ In the vCenter Server, go to Configure → Advanced Settings → Edit Settings.

4️⃣ Add a new setting:

Name:  config.vcls.clusters.domain-c<number>.enabled  
Value: False

5️⃣ Click Save.

👉 vCLS VMs will be cleaned up automatically.

6️⃣ To re-enable, set the value back to True.


Using CLI or API

You can also bulk manage Retreat Mode using the provided Python script:

python retreatModeConfiguration.py -r disable

or

python retreatModeConfiguration.py -r enable

🔍 How to Identify vCLS VMs

vCLS VMs are named:

vCLS (1), vCLS (2), ...

They are found under a special vCLS folder in VMs and Templates view.

You can also confirm using vSphere Managed Object Browser (MOB):

https://<vCenter_IP>/mob/?moid=vm-1004&doPath=config.managedBy

✅Sumarry

  • vSphere 9.0+: You can disable vCLS safely — DRS and HA won’t be affected.
  • Earlier versions: Retreat Mode disables vCLS and disables DRS! Be sure you understand the impact.

Use Retreat Mode responsibly and always monitor your cluster health after making changes.


👉 For full details, check out the official KB: Disable vCLS on a Cluster via Retreat Mode (KB 316514)


Author: Daniel Micanek

Senior Service Architect, SAP Platform Services Team at Tietoevry | SUSE SCA | vExpert ⭐⭐⭐⭐⭐ | vExpert NSX | VCIX-DCV/NV | VCAP-DCV/NV Design+Deploy | VCP-DCV/NV/CMA/TKO/DTM | NCIE-DP | OCP | Azure Solutions Architect | Certified Kubernetes Administrator (CKA)