VMware Cloud Community
Raudi
Expert
Expert
Jump to solution

disable vCLS - need to delete vCenter advanced option name

Hi,

i was tryig to disable the vCLS in one cluster because there are only two hosts and one is the most time in standby, so HA and DRS is disabled and will not used.

I found this KB: https://kb.vmware.com/s/article/80472

So here they wrote:

  1. Log in to the vSphere Client.
  2. Navigate to the cluster on which vCLS has to be disabled. Copy the cluster domain id from the URL of the browser. It should be similar to 'domain-c<number>'.
  3. Navigate to the vCenter Server and then to Configure tab.
  4. Click on Advanced setting section and then on Edit settings button.
  5. Add a new entry with name = config.vcls.clusters.domain-c<number>.enabled and value = False.
  6. Click Save.

So what is the number? I used this: "domain-c1006:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f"

But this seems to be wrong, correct will be ony "domain-c1006".

But now i have a problem, i can't add the name without the numbers after the ":", it will not be stored.

How can i delete the wrong name?

Kind regards

Stefan

1 Solution

Accepted Solutions
hhalil
VMware Employee
VMware Employee
Jump to solution

Hello Raudi,

First of all, thank you for posting this question here, let's hope that I will be able to solve your issue.

Like you have already discovered, you only need the number before the ":", so in your case you need to add the following:
config.vcls.clusters.domain-c1006.enabled -> False

If you want to remove the advanced option you will have to restart vpxd - meaning that your vCenter Server will be down for some time - depending on the scale of your environment.
If you are willing to do that please follow these steps:

   1. SSH into your vCenter Server

   2. Open the vpxd config file:


vi /etc/vmware-vpxd/vpxd.cfg

   3. Search for  <vcls> inside the file

   4. You will see something similar to this (if you have any other clusters that you have disabled vCLS on, you will also see them):

  <vcls>

    <clusters>

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

      <domain-c13>

        <enabled>False</enabled>

      </domain-c13>

    </clusters>

  </vcls>

   5. You will have to modify this file and remove the record you do not want . In your case, you will have to delete this tag (incl. its content):

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

!!! If you do not have any other clusters, where vCLS is disabled on, you will have the following configuration:

  <vcls>

    <clusters>

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

    </clusters>

  </vcls>

In this case, please remove the whole <vcls> ... </vcls> entry. !!!

   6. Save the changes to the file.

   7. Restart vpxd:

service-control --restart vmware-vpxd

   8.Upon successful restart you should receive the following message:

Successfully restarted service vpxd

   9. If you go the Advanced Settings tab in the vSphere Client now, the changes should have taken place.

View solution in original post

13 Replies
jburen
Expert
Expert
Jump to solution

It could be that the entry already exists... Can you try this:

  1. Login to the vSphere Client.
  2. Navigate to the vCenter Server Configure tab.
  3. Under Advanced Settings, click the Edit Settings button.
  4. Search for vCLS in the name column.
  5. Clusters where vCLS is configured are displayed. For the cluster with the domain ID, set the Value to False.
  6. Click Save.
Consider giving Kudos if you think my response helped you in any way.
Reply
0 Kudos
Raudi
Expert
Expert
Jump to solution

No:

Screenshot 2020-10-23 105035.jpg

The last entry i have created, the top entry i have not created...

For the last entry it is not possible to edit.

And if i try to add a new name i will not saved.

Perhaps the ":" in the name is a problem...

Reply
0 Kudos
jburen
Expert
Expert
Jump to solution

And at this moment vCLS is enabled? You can see the vCLS VMs in the inventory?

Consider giving Kudos if you think my response helped you in any way.
Reply
0 Kudos
Raudi
Expert
Expert
Jump to solution

Yes all three vm's are running on one host...

Reply
0 Kudos
hhalil
VMware Employee
VMware Employee
Jump to solution

Hello Raudi,

First of all, thank you for posting this question here, let's hope that I will be able to solve your issue.

Like you have already discovered, you only need the number before the ":", so in your case you need to add the following:
config.vcls.clusters.domain-c1006.enabled -> False

If you want to remove the advanced option you will have to restart vpxd - meaning that your vCenter Server will be down for some time - depending on the scale of your environment.
If you are willing to do that please follow these steps:

   1. SSH into your vCenter Server

   2. Open the vpxd config file:


