Or you could just run the JVMs on the base OS and use good old file system security if you really need sandboxing. The supposed advantages of adding a OS VM layer seem iffy if you're just running one app per.
It always amazed me that the JVM doesn't have any options to restrict CPU resources (something VMware does have). The only alternative I can think of is to use the unix taskset utility to limit JVMs to specific CPU cores. Anybody got experiece with a setup like this? Limiting memory usage and file permissions with the JVM is indeed easy.
Tuning JVM for a VM - Lessons Learned, Directly from VMware
11–20 of 21 posts
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#12Efficiently using memory when you have three levels (Hypervisor->OS->JVM) that are largely opaque to each other is an real challenge. Doing ballooning at the JVM level [0] instead of the OS level makes sense for VMs primarily running Java applications. VMware often seems to be the first to get a new technology out, but their competition quickly follows (e.g. KSM for transparent page sharing and compcache for memory c…
[Disclosure: I worked at VMware from 2002 through 2011.] I take issue with the claim that the competition "quickly followed" on for (at the least) the transparent page sharing feature. VMware was shipping transparent page sharing in their type 1 hypervisor since ESX 1.5, which was released before I joined the company. KSM was first proposed in 2008, and I believe it didn't actually ship until 2009 (note: the delay wa…
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#13Efficiently using memory when you have three levels (Hypervisor->OS->JVM) that are largely opaque to each other is an real challenge. Doing ballooning at the JVM level [0] instead of the OS level makes sense for VMs primarily running Java applications. VMware often seems to be the first to get a new technology out, but their competition quickly follows (e.g. KSM for transparent page sharing and compcache for memory c…
Azul Systems has been marketing a different solution to this same problem in the Zing VMs for some time now. I believe their solution is based on adding extra APIs to the underlying kernel etc. so the JVM's heap isn't so opaque to the OS/hypervisor. The VMWare solution sounds like a simpler, pragmatic "hack" to solve the problem. It would be interesting to hear from someone that has used both technologies to see how…
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#14Earlier quoted context omitted.
It always amazed me that the JVM doesn't have any options to restrict CPU resources (something VMware does have). The only alternative I can think of is to use the unix taskset utility to limit JVMs to specific CPU cores. Anybody got experiece with a setup like this? Limiting memory usage and file permissions with the JVM is indeed easy.
Let the OS manage the CPUs, you can use nice if you need to prioritize.
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#15So, how reasonable is it right now to run a JVM directly on a VM?
edit: see also LiquidVM, possibly aka JRockit VE
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#16OS -> Hypervisor -> VM -> OS -> VM -> App
Where "App" might be a service so you might have this stack duplicated dozens of times for an actual app that a user can use. And you don't save anything either, rather than "processes" your sysadmins manage "VMs". What happened to
OS -> App
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#17So, how reasonable is it right now to run a JVM directly on a VM?
http://docs.oracle.com/cd/E23009_01/doc.200/e22518/introduct...
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#18Efficiently using memory when you have three levels (Hypervisor->OS->JVM) that are largely opaque to each other is an real challenge. Doing ballooning at the JVM level [0] instead of the OS level makes sense for VMs primarily running Java applications. VMware often seems to be the first to get a new technology out, but their competition quickly follows (e.g. KSM for transparent page sharing and compcache for memory c…
[Disclosure: I worked at VMware from 2002 through 2011.] I take issue with the claim that the competition "quickly followed" on for (at the least) the transparent page sharing feature. VMware was shipping transparent page sharing in their type 1 hypervisor since ESX 1.5, which was released before I joined the company. KSM was first proposed in 2008, and I believe it didn't actually ship until 2009 (note: the delay wa…
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#19Efficiently using memory when you have three levels (Hypervisor->OS->JVM) that are largely opaque to each other is an real challenge. Doing ballooning at the JVM level [0] instead of the OS level makes sense for VMs primarily running Java applications. VMware often seems to be the first to get a new technology out, but their competition quickly follows (e.g. KSM for transparent page sharing and compcache for memory c…
That link is broken, can you fix it please?
Re: Tuning JVM for a VM - Lessons Learned, Directly from VMware
#20Or you could just run the JVMs on the base OS and use good old file system security if you really need sandboxing. The supposed advantages of adding a OS VM layer seem iffy if you're just running one app per.
It always amazed me that the JVM doesn't have any options to restrict CPU resources (something VMware does have). The only alternative I can think of is to use the unix taskset utility to limit JVMs to specific CPU cores. Anybody got experiece with a setup like this? Limiting memory usage and file permissions with the JVM is indeed easy.
http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6...