Thinking of adding VPS hosting - Should I be looking at physical or logical cores?
I'm sure this question has been answered a thousand times - I'm trying to estimate server capacity for virtual machines. I'll be using either Xen or KVM (looking to sell dedicated resources). I'll probably keep 10-25% of the RAM free and 1 core free for the host. Last thing I want to do is oversell.
Now, when trying to look at how many guests I can have on the server - should I be looking at physical cores or logical cores? For example, would a 4 core processor with 8 logical cores handle 7 single vcpu guests at, let's say, 50% load each? If I shouldn't be looking at logical cores - should I disable hyperthreading for virtualization?
I'm trying to figure out how some of these KVM hosts can offer so much for so little sometimes without selling more cores than there are physical/logical cores.
Thanks in advance for your input! I tried googling, but I was not satisfied with the answers (1-2 vcpus per core, 5-10 per core seemed too general, or "it depends" type of responses). I know I can't expect an exact amount. I'm trying to figure out a baseline for testing before I invest in this then discover it's just not right of an investment (financially) for me just yet.
Honestly, I wouldn't be looking at CPU as much as I would disks and then memory. I assume you will probably want to go with something like OpenVZ to sell VPS's with. It allows over selling and is a great beginner virtualization as its easy to use and pick up on. In most cases you will run out of memory or hit disk limitations (io) before you will CPU. I am not sure what your budget it, but just go with like something below that will easily handle what you need and offer you a decent amount of performance for your money:
E3-1230v2/v2 or above (has 4 cores, 4 threads for a total of 8 virtual cores)
2 x 1TB Drives in Raid-1 or 4 x 500gb drives in Raid-10 (software) costs should be almost the same. Obviously more drives in Raid-10 is going to give you more throughput and higher io max.
Load it up with OpenVZ and you should have a pretty affordable VPS node that can handle anywhere from 5-50 VPS, depending on how intensive each VPS is and how much you want to oversell the server.
Thanks for the input - I was planning on slapping in at least 4 drives for use in RAID-10 for better speed and redundancy, but I guess for mechanical drives that's where the bottleneck will still most likely be.
I actually don't want to oversell and I want to give more options in terms of OS choices, which I think openvz would limit.
I think what I'll do is setup a mock server at home on my sandybridge i7 and run tests that hit the cpu hard, then a test for the drives, and a test for memory intensive tasks and see which one cripples the host soonest.
The disk bottleneck will come with IO on 7200rpm SATA disks. You cna mitigate that a little with RAID 10 and the more spindles you can put in your array the better IO. Of course SSD is going to get rid of your IO bottleneck but at that cost of disk space. You can also compromise with 10k/15k disks which have more disk space than SSD and more IO than 7200 but less disk space and more costly.
When it comes to proc that really isn't an issue with guests. Most Hypervisors have a way to limit resources as well so you don't have a guest monopolizing CPU. RAM will be more important.
I've been playing around a lot with OnApp which has a free version that is limited to 16 cores total. It uses KVM, Xen, or VMware. There's also Apache CloudStack, OpenVZ, OpenStack ...
███ Mike Kauspedas - GearHost
███ PaaS Cloud for .NET and PHP Developers
███ Publish using Git, Visual Studio 2013 or FTP. Signup - No credit card required
███ Personal blog www.mikesaysmeh.com
Thanks for the help! Going to move forward with this and survey my existing clients that have inquired about VPS hosting from me to see what they're willing to pay. I'm thinking $30/month on a single core VPS with 2gb of ram and 100GB of disk space as a baseline, if I can get more than that then I'll be going through with it, if they're not willing to pay that much then I'm going to have to hold it off a little while longer.