VMware Cloud Community
TimOudin
Hot Shot
Hot Shot

Increased PermGen load after p2v

I've just p2v'd a RHEL 5.3 server running JBoss with two active instances. The server was performing well on the physical hardware but is now experiencing Out of Memory exceptions with PermGen. Per the VMware best practices doc I've set memory reservation to the value to total allocated memory (10 GB) and am testing forcing Virtualized MMU. Hardware is a HP DL380 G6 with 2 x Intel 5560 quad core and 39 GB RAM. This is the only virtual machine on this server. ESX server does not appear to be under load and storage appears to be Ok.

I found a document at http://communities.vmware.com/docs/DOC-7272 with comment that appears to suggest that PermGen might be expected to increase by 10 - 20 MB. After increasing PermGen memory settings we appear to be stable so far and the values quoted for increase would be consistent with what we're experiencing. Aside from this document I've seen nothing specifically referencing OOM errors or PermGen memory utilization.

I'm looking for experience with Java workloads and possible optimization not already covered in the VMware Java In Virtual Machines best practices document.

Thanks!

Tim Oudin
Tags (2)
0 Kudos
2 Replies
thecakeisalie
Enthusiast
Enthusiast

Typically setting a reserve or limit on a VM isn't really needed, especially when it's the only VM running on the host/cluster. Check the Resource Management Guide for specific details on how it works.

As for the java-specific applications, they run hot in any environment from what I've seen, but there are a couple of cool links on VIOPS that should help with the virtualization issues they can run into...

TimOudin
Hot Shot
Hot Shot

Totally agree that the memory reservation is pointless on a single VM box! Keeping my political self covered by having documented best practices. I will also be having some more JBoss servers in the near future when I deploy some more ESX servers into this cluster. We're working for 100% virtualization of application servers.

I've seen the reference document and based my deploy on it. We did some load testing and really found that Large Memory Pages provided no benefit so have not implemented. Otherwise, we've followed the document where we could. Unforuntely, we weren't able to separate the JVM into individual virtual machines but will be doing so going forward.

So far, after adjusting server memory and memory for PermGen, the server is running well. I'm really curious about the PermGen increased utilization and the vague reference by Corey Romero from VMware.

Tim Oudin
0 Kudos