Unable to start vCenter services due to error "startup type is not automatic. Skip"
search cancel

Unable to start vCenter services due to error "startup type is not automatic. Skip"

book

Article ID: 423635

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

When attempting to start vCenter Server services, the process fails even after manual intervention (such as removing masked services). The services report the following error message:

"startup type is not automatic. Skip"

Furthermore, the vmon.log file may not provide a clear or definitive error indicating the root cause of the service failure.

Environment

vCenter 9.0
VCF 9.0

Cause

This issue typically occurs due to corrupted service configuration files located within the following directory:

/etc/vmware/vmware-vmon/svcCfgfiles

When these configuration files are corrupted, the VMware Service Lifecycle Manager (vmon) fails to recognize the correct startup parameters for critical services.

Resolution

Take a Snapshot: Before performing any file system modifications, take a snapshot of the vCenter Server Appliance (VCSA).

Linked Mode Warning: If the vCenter is in Enhanced Linked Mode, refer to official documentation regarding snapshots for all linked vCenter nodes to maintain state consistency.

Step 1: Clear Corrupted Service States

  1. Access the vCenter Server via SSH or the Console and enter the Bash shell.

  2. Navigate to the service configuration directory: cd /etc/vmware/vmware-vmon/svcCfgfiles

  3. Create a temporary directory to house the old state files: mkdir new

  4. Move the hidden state files to the temporary location:

    mv .state_* new/
    

    Note: The original configuration files must remain in the directory; only the hidden .state files should be moved.

Step 2: Restart Services

  1. Stop all vCenter services: service-control --stop --all

  2. Start all vCenter services to re-initialize the state files: service-control --start --all

Once the services have been restarted, verify the status of the services using:

# service-control --status

All services should now show a status of Running, and the "Skip" error should no longer appear in the logs.