Posted in: VMware

VCSA “wcp” service keeps crashing

“wcp” service crashes due to which the ESXi host can not be put out of maintenance mode (other symptoms can also occurs however I have never come across those)

The VCSA “wcp” service keeps crashing while starting due to an invalid entry in the wcp config file

Error executing start on service wcp. Details {
    "detail": [
        {
            "id": "install.ciscommon.service.failstart",
            "translatable": "An error occurred while starting service '%(0)s'",
            "args": [
                "wcp"
            ],
            "localized": "An error occurred while starting service 'wcp'"
        }
    ],
    "componentKey": null,
    "problemId": null,
    "resolution": null
}
Service-control failed. Error: {
    "detail": [
        {
            "id": "install.ciscommon.service.failstart",
            "translatable": "An error occurred while starting service '%(0)s'",
            "args": [
                "wcp"
            ],
            "localized": "An error occurred while starting service 'wcp'"
        }
    ],
    "componentKey": null,
    "problemId": null,
    "resolution": null
}

The exit maintenance mode will fail with below error:

(vim.TaskInfo) {
   key = "haTask-ha-host-vim.HostSystem.exitMaintenanceMode-2707376688", 
   task = 'vim.Task:haTask-ha-host-vim.HostSystem.exitMaintenanceMode-2707376688', 
   description = (vmodl.LocalizableMessage) {
      key = "vim.hostd.hostsvc.enterUnavailableMode.hostEMMWait", 
      arg = (vmodl.KeyAnyValue) [
         (vmodl.KeyAnyValue) {
            key = "VSAN", 
            value = 1
         }, 
         (vmodl.KeyAnyValue) {
            key = "reason", 
            value = "VSAN Ops: 1 "
         }
      ], 
      message = "Waiting for operations to finish: VSAN Ops: 1 "
   }, 
   name = "vim.HostSystem.exitMaintenanceMode", 
   descriptionId = "HostSystem.exitMaintenanceMode", 
   entity = 'vim.HostSystem:ha-host', 
   entityName = "esxi-02.ashish.com", 
   locked = <unset>, 
   state = "success", 
   cancelled = false, 
   cancelable = true, 
   error = (vmodl.MethodFault) null, 
   result = <unset>, 
   progress = 100, 
   reason = (vim.TaskReasonUser) {
      userName = "vpxuser"
   }, 
   queueTime = "2021-10-29T08:31:28.814247Z", 
   startTime = "2021-10-29T08:31:28.814795Z", 
   completeTime = "2021-10-29T08:31:29.299697Z", 
   eventChainId = -1587590608, 
   changeTag = <unset>, 
   parentTaskKey = <unset>, 
   rootTaskKey = <unset>, 
   activationId = <unset>
}


To resolve the issue, please follow below steps precisely as mentioned below:

1. Power down this VCSA including any (other VCSA) appliance that is replicating with: esxi-02.ashish.com
2. Remove all snapshots (unless the snapshots need to be consolidated) then consolidate them on all replicating VCSA's.
3. Take a new snapshot
4. Power on the VCSA
5. Go to: /etc/vmware/wcp
6. Run this command:  cp wcpsvc.yaml wcpsvc.yaml.bak
7. edit wcpsvc.yaml and change (VI is standard) the follow entry, from: 
rhttpproxy_port: {rhttpproxy.ext.port2} 
to 
rhttpproxy_port: 443

It should look like: SCREENSHOT ATTACHED then follow below steps:



8. Save the changes and exit (:wq)
9. Double check the entry to make sure there is a space between the colon (":") and "443"
10. Run command: service-control --restart wcp
11. Wait until step #10 is complete
12. Run: service-control --stop --all
13. Run: service-control --start --all  <<<<After this complete move to step #14
14. Check the host to see what the status of host (esxi-02.ashish.com) is and see if it matches the status in the host UI (you may have to refresh the VCSA in the browser). 
If starting the service fails, please go ahead and reboot the VCSA