You will never run into this problem if you follow current recommended practices to install the ESX-OSData volume on a persistent storage device that could either be dedicated and/or co-located your ESXi installation.
For those deploying VMware Cloud Foundation (VCF) in a lab environment, you might attempt to reserve the limited number of storage devices for use with vSAN and decide to install ESXi on a USB device, which is perfectly fine but if you do not select a persistent storage device for the ESX-OSData volume, then it will default to use the ESXi ramdisk.
I recently observed that if you have such a configuration, the VCF Cloud Builder Bringup process will fail after attempting (three times) to re-deploy the vCenter Server Appliance (VCSA).
As you can see from the screenshot above, VCF Cloud Builder UI does not provide any details and ask users to look at the vCenter Server installation logs.
If you go into one of the VCSA installation directories (e.g. /var/log/vmware/vcf/bringup/ci-installer-08-03-25-15-48-755/workflow_1741448914120/vcsa-cli-installer.log) and you look at the installer log, at the very bottom you would see the following:
2025-03-08 16:04:57,760 - vCSACliInstallLogger - ERROR - Exception message: Host seeding failed:(vmodl.MethodFault) { dynamicType = <unset>, dynamicProperty = (vmodl.DynamicProperty) [], msg = 'MethodFault.summary', faultCause = <unset>, faultMessage = (vmodl.LocalizableMessage) [ (vmodl.LocalizableMessage) { dynamicType = <unset>, dynamicProperty = (vmodl.DynamicProperty) [], key = 'com.vmware.vcint.error_from_vlcm', arg = (vmodl.KeyAnyValue) [ (vmodl.KeyAnyValue) { dynamicType = <unset>, dynamicProperty = (vmodl.DynamicProperty) [], key = 'vlcm_error', value = 'Error:\n com.vmware.vapi.std.errors.error\nMessages:\n com.vmware.vcIntegrity.lifecycle.ExtractDepotTask.HostExtractDepotFailed<Extraction of image from host esx06.williamlam.local failed.>\n com.vmware.vcIntegrity.lifecycle.EsxImage.DataStorageNotFound<No OSData storage partition is available to extract image. Configure persistent storage for the host and retry.>\n' } ], message = "An internal error occurred: 'Error:\n com.vmware.vapi.std.errors.error\nMessages:\n com.vmware.vcIntegrity.lifecycle.ExtractDepotTask.HostExtractDepotFailed<Extraction of image from host esx06.williamlam.local failed.>\n com.vmware.vcIntegrity.lifecycle.EsxImage.DataStorageNotFound<No OSData storage partition is available to extract image. Configure persistent storage for the host and retry.>\n'" } ] }
The error is pretty clear indicating that vSphere Lifecycle Manager (vLCM) service is unable to extract the ESXi Image Profile due to fact that the ESXi host does not have a persistent ESX-OSData volume, which is used to save the image definition.
Note: You can also quickly search for "No OSData" in VCF Cloud Builder bringup debug log /var/log/vmware/vcf/bringup/vcf-bringup-debug.log to see if you are affected by this issue as well.
This problem is not unique to VCF, you will have the same issue using vCenter Server directly to create a new vSphere Cluster and you wish to enable vLCM by defining the image using an existing ESXi host. In earlier vSphere releases, the need for a persistent ESX-OSData volume was not required but it seems this behavior has changed in recent releases and this is just another reason to ensure you are following the latest recommendations to ensure you have ESX-OSData running on a reliable and persistent storage device.
Thanks for the comment!