VMware Cloud Community
Wraiith
Contributor
Contributor
Jump to solution

Cannot Power on VM after increasing RAM Size

I have over 512 GB of Ram available on my ESXi host. And I have only one Ubuntu Virtual machine on this ESXi host.

When I Boot up my Ubuntu VM using 16 GB of Ram, it boots up fine.

When I increase the RAM size to 128GB, it will not power on. I get the following message:

Power On VM

Key - haTask-1-vim.VirtualMachine.powerOn-185717447

Description - Power On this virtual machine

Virtual machine - C01-PL-ONIAP01

State - Failed - Module 'MonitorLoop' power on failed.

Errors - Module 'MonitorLoop' power on failed.

File system specific implementation of Lookup[file] failed

File system specific implementation of LookupAndOpen[file] failed

Failed to extend swap file from 0 KB to 134217728 KB.

Current swap file size is 0 KB.

Failed to extend the virtual machine swap file

Could not power on virtual machine: No space left on device.

Failed to power on VM.

Failed to start the virtual machine.

I'm not sure if this issue is on the Ubuntu Side or on the ESXi side. I believe I have isolated the issue to be one of those two, as the memory and chipsets are fine.

Please assist!

0 Kudos
1 Solution

Accepted Solutions
MBreidenbach0
Hot Shot
Hot Shot
Jump to solution

When you power on a VM with 128GB RAM and no memory reservations ESXi creates a 128GB swap file. Most probably you don't have 128GB space available left on the datastore.

If this is the case your options are:

  • Reduce VM memory size (probably not what you want)
  • Add disk space to datastore (probably not available)
  • Configure a memory reservation (if ESXi really has enough RAM I'd do this)
  • Configure a different swap location (but then you need that disk space somewhere else)

If memory is reserved then no swap file is needed because memory is reserved. In that case if 128GB RAM aren't available then you can't power on the VM. Which isn't actually much different from the current situation :smileygrin:

View solution in original post

0 Kudos
7 Replies
daphnissov
Immortal
Immortal
Jump to solution

How much free space do you have on the datastore where this Ubuntu VM resides?

0 Kudos
MBreidenbach0
Hot Shot
Hot Shot
Jump to solution

When you power on a VM with 128GB RAM and no memory reservations ESXi creates a 128GB swap file. Most probably you don't have 128GB space available left on the datastore.

If this is the case your options are:

  • Reduce VM memory size (probably not what you want)
  • Add disk space to datastore (probably not available)
  • Configure a memory reservation (if ESXi really has enough RAM I'd do this)
  • Configure a different swap location (but then you need that disk space somewhere else)

If memory is reserved then no swap file is needed because memory is reserved. In that case if 128GB RAM aren't available then you can't power on the VM. Which isn't actually much different from the current situation :smileygrin:

0 Kudos
a_p_
Leadership
Leadership
Jump to solution

By default, ESXi creates a swap file with the size of the VM's configured memory. Since this seems to be a stand-alone host, and there's no memory overcommitment (as far as I understand it), you may change the VM's settings and set/increase the "Memory Reservation". The swap file size will then be "assigned memory" minus "reservation", i.e. if you set the reservation to 128GB, the swap file size on the datastore will be zero.

André

0 Kudos
Wraiith
Contributor
Contributor
Jump to solution

I do have another hard drive on the ESXi host with about 4TBs free. Is there a way I can just mount the hard drive that is the other data store for the swap?

And if so, how?

0 Kudos
MBreidenbach0
Hot Shot
Hot Shot
Jump to solution

You can change it in the advanced options of the VMs configuration, also on host and cluster level.

If you have enough RAM then a memory reservation probably is easier. If RAM is reserved it will not swap so it doesn't need a swap file.

0 Kudos
Wraiith
Contributor
Contributor
Jump to solution

I am a bit new to this,

Can you explain to me how this is done through ESXi?

I do have a total memory on the ESXi host of 512GB with about 450GB free.

My VM is currently installed on a data store that has only 80GB of space left.

It has a second hard disk which I have an available space of 4TBs on it. (Which is where I assume this will take place)

Under the VM settings --> Edit --> Advanced --> I see three options, default, virtual machine directory, and Datastore specified by host.

How would I create the memory reservation? Or tell this host to save it's swap file location to the other data store or (harddisk I have connected to this host)?

0 Kudos
MBreidenbach0
Hot Shot
Hot Shot
Jump to solution

Which ESXi version ? Do you have a vCenter server ?

EDIT: I've got a cluster here so some settings are inherited by the cluster. If you've got a standalone ESXi 6.5 host and have to use the Host web client then you can reserve memory.

0 Kudos