vi /etc/vmware-vpxd/vpxd.cfg

   3. Search for  <vcls> inside the file

   4. You will see something similar to this (if you have any other clusters that you have disabled vCLS on, you will also see them):

  <vcls>

    <clusters>

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

      <domain-c13>

        <enabled>False</enabled>

      </domain-c13>

    </clusters>

  </vcls>

   5. You will have to modify this file and remove the record you do not want . In your case, you will have to delete this tag (incl. its content):

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

!!! If you do not have any other clusters, where vCLS is disabled on, you will have the following configuration:

  <vcls>

    <clusters>

      <domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

        <enabled>False</enabled>

      </domain-c1003:1f309344-8dbb-4c9f-b0cb-b3b61fa8513f>

    </clusters>

  </vcls>

In this case, please remove the whole <vcls> ... </vcls> entry. !!!

   6. Save the changes to the file.

   7. Restart vpxd:

service-control --restart vmware-vpxd

   8.Upon successful restart you should receive the following message:

Successfully restarted service vpxd

   9. If you go the Advanced Settings tab in the vSphere Client now, the changes should have taken place.

jburen
Expert
Expert
Jump to solution

Maybe the top entry is in the way. But I'm not sure what that entry does.

I'm afraid I ran out of options. Maybe create an SR with VMware GSS?

Consider giving Kudos if you think my response helped you in any way.
Reply
0 Kudos
hhalil
VMware Employee
VMware Employee
Jump to solution

If this search is filtered on config.vcls, please go ahead and remove the whole <vcls> tag (incl its content) from the vpxd.cfg file I have mentioned above and perform the rest of the steps.

Reply
0 Kudos
Raudi
Expert
Expert
Jump to solution

Yes you are right i just found this by google: http://www.boche.net/blog/2010/03/13/vpxd-cfg-advanced-configuration/

And was just on the way to search in the file...

I removed the whole vcls part, restarted the service and now i was able to enter the correct value. The VM's are gone now...

Thank you all for the fast answers!

Reply
0 Kudos
Raudi
Expert
Expert
Jump to solution

Btw. i'm missing a link in the KB to write a feedback to a article. So here i it cen be optimized with an example of the number, so it will be clear that the number ends before the ":".

usmabison
VMware Employee
VMware Employee
Jump to solution

My use case is a 4node self-managed vsan cluster, so the vCLS addition in 7U1+ caused me to have to tweak the shutdown/startup scripts ...

FWIW ... Just completed vetting this code snippet - figured I'd add it here, if anyone else with a similar use case can consume

##########################################################

$CluMoref = $Cluster.ExtensionData.MoRef.Value

$vclsname = "config.vcls.clusters.$CluMoRef.enabled"

# add the setting first

New-AdvancedSetting -Entity $VCSA -Name $vclsname -Value $true -Confirm:$false # creates the adv stg, to be disabled as part of a shutdown script

# once created, it can be changed to $false - this effectively removes the vCLS agent VMs (but also affects DRS/HA, so only done during shutdown

Get-AdvancedSetting -Entity $VCSA -Name $vclsname | Set-AdvancedSetting -Value $false -Confirm:$false

# then add the reverse to the startup script - this creates the vCLS agent VMs again

Get-AdvancedSetting -Entity $VCSA -Name $vclsname | Set-AdvancedSetting -Value $true -Confirm:$false

###########################################################################

Reply
0 Kudos
Dudleydoggg
Contributor
Contributor
Jump to solution

There is no Advance Setting under the VCSA menu, did you mean the Hosts?

Vmware Trials Are the Bomb
Reply
0 Kudos
usmabison
VMware Employee
VMware Employee
Jump to solution

@Dudleydoggg - not exactly ... it is the VCSA Advanced Settings ... the first part of the code snippet actually creates the advanced setting (so that you can put the vCLS in retreat mode), the second part changes the vlue to false, effectively removing the vCLS agent VMs, so that the cluster can be shutdown. This (in my use case) is a challenge with shutdowns of a vSAN-enabled  cluster.

KISCharlie
Contributor
Contributor
Jump to solution

I just ran up against this same issue and this solved my problem perfectly.    I had been shutting down vCenter prior to shutting down the hosts so I could power off the VLCS VMs on each host before putting them in maintenance mode, which works great if the vCenter is part of the same cluster but, if it is running in another cluster and is not being shut down, putting the cluster into retreat mode solved that issue.

Thanks!

Reply
0 Kudos