Resilience & RecoveryImplementation Guide

Patching Standalone ESXi: A Recovery-First Runbook

The ESXi command is the smallest part of a safe update. Maintenance mode, rollback planning, compatibility review, and post-change evidence are the real controls.

Rows of illuminated data center servers representing VMware ESXi infrastructure maintenance

Historical field note: This runbook was developed from a standalone ESXi 7.x command-line workflow. Broadcom’s current profile-based offline-bundle procedure also covers ESXi 8.x. The recovery and verification discipline applies to standalone hosts in enterprise environments as well as smaller ones. For a host managed through vCenter and vSphere Lifecycle Manager, follow the approved lifecycle process rather than bypassing it. Depot locations, entitlement requirements, supported hardware, firmware, OEM images, installed VIBs, and profile names change; confirm the current Broadcom documentation, release notes, and lifecycle status before using these commands.

Command-line patching is useful for an approved standalone-host change when vCenter lifecycle management is unavailable or does not apply. It is also easy to reduce the work to a single esxcli command and miss the controls that make the change safe.

The sequence I use is built around four questions:

  1. Can the workloads tolerate the maintenance window?
  2. Can I reach the host if normal management access fails?
  3. Is the target image compatible with the hardware and installed VIBs?
  4. What evidence will prove that the update succeeded?

Prepare the recovery path

Before changing the host:

  • Shut down or migrate every virtual machine cleanly.
  • Back up the host configuration and the workloads through an independent path.
  • Verify console or out-of-band access.
  • Record the current ESXi build, image profile, storage state, and hardware warnings.
  • Select a profile supported for the exact server and driver combination.

Enter maintenance mode and verify it:

Terminal window
esxcli system maintenanceMode set --enable=true
esxcli system maintenanceMode get
vmware -v

If the host cannot enter maintenance mode cleanly, resolve that condition rather than forcing the patch forward.

Use an approved offline bundle

Current Broadcom guidance for command-line patching starts with an approved patch or image from its support portal, uploaded to a datastore accessible to the host. Use the approved offline bundle and target profile from the change plan; do not make the maintenance window depend on an external depot being reachable.

Using an offline bundle also avoids opening general outbound HTTP access from the hypervisor during the maintenance window. Verify the bundle’s source and integrity through the approved software-distribution process, then record its exact datastore path and target image profile in the change plan.

Discover, select, and simulate

List the profiles available to the host, then choose an exact profile based on the approved target—not simply the largest version string:

Terminal window
esxcli software sources profile list \
--depot=/vmfs/volumes/<datastore>/<directory>/<offline-bundle>.zip

Run the transaction as a dry run first:

Terminal window
esxcli software profile update \
--depot=/vmfs/volumes/<datastore>/<directory>/<offline-bundle>.zip \
--profile=<approved-profile> \
--dry-run

Read the output. Dependency conflicts, removed VIBs, acceptance-level changes, and hardware warnings are decision inputs, not noise to bypass.

Retain the dry-run output in the approved change record before applying the update. It gives the post-change reviewer a baseline for the transaction that was actually approved.

Apply and close the maintenance window

If the dry run matches the approved change:

Terminal window
esxcli software profile update \
--depot=/vmfs/volumes/<datastore>/<directory>/<offline-bundle>.zip \
--profile=<approved-profile>

Reboot when the transaction requires it:

Terminal window
reboot

After the host returns, verify more than the version number:

Terminal window
vmware -v
esxcli software profile get
esxcli system maintenanceMode get

Check management connectivity, datastores, physical NICs, storage adapters, time synchronization, and a representative workload before exiting maintenance mode.

Lessons learned beyond one hypervisor

Patch reporting often collapses the work into one percentage. On the host, success depends on drivers, storage, management access, workload behavior, and a route back when one of those pieces fails. I want both facts in the record: the approved update landed, and the service returned in a known-good state.

The syntax will be different on another platform, but the sequence holds up: secure the recovery path, review compatibility, simulate where the tooling allows it, apply one approved target, and test the service after the change. A completed package transaction is a checkpoint, not the outcome.

The same recovery-first approach applies when reclaiming boot volume capacity: keep a known-good path before removing or replacing anything.

For each change, retain the original build and compatibility state, the approved target, the dry-run output, the actual transaction, and the post-reboot checks. Someone reviewing the record later should be able to tell what changed and why the host was returned to service.

Sources

Your privacy

Privacy settings

You decide whether to allow optional analytics. Changing your choice never limits access to this website.

Optional analytics · PostHog

Page visits, referral hosts, approved campaign tags and article sharing and selected link clicks, grouped into browser sessions. No replay, advertising, form contents or search queries.

Cloudflare hosts and protects the site. Its separate aggregate, cookieless analytics respects Do Not Track and Global Privacy Control. Your theme and this privacy choice stay in your browser.

Privacy policy and contact information