A couple weeks back I had worked on something that required me to shutdown all the vCenter Server Services on a VCSA (vCenter Server Appliance). There is no high level service that can be stopped which would properly shutdown all the different services in the appropriate order. Luckily, one can easily derive the start and stop order by just taking a look at the runlevel scripts (S* for start and K* for Kill scripts). I have extracted the order in which the vCenter Server Services must be stopped and started which is shown below:
Stop Order:
- vmcad
- vmdird
- vmkdcd
- vmware-inventoryservice
- vmware-logbrowser
- vmware-netdumper
- vmware-vpxd
- vsphere-client
- vmware-stsd
- vmware-sts-idmd
Start Order:
- vmcad
- vmdird
- vmkdcd
- vmware-netdumper
- vmware-sts-idmd
- vmware-stsd
- vmware-inventoryservice
- vmware-logbrowser
- vmware-vpxd
- vsphere-client
Note: Although I mention the VCSA, the ordering also applies to a vCenter Server for Windows which has the exact same services.
Here is a simple shell script snippet that can be used to stop all vCenter Server Services in the appropriate order:
VMWARE_SERVICE_STOP=(
vmcad
vmdird
vmkdcd
vmware-inventoryservice
vmware-logbrowser
vmware-netdumper
vmware-vpxd
vsphere-client
vmware-stsd
vmware-sts-idmd
)
for i in ${VMWARE_SERVICE_STOP[@]};
do
/etc/init.d/$i stop
done
}
Here is a simple shell script snippet that can be used to start all vCenter Server Services in the appropriate order:
VMWARE_SERVICE_START=(
vmcad
vmdird
vmkdcd
vmware-netdumper
vmware-sts-idmd
vmware-stsd
vmware-inventoryservice
vmware-logbrowser
vmware-vpxd
vsphere-client
)
for i in ${VMWARE_SERVICE_START[@]};
do
/etc/init.d/$i start
done









