ESXi Upgrade Using vCenter 8.x Guide

This guide covers upgrading ESXi hosts using vCenter Server 8.x with Lifecycle Manager (LCM) and Update Manager functionality.

Table of Contents

Overview

vCenter 8.x provides multiple methods for upgrading ESXi hosts:

  • Lifecycle Manager (LCM): Modern, image-based upgrades
  • Update Manager: Traditional patch-based upgrades
  • Express Patch Tool: Quick security updates

Key Benefits of vCenter-Managed Upgrades

  • Automated orchestration with vMotion
  • Centralized management
  • Compatibility checking
  • Rollback capabilities
  • Minimal downtime with DRS

Prerequisites

vCenter Requirements

  • vCenter Server 8.x running
  • vCenter manages the ESXi hosts
  • Sufficient permissions (Administrator role)
  • Internet connectivity or offline depot

Cluster Requirements

  • vSphere HA enabled (recommended)
  • vSphere DRS enabled (recommended)
  • Sufficient resources for VM migration
  • Maintenance mode orchestration

Network Requirements

# Required ports for updates
80/443 - HTTP/HTTPS to update repositories
902 - vCenter to ESXi communication
443 - ESXi to vCenter communication

Upgrade Methods

Comparison Matrix

Method vCenter Version Approach Rollback Best For
Lifecycle Manager 8.0+ Image-based Yes Modern environments
Update Manager 7.0+ Patch-based Limited Legacy workflows
Express Patch Tool 8.0+ Security patches No Quick security fixes

Overview

Lifecycle Manager uses desired state management with pre-built images containing ESXi + drivers + firmware.

Step 1: Access Lifecycle Manager

  1. Login to vCenter
  2. Navigate: Menu → Lifecycle Manager
  3. Select: Target cluster or host

Step 2: Create/Import Image

# Option A: Use VMware provided image
Lifecycle Manager → Images → VMware Images → Select ESXi version

# Option B: Create custom image
Lifecycle Manager → Images → Create Image

Creating Custom Image

  1. Base Image: Select ESXi version
  2. Add Components:
    • Vendor addons (Dell, HP, etc.)
    • Custom drivers
    • Third-party VIBs
  3. Validate image compatibility
  4. Save image

Step 3: Create Desired State

  1. Select Cluster
  2. Lifecycle Manager → Desired State
  3. Set Image: Choose your image
  4. Configure Settings:
    • Hardware compatibility
    • Firmware updates
    • Driver updates

Step 4: Pre-check and Remediate

# Pre-check cluster
Lifecycle Manager → Pre-check → Run Pre-check

# Review results:
- Compatibility issues
- Hardware support
- Driver conflicts

Step 5: Perform Upgrade

  1. Start Remediation

    Lifecycle Manager → Remediate → Configure
    
  2. Configure Options:
    • Maintenance Mode: Enable automatic
    • Parallel Remediation: Set concurrent hosts
    • Failure Handling: Stop on errors vs continue
    • Schedule: Now or scheduled time
  3. Monitor Progress

    Lifecycle Manager → Recent Tasks
    

Step 6: Verification

# Check upgrade status
vCenter → Hosts and Clusters → Select Host
Summary → Configuration → System Image

# Verify version
ESXi Shell: vmware -vl

Method 2: Update Manager (Legacy)

Step 1: Configure Update Manager

  1. Access: Menu → Update Manager
  2. Download Settings:

    Configuration → Download Settings
    - Download Source: VMware hosted
    - Proxy settings if needed
    
  3. Download Updates:

    Updates → Download Now
    

Step 2: Create Baseline

  1. Create Baseline:

    Update Manager → Baselines → Create
    
  2. Baseline Configuration:

    • Type: Host Upgrade
    • ESXi Version: Select target version
    • Include: Patches, extensions, upgrades

Step 3: Attach Baseline

  1. Select Objects: Cluster or individual hosts
  2. Attach Baseline:

    Right-click → Update Manager → Attach Baseline
    

Step 4: Scan for Compliance

# Scan hosts
Right-click Cluster → Update Manager → Scan for Updates

Step 5: Remediate

  1. Review Compliance:

    Update Manager → Compliance View
    
  2. Start Remediation:

    Right-click → Update Manager → Remediate
    
  3. Configure Remediation:

    • Maintenance Mode: Automatic
    • VM Options: Migrate, suspend, or power off
    • Failure Response: Retry or fail task

Method 3: Express Patch Tool

Overview

Quick security updates without full maintenance mode.

