Error: "failed to create object: No space left on device" when deploying a VIC container in vSAN
book
Article ID: 340340
calendar_today
Updated On:
Products
VMware vSphere ESXi
Issue/Introduction
Deploying a VIC container on vSAN fails due to available free space in vSAN.
Checking the storage usage shows there is available free space.
In the hostd.log file, you see error similar to:
yyy-mm-ddTHH:MM:SS.###Z info hostd[43D40B70] [Originator@6876 sub=Libs opID=795322a2-5-6b67 user=vpxuser:VSPHERE.LOCAL\Administrator] OBJLIB-VSANOBJ: VsanObjCreate: failed to create object: No space left on device (1835010).
In the vpxd.log file in vCenter Server, you see similar error after attempting to run a container: yyy-mm-ddTHH:MM:SS.###Z info vpxd[7F96047BC700] [Originator@6876 sub=Default opID=795322a2] [VpxLRO] -- ERROR task-165691 -- vm-16302 -- vim.VirtualMachine.reconfigure: vmodl.fault.SystemError: --> Result: --> (vmodl.fault.SystemError) { --> faultCause = (vmodl.MethodFault) null, --> reason = "Out of resources", --> msg = "A general system error occurred: Out of resources" --> } ####Logs Omitted For Clarity####
Note: The preceding log excerpts are only examples. Date, time, and environmental variables may vary depending on your environment.
This issue occurs when the backing vSAN object is not removed in the delete workflow after deleting the VIC Container. When vSAN objects are still present, you cannot create a new object as the maximum object capacity is already met.
Resolution
Prerequisites:
Before proceeding, confirm the deployment is impacted by this issue by the following steps.
Verify that the deployment is on vSphere Integrated Containers v0.8.0-7315-c8ac999 (Server Version), by running this command from a docker client:
docker -H ###.###.#.###:#### --tls info
Check if the ESXi host detects free space on the vSAN datastore by running this command:
Note: Connect to the shell of the ESXi host that attempted to run the container.
df -f
Verify the datastore had enough available space for the container's.
Check if the Distributed Object Manager (DOM) is at maximum capacity by running this command: cmmds-tool find -f json -t NODE_USAGE
Compare the maxComponents to the componentsReserved.
This is a known issue affecting vSphere Integrated Containers. Currently, there is no resolution.
Workaround:
Clean the vSAN objects. To clean vSAN obejects, open a case with Broadcom Support and quote this Knowledge Base article ID (340340) in the problem description.