Web Hosting Talk







View Full Version : Virtuozzo memory management


Vonlar
05-11-2006, 02:04 AM
I've been experiencing server instabilities with Virtuozzo when nearing/exceeding allocated RAM, with no regard for Virtual Memory on a Windows VPS.

Is this a limitation of the Virtuozzo product? If so this really sucks!! A dedicated Windows box does not have these problems.

Randy

rghf
05-11-2006, 02:14 AM
Short answer yes...

Long answer. There is a bug in Virtuozzo for Windows (Which might be fixed in the latest release) that if you do go very close to your limit then the VPS can hang and will not restart. The only fix it is reboot the entire node.

Maybe check VMWare or Microsoft Virtual Server

Vonlar
05-11-2006, 02:20 AM
That's interesting to know, as I have experienced that as well. But I'm talking more about general instability. As in, unexpected results from applications (ASP.net to be more specific). So when I'm working on the VPS and have SQL Management Studio open, and am browsing a page on the server, it basically errors out. Once I close SQL Management Studio, most times the error will go away, but I will continue to see instability until I reboot the entire VPS.

Apoc
05-11-2006, 02:48 AM
Short answer yes...

Long answer. There is a bug in Virtuozzo for Windows (Which might be fixed in the latest release) that if you do go very close to your limit then the VPS can hang and will not restart. The only fix it is reboot the entire node.

Maybe check VMWare or Microsoft Virtual Server

That is not true as of Virtuozzo for Windows 3.5 and later, which was released months ago.

SolarVPS
05-11-2006, 09:06 AM
Actually, Windows Virtuzzo 3.5 still exhibits the "Hung VPS" behavior. It is nowhere near as bad as it was with 3.0, however, it's still there in this version.

Vonlar, the reason you might experience general instability when your VPS nears its limit is because the newer versions of Windows Virtuozzo will actually begin to throttle applications and sometimes even shut them down. We have seen this happen with MailEnable, Apache and even MySQL. Since Windows Virtuozzo doesn't allow for burstable RAM, it would seem that SWsoft put this feature into the newer versions to help prevent the VPS from becoming hung.

We typically tell customers that should they reach their max RAM and services begin to fail that they should NOT reboot their server from VZPP but rather open a support ticket and ask us to reboot it. Since the provider has contorl over the QoS settings, we can temporarily allocate additional RAM to the server, allow it to use the extra RAM it is so desperately trying to use and then safely bring it down without it becoming hung. This has worked quite well for us but of course it only works when the customer requests the reboot.

Hope this helps.

Ross

EuroVPS/Director
05-11-2006, 10:02 AM
Ross is completely correct.

Very well written post & 100% accurate.

yarivvv
05-11-2006, 11:27 AM
Does anyone know how Virtuozzo Linux behaves when a VPS runs out of memory? Does it simply choke or does it do disk swapping? I'm acutally curious because I'm planning or running a potentially memory intensive application on a Linux VPS.

Best,
Yariv

TheWiseOne
05-11-2006, 01:21 PM
The new SLM method attempts to find the program causing the most strain and first sending it a -TERM so it can safely close it's files, etc and then sends it a -KILL signal. Previous versions just gave a memory allocation error.

yarivvv
05-11-2006, 04:43 PM
I ran a little test Ruby script that basically allocates large arrays in a loop until it fails. My plan (introductory VPS plan with JaguarPC for $20 a month) provides me 128MB guaranteed ram and up to 8GB burst RAM. The script allocated ~8% of the total RAM on the box (~640MB) and then it encountered an out of memory exception. So, it's good news that Virtuozzo allows dynamic memory allocation because it may very well allow you to exceed your static quota (in my case, by a factor of 5x-6x). Interestingly, my script didn't get a TERM signal from the OS -- it simply ran out of memory.

Best
Yariv

TheWiseOne
05-11-2006, 05:34 PM
That is the older UBC method. The newer method will virtualized top/free in your VPS and not limit any single resource, but instead acts more like physical RAM and so coincides with the RAM in a dedicated server fairly well.

Apoc
05-11-2006, 05:44 PM
Actually, Windows Virtuzzo 3.5 still exhibits the "Hung VPS" behavior. It is nowhere near as bad as it was with 3.0, however, it's still there in this version.

Try upgrading to 3.5.1 - haven't had any such issue on the nodes we upgraded to that version.

error404
05-11-2006, 06:39 PM
That's a pretty show-stopping bug. How on earth did it ever make it to version 3.5 like that?

This is a tad OT, but is it possible to make Linux Virtuozzo behave sanely when running out of RAM? Killing processes is a pretty silly way to deal with it; virtual memory has been around for 20+ years. I assume then that Virtuozzo nodes can't have their own local swap (given the architecture, this wouldn't be at all surprising)?

sshepherd
05-11-2006, 08:10 PM
Virtuozzo for Windows has always been less than desirable in features compared to the Linux version which works great.

TheWiseOne
05-11-2006, 09:41 PM
As I said the new SLM model (versus UBC) makes it a quite a bit smarter, but I think swap space per VPS with Virtuozzo is not very feasable due to it's architecture. If you wanted RAM + Swap you'd have to look at Xen.

drewnick
05-13-2006, 11:02 PM
Virtuozzo for Windows has always been less than desirable in features compared to the Linux version which works great.

:smash: Sounds like Windows hosting in general.