Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Overselling- how much is too much?
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Overselling- how much is too much?

doverlanddoverland Member
edited May 2015 in General

I was reading through the 'BlueVM refugee' thread and there is quite a bit of conversation about "those VM's are oversold... you'll get terrible service". Then I got to thinking, I do the exact same thing. Oversubscription is part of the economics of virtual machines. If it weren't for oversubscription, each hardware node would have precisely one VM and that would be it.

The OP in that thread was looking for a $4/mo server with 4 cores and 2 GB of ram. So I set about figuring out how I might be able to do that at scale and decided it couldn't be done (well... I wasn't going to do it). The hardware would be absolutely obsolete by the time it was paid back - either that or I would have to overload the nodes in a way I'm not comfortable.

But that raises the question - how much is too much? If you're paying $4/mo for a VM with 4 cores and 2GB of ram, are customers really expecting dedicated-like responsiveness and performance? How do you quantify 'too much'? VMware best practices have some guidelines but that doesn't really apply to every hypervisor and virtualization technology. I'm just curious for thoughts on the topic.

Comments

  • Overselling is in no way bad.......... if your machine can handle it.

    Say you are using over 90% of RAM (oversold) it isn't wise to sell any more on this node till it dies down.

  • jarjar Patron Provider, Top Host, Veteran
    edited May 2015

    It varies a lot. Rarely will you get an honest answer from someone who has actually done this for a while, because it's the secret sauce. So here's how to oversell OpenVZ in my opinion:

    In small openvz containers you can get away with selling as much as 3-4TB for only having around 500GB of disk. This is because no one really treats small disk allocations as a backup server. If you sold 3TB in 3 1TB containers, expect it to be used.

    You can usually allocate twice the system memory safely, and CPU barely matters, don't sell unmetered packages and most people won't abuse the CPU (these two are well connected). The ones that do, they would be a problem if you sold 4 cores just as well as they would if you sold 400, so you deal with them the same.

    This recipe will keep a decent node at 30-50% utilization, plenty to spare for burst.

  • KwiceroLTDKwiceroLTD Member
    edited May 2015

    How much is too much... Good question.
    If you're using over 95% of your server, it's too much imo. You want to remember to allocate some spare room, incase the need ever arrives.

  • MikePTMikePT Moderator, Patron Provider, Veteran
    edited May 2015

    It depends the hardware you got. And how you do the overselling. IMHO, in KVM, overselling CPU only is fine. In OpenVZ you can oversell everything but.. I'm not the right person to talk about this. I don't oversell anything other than CPU.

    So, as Tom said, overselling isn't bad at all, if your machine can handle it and if you do it right.

    Thanked by 1TinyTunnel_Tom
  • It depends on your hardware and what your clients use your service for. We aim to oversell as little as possible, especially on RAM as a lot of our clients are hosting game servers, and they can spike RAM (Especially on servers like Minecraft) and when this happens it causes issues for us. We generally tend to make sure that RAM is never oversold, and when it is its only by a few GB. Disk is something we oversell along with CPU resources. But its a matter of balance and monitoring to make sure that everything is running as it should be all the time.

  • tdaletdale Member

    LOAD IT UNTIL IT SPITS!! Just kidding, it varies from Sysadmin to sysadmin. This depends on too many factors from pricing to cost to hardware cost and so on. Everyone seems to be on the beaten path of "how close to free can i get to get the most customers in". A lot of the community is blinded by cost vs performance anymore.

    Thanked by 1inthecloudblog
  • Calculated overselling would do well for you as long as you do not overload your nodes. Those 2 factors are determined based on hardware of your nodes, virtualization technology that you use & average resource allocation to VMs on a node. What most of your customers run on the VMs also matters.

  • century1stopcentury1stop Member
    edited May 2015

    @doverland If it weren't for oversubscription, each hardware node would have precisely one VM and that would be it. <---w/o orchestration or virtualization platform

    not quite accurate, that's the exact reason why we need Qemu for KVM or OpenVZ, to calculate the precise amount of resources based on your hardware, cpu/RAM/storage, when non-oversold. Each VM will be a smaller part of the node with hardware resources to support it's activity, you get a lower resource virtualized dedicated server.


    Do not misunderstand my point, not against overselling, just a provisioning policy

  • I like overselling. Keeps my VMs cheap :)

    Thanked by 1rokok
  • AnthonySmithAnthonySmith Member, Patron Provider

    Oversell as much as you want just have a plan to deal with it when it starts affecting users, there is no magic formula, some hosts oversell by 2:1 some by 4:1 and some by 10:1 but you can be sure that if a host is using OpenVZ they are overselling.

    LES UK for example was at around 7:1 this was the point at which it started to suffer so I added more ram, problem solved.

  • I think there is one thing good about overselling is that it helps those who aim to run cheap vps business to keep prices down. And for those who choose cheap vps, they most likely don't run production services on it, which means they don't constantly use high load, overselling helps them to run fast when needed, which is a rare case.

  • Personally, I don't think that you really need to fill the server up so low. You can get away with about triple the resources that your server can handle (unless you're and idiot and you guarantee it, in which case this is a stupid idea), around ~75% of the server should be used at all times, still plenty for burst.

  • MaouniqueMaounique Host Rep, Veteran
    edited May 2015

    It depends on your users and time since they are your customers.
    After a while, when everyone is done with installing and tweaking, say, 2-3 months since the node was filled, you will see that it has a lot of space to spare. So you can add another batch of people, wait to settle and repeat it perhaps one more time if the capacity is there. After that, only replace goners and add only services for people you know, which made no problems to you for months. You can bring the node up to 70% capacity without worries.
    The key ingredient here is supervision. You HAVE TO monitor load and resources 24/7 and have alerts in place. Fail that and 1-2-3 abusers will manage to lock cores/saturate ports/abuse disk and everyone will suffer. For a few minutes until you fire a ssh, look up the abuser and shut him down/suspend, nobody will complain, if it takes hours and days, it will be very unpleasant. This goes for all virtualizations too, whether oversold or not, people can abuse ports with DoS/torrents, etc, as well as disk and CPU on all platforms, but it is harder to lock cores outside OVZ, impossible on Xen and it is easier to enforce limits on disk and cpu too on other virtualizations.

  • jcalebjcaleb Member

    experience will tell

  • I sort of suspected this thread might go this direction and it's not quite what I wanted. I don't need advice on how much to oversubscribe or how to do it. I have my own magic formula that I follow and has worked for me for 10+ years.

    Back to what I posted originally, I was reading through the 'BlueVM refugee' thread and there is quite a bit of conversation about "those VM's are oversold... you'll get terrible service".

    The reason I made the post is that there seems to be some kind of subjective measure of "BlueVM has gone too far"... how do people know that? Is it being measured on measurements taken inside the VM (i.e. poor performance)? And I balance my comments out against price. For $2/mo, let's say, does a customer really expect the experience of a fully dedicated everything? So the question is, how do customers know where the line is? I don't know BlueVM (or any other provider really, I just don't care that much about how other people do their business) but I'm interested in the customer experience.

    My suspicion is that it varies customer-by-customer. One customer may have some small workload that is highly functional on a box that is oversubscribed until smoke comes out where another customer believes that 'unlimited resources' and 'free' are both possible if you just use the right words to ask.

  • jarjar Patron Provider, Top Host, Veteran
    edited May 2015

    doverland said: how do people know that? Is it being measured on measurements taken inside the VM

    In my observation there is very rarely any actual calculation being done, rather the blind accusation and quite often the person making it isn't even a client. People read reviews, assume reviews account for entire user experience, and make an accusation that conforms with popular opinion.

    In tickets at companies I previously worked for, people who made the accusation would do so from either blind guessing when things wouldn't install in the way they expected them to, bandwidth tests halfway across the world didn't provide the result they wanted, or the famous "dd test" resulted in anything less than 150mb/s. Probably the most legitimate would be the accusation of overselling when I would tell them that CPU cores were shared and they couldn't max them out at all times.

Sign In or Register to comment.