Service crashed while starting
"service-control --start --vsan-health
" fails with below errorService-control failed .Error:Failed to start services in profile ALL. RC=2, stdrr=Failed to start vsan-health services .Error :Service crashed while starting
/var/core
you will see core.CnsSyncMgr..xxxx
Invalid vCenter Server Status: All required services are not up! Stopped services : 'vsan-health'
./var/log/vmware/vsan-health/vsanvcmgmtd-*.log
you will see similar to below erroryyyy-mm-ddThh:mm:ss.us: error vsanvcmgmtd[155487] [vSAN@6876 sub=WorkQueue.vmacoreDefaultLongTaskQueue] Received a negative scheduler interval: -694967296
startupSyncInterval
" in CNS config file in vCenter/usr/lib/vmware-vsan/VsanVcMgmtConfig.xml
startupSyncInterval
setting having incorrect value crashes the vsan-health
service.
1. Verify by navigating to file /usr/lib/vmware-vsan/VsanVcMgmtConfig.xml
If the value is different like below <fullSyncInterval>600</fullSyncInterval>
<!-- new sync interval by second, 0 means disabled -->
<newSyncInterval>31536000</newSyncInterval>
<!-- determine how many times to do startup fullsync-->
<startupSyncTry>5</startupSyncTry>
<!-- determine interval between startupSyncs-->
<startupSyncInterval>31536000</startupSyncInterval>
The default value is like below
<fullSyncInterval>600</fullSyncInterval>
<!-- new sync interval by second, 0 means disabled -->
<newSyncInterval>60</newSyncInterval>
<!-- determine how many times to do startup fullsync-->
<startupSyncTry>5</startupSyncTry>
<!-- determine interval between startupSyncs-->
<startupSyncInterval>60</startupSyncInterval>
NOTE: In versions prior to vCenter 8.0 U3 the file is located at /usr/lib/vmware-vpx/vmware-vsan
This was the result while attempting to implement the workaround as per release notes for volume sync errors - VMware vSphere IaaS Control Plane 8.0 Release Notes - Storage Known Issues
2. Change the value to
<fullSyncInterval>600</fullSyncInterval>
<!-- new sync interval by second, 0 means disabled -->
<newSyncInterval>31536000</newSyncInterval>
<!-- determine how many times to do startup fullsync-->
<startupSyncTry>5</startupSyncTry>
<!-- determine interval between startupSyncs-->
<startupSyncInterval>60</startupSyncInterval>
3.Start the vsan-health
service using command service-control --start --vsan-health