Prerequisites

  • ESXi 7.0 U3 or later
  • vCenter 8.0 or later
  • Express patches available

Usage

  1. Access: Menu → Lifecycle Manager → Express Patch Tool
  2. Select Hosts: Choose target hosts
  3. Apply Patches: Select available express patches
  4. Monitor: No maintenance mode required

Best Practices

Pre-Upgrade Planning

  1. Inventory Assessment:

    # Document current state
    Get-VMHost | Select Name, Version, Build
    Get-VMHostHardware | Select Model, Vendor
    
  2. Compatibility Check:
    • Hardware Compatibility List (HCL)
    • Driver compatibility
    • Third-party software support
  3. Backup Strategy:

    # Backup host configuration
    Get-VMHostFirmware -BackupConfiguration
    

During Upgrade

  1. Rolling Updates:

    # Configure parallel operations
    Lifecycle Manager → Cluster Settings → Parallel Operations: 2-3
    
  2. Monitor Resource Usage:

    # Check cluster resources during migration
    vCenter → Monitor → Performance → Cluster
    
  3. Failure Handling:

    • Configure retry policies
    • Set failure thresholds
    • Plan rollback procedures

Post-Upgrade

  1. Verification Checklist:
    • All hosts upgraded successfully
    • VMs migrated back properly
    • Network connectivity verified
    • Storage accessibility confirmed
    • Third-party integrations working
  2. Performance Monitoring:

    # Monitor for 24-48 hours
    vCenter → Monitor → Performance
    

Troubleshooting

Common Issues

  1. Insufficient Resources for vMotion

    # Check resource availability
    Get-Cluster | Get-VMHost | Select Name, MemoryTotalGB, CpuTotalMhz
       
    # Solution: Temporarily reduce VM reservations
    
  2. VIB Conflicts

    # Check for conflicting VIBs
    esxcli software vib list | grep -i conflicting
       
    # Remove conflicting VIBs before upgrade
    esxcli software vib remove -n [vib-name]
    
  3. Hardware Compatibility

    # Check HCL compliance
    vCenter → Lifecycle Manager → Pre-check
       
    # Update drivers before ESXi upgrade
    
  4. Network Issues During Upgrade

    # Verify network redundancy
    Get-VMHostNetworkAdapter | Where {$_.Type -eq "Management"}
    

Rollback Procedures

Lifecycle Manager Rollback

  1. Check Rollback Availability:

    Lifecycle Manager → Images → Select Previous Image
    
  2. Perform Rollback:

    Lifecycle Manager → Remediate → Use Previous Image
    

Manual Rollback

  1. Boot from Previous ESXi Installer
  2. Select “Upgrade ESXi, preserve VMFS”
  3. Restore Configuration:

    vim-cmd hostsvc/firmware/restore_config
    

Emergency Procedures

  1. Host Unresponsive After Upgrade:

    # Reset to factory defaults
    Boot to DCUI → Reset System Configuration
    
  2. Cluster Split-Brain:

    # Restart vCenter services
    service-control --restart --all
    

Monitoring and Alerts

Key Metrics to Monitor

# Create alarms for:
- Host connection state
- VM migration failures
- Datastore accessibility
- Network connectivity

Log Files

# Important logs during upgrade
/var/log/vmware/vpxd/vpxd.log          # vCenter operations
/var/log/vmware/vum/vum-server.log     # Update Manager
/var/log/vmware/lifecycle/             # Lifecycle Manager
/var/log/vmware/vsan/                  # vSAN (if applicable)

Advanced Scenarios

Multi-Site Upgrades

# For environments with multiple sites
1. Upgrade vCenter Enhanced Linked Mode
2. Coordinate maintenance windows
3. Consider bandwidth limitations

vSAN Clusters

# Additional considerations
1. Check vSAN HCL compatibility
2. Ensure adequate fault tolerance
3. Monitor vSAN health during upgrade

NSX-T Integration

# Coordinate with NSX-T upgrades
1. Check NSX-T compatibility matrix
2. Upgrade NSX-T first if required
3. Verify network connectivity post-upgrade

Automation Scripts

PowerCLI Example

# Automated upgrade workflow
$cluster = Get-Cluster "Production"
$baseline = Get-Baseline "ESXi 8.0 U2"

# Attach baseline
$cluster | Attach-Baseline $baseline

# Scan for compliance
$cluster | Test-Compliance

# Remediate with options
$cluster | Remediate-Inventory -Baseline $baseline `
    -RunAsync -Confirm:$false `
    -MaintenanceMode:$true `
    -VMotionEnabled:$true

This project is for educational and home lab purposes.