Linux - Virtualization and CloudThis forum is for the discussion of all topics relating to Linux Virtualization and Linux Cloud platforms. Xen, KVM, OpenVZ, VirtualBox, VMware, Linux-VServer and all other Linux Virtualization platforms are welcome. OpenStack, CloudStack, ownCloud, Cloud Foundry, Eucalyptus, Nimbus, OpenNebula and all other Linux Cloud platforms are welcome. Note that questions relating solely to non-Linux OS's should be asked in the General forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hi I'm a total noobie when it comes to Linux and VM's and such and would greatly appreciate the advice from the experts :-) . I currently have a 16 core server (2 X AMD 6128 8Ccore) with 24 GIG of RAM and 4TB of Hard Drive space (and 2 X 250 GIGS for the OS) that will be hosted in a Data Center and My plan is to set up my Video Streaming Site on it. I would like to set up multiple VM's to separate the different parts that would make up the total solutions. IE.. Would like to have the web server, RED5 streaming server, and MYSQL Database on seperate VM's.
What would be your recommendation on OS, Virtualization Software, raid options (have an Areca 24 Port raid card),control panel software, etc...?? There are so many flavors out there that it's hard for me to decide which one would be best for my situation. I look forward to your responses.
Just a question. Which OS you are planning to install on this server to host virtual machines. Are you planning to install Windows to host your virtual machines or you are planning to use Linux to host virtual machine.
If you are planning for Windows then not many choices, you can go with Windows Server 2008. If you are planning for Linux then there are many flavours but that will depend on which way you want to go.
If you are looking for free / Open source OS then I would suggest CentOS, Debian, Open SuSE etc. If you are looking for paid one that comes with subscription/technical support then I would suggest Redhat. Redhat also has its own software for virtualization (KVM) and Redhat has official built it in RHEL6. To use this feature you have to have a 64 bit machine because as of now it is only for 64 bit system.
That was the brief information about the OS and virtual machine. Here are the answers to your queries:
1. When it comes to host machine that I would install on this server, I would prefer using CentOS. Reason being it is free, you will get open source community support and you can customize it a lot according to your need. In my office they are using Windows Server with VMware ESXi but I don't prefer using Windows Server. You can configure KVM on your CentOS machine (If it is a 64 bit machine) and then you can start installing your virtual machines.
As you said you have 24 Gigs of RAM I would say it is better to assign atleast 3-4 gigs to each virtual machine if you will going to use them heavily. I would also suggest you to use maximum of 18 GB of RAM out of 24 for your Virtual machine, just to give more space to your host machine.
2. RAID 5 configuration sounds good to me. If you want you can configure this server to be configured with RAID 5 hardware RAID (Requires 3 HDDs atleast of same size). You can also configure software RAID but I rate hardware rate more over software RAID.
3. For your virtual machines you can configure software RAID 5 if you want or you can schedule a snapshot to be taken every morning before start of business and every evening after end of business. But remember snapshots can be dangerous as sometimes they cause problem in the data center if they become too large.
This is going to be your single machine, running several virtual machines. In this case, I would definitely recommend getting a supported solution, even if that means a bit of extra cost.
The well supported distro that comes with a hypervisor is RHEL, as meantioned before.
The reason I talk about support so much is simple - you say you don't know much about Linux, and you also say you're running a single machine. If something happens, all of your services will be down, and having proper support at a time like this is priceless, and I do speak from experience. No forum will replace it
Quote:
Virtualization Software,
Talking about RHEL this will mean KVM
Quote:
raid options (have an Areca 24 Port raid card),control panel software, etc...??
Depends on the disks you have. You'll have to elaborate there. But the more random IO you can sustain the better off you'll be
If you are looking for paid one that comes with subscription/technical support then I would suggest Redhat. Redhat also has its own software for virtualization (KVM) and Redhat has official built it in RHEL6. To use this feature you have to have a 64 bit machine because as of now it is only for 64 bit system.
hate to be a nag, but it's Red Hat, not Redhat. And KVM is officially supported since 5.4
And also, any virt solution is for x64, if you want to be able to virtualise x64 guests.
Quote:
As you said you have 24 Gigs of RAM I would say it is better to assign atleast 3-4 gigs to each virtual machine if you will going to use them heavily. I would also suggest you to use maximum of 18 GB of RAM out of 24 for your Virtual machine, just to give more space to your host machine.
With KVM you can actually assign more RAM than you physically have available. All you need to do it monitor your free memory and run KSM when it is above a cerain threshold - this will free up RAM by deduplication of memory pages.
Balooning is also an option.
So to put it short, as long as you're not swapping, you can assing as much RAM as you need to, to the guests. Chances are you'll hit a disk IO bottleneck long before you're out of RAM
Quote:
3. For your virtual machines you can configure software RAID 5 if you want or you can schedule a snapshot to be taken every morning before start of business and every evening after end of business. But remember snapshots can be dangerous as sometimes they cause problem in the data center if they become too large.
can you please elaborate on this snapshot idea? afaik mdraid has no snapshot facility - it's simply not what it's for.
hate to be a nag, but it's Red Hat, not Redhat. And KVM is officially supported since 5.4
And also, any virt solution is for x64, if you want to be able to virtualise x64 guests.
With KVM you can actually assign more RAM than you physically have available. All you need to do it monitor your free memory and run KSM when it is above a cerain threshold - this will free up RAM by deduplication of memory pages.
Balooning is also an option.
So to put it short, as long as you're not swapping, you can assing as much RAM as you need to, to the guests. Chances are you'll hit a disk IO bottleneck long before you're out of RAM
can you please elaborate on this snapshot idea? afaik mdraid has no snapshot facility - it's simply not what it's for.
Hi dyasny,
Yes, I know it is Red Hat and not Redhat sorry if I offended your sentiments. You can consider it as a mistake that I made in the urge of typing fast.
KVM is official supported since RHEL 5.4 but I was not talking about support. Was I? I said that Red Hat official built it in RHEL6 which means that it will be the default virtualization application in RHEL6 and not XEN which was there in previous versions of Red Hat. Red Hat will not support XEN on any RHEL 6 versions and KVM will be the only virtualization solution supported on it.
Yes, you can use more RAM then what you have on the physical system but do you think it is a good idea to use that in production environment? I mean in testing/development environment you can ofcourse use it that way but doesn't sounds good to me when we talk about production environment.
Sorry if it sounded confusing about snapshots. Actually I was talking about virtual machine snapshots and not mdadm because I have never heard of snapshots in mdadm.
KVM is official supported since RHEL 5.4 but I was not talking about support. Was I? I said that Red Hat official built it in RHEL6 which means that it will be the default virtualization application in RHEL6 and not XEN which was there in previous versions of Red Hat. Red Hat will not support XEN on any RHEL 6 versions and KVM will be the only virtualization solution supported on it.
Xen being or not being there, does not change the fact that KVM is there, right? That's all I'm saying.
Quote:
Yes, you can use more RAM then what you have on the physical system but do you think it is a good idea to use that in production environment? I mean in testing/development environment you can ofcourse use it that way but doesn't sounds good to me when we talk about production environment.
The not so good idea for production is to use the hypervisor running heavy server VMs for anything besides a hypervisor. But if it is only running VMs, and is properly set up, the toll the base OS will take on the host is neglectable compared to what the VMs will be using. What I'm saying is you can assign as much RAM as you have to the VMs, and even more, as long as you make sure you don't get into swapping.
Quote:
Sorry if it sounded confusing about snapshots. Actually I was talking about virtual machine snapshots and not mdadm because I have never heard of snapshots in mdadm.
ah, good to hear I'm not losing my mind and/or missing out on an important feature
Ideally Red Hat Enterprise would be the perfect choice however my operational budget will be very thin initially so I was thinking more of a "Free" (Open Source or very affordable) solution that will get me over the hurtle until I start generating revenue. Since I'm technically savvy I was thinking that I would use Google to troubleshoot the small issues and then hire someone on an on call basis to help with the heavy stuff. So with that said and to answer an earlier question I have 4 x 1TB Seagate ES drives for storage and 2 X 250 GB hard drives for the OS. And since the chassis has 18 Hot Swappable slots I have 14 left to expand as the site grows. So what I need as recommendations from the professionals are :
1. OS
2. VM Software
3. Back Up Solution
4. VM Panel Software
5. Firewall Software
6. RAID Configuration
7. And anything else you can think of that will my initial start up easier (This is subjective) to manage...
1. OS
whatever you feel at home with really. I'd avoid debian/ubuntu, but some might argue against it.
2. VM Software
KVM is the jazz right now. With libvirt it can provide everything you need from a VM
3. Back Up Solution
depends what you want to back up and at what level
4. VM Panel Software
libvirt's virt-manager should be enough
5. Firewall Software
iptables on the host, if you like, you can also run firewalls in the guests
6. RAID Configuration
this gets a bit tricky. if you have a proper raid controller, I'd say do raid10, lose 2 out of 4 disks, but you'll get some performance, if what those sata disks provide can be called performance. You could also spread the VM images out between different disks, to avoid single disk contention. It really depends on the amount of planned IO, it's type and the avg vs peak loads you are foreseeing.
7. And anything else you can think of that will my initial start up easier (This is subjective) to manage...
Plan ahead, reinstalling VMs because you picked the wrong drivers is never fun. So for KVM, use virtIO wherever possible, make sure you follow the time management best practices, don't overcommit cpu cores if possible, plan for IO bottlenecks (you really don't want to end up in a situation where you're running 100 VMs on a host with 256 cores, but a single 1G NIC), make sure you have enough RAM (swap is your worst friend here, you never want to get in there) and so on.
Ideally Red Hat Enterprise would be the perfect choice however my operational budget will be very thin initially so I was thinking more of a "Free" (Open Source or very affordable) solution that will get me over the hurtle until I start generating revenue. Since I'm technically savvy I was thinking that I would use Google to troubleshoot the small issues and then hire someone on an on call basis to help with the heavy stuff. So with that said and to answer an earlier question I have 4 x 1TB Seagate ES drives for storage and 2 X 250 GB hard drives for the OS. And since the chassis has 18 Hot Swappable slots I have 14 left to expand as the site grows. So what I need as recommendations from the professionals are :
1. OS
2. VM Software
3. Back Up Solution
4. VM Panel Software
5. Firewall Software
6. RAID Configuration
7. And anything else you can think of that will my initial start up easier (This is subjective) to manage...
1.OS
I would suggest CentOS 64 bit will be most suitable. I am saying this on the basis of what you said. You said that you would google for small issues and will hire an on call person to troubleshoot big issues. I would like to mention that CentOS has got a pretty good community support.
2. VM Software
Same as advised above. KVM rocks.
3. Back Up Solution
That really depends on what you want to backup. Whether you want support for open file backup etc. If you are looking for free backup utility I would say rsync will work for you. Though I don't consider it as a full fledged backup software and there are flaws in it but if you are looking for saving money then this can be a choice.
4. VM Panel Software
Same as mentioned above.
5. Firewall Software
Definitely you can use iptables as a firewall solution but I can't totally depend on iptables to save my data from threats. You should never depend only on iptables when it is running on the server which hosts the services. It is always advisable to put a firewall between public network and your system. Use iptables as an add on security.
6. RAID Configuration
RAID 5 is quite popular in terms of performance as well as redundancy.
7. And anything else you can think of that will my initial start up easier (This is subjective) to manage..
I would say follow the documents for setting up a server (as required) carefully. First test it in a test environment before making it live.
Last edited by T3RM1NVT0R; 08-01-2011 at 01:45 PM.
All, thank you so much for your advice and will consider the options. However I think I'm leaning towards CentOS as T3RM1NVT0R mentioned. It appears there is a large CentOS community out there and would make it easier to troubleshoot should any issues arise. Also what would be the difference between OpenVZ and KVM? I've noticed that they are equally as popular.
In your case I would use VMWare vSpeher. It is free, the most popular virtual host, you can get support and there is a lot written about it. Most companies use VMWare, so it is probably easier to find some one to help you out in case you have a problem. There is also a set of GUI tools tailored for this product.
All, thank you so much for your advice and will consider the options. However I think I'm leaning towards CentOS as T3RM1NVT0R mentioned. It appears there is a large CentOS community out there and would make it easier to troubleshoot should any issues arise. Also what would be the difference between OpenVZ and KVM? I've noticed that they are equally as popular.
KVM is a proper l1 hypervisor, which can virtualize any OS. OVZ is basically a very advanced chroot jail, the supported OS list is limited to the base OS.
As for popularity - these two do not compete - they are designed for different tasks, and can actually run on the same host at the same time
vmware is severely limited and crippled in the free version, especially with the recent licensing updates.
and it is not FOSS in any way of course.
Absolutely true, but some one who is inexperienced should start with something he/she can lots of support for and has a large install base, just because there will be lots of information on the internet to solve your problem. A newbie will certainly not use all the features in the beginning. So why advise something that is a lot more difficult to understand?
The OP is not asking for FOSS solution specifically, so you don't need to take that in account. In my personal opinion, you have to make sure that the OP is able to do what he wants to do without making it extra difficult for him. Your personal choice doesn't really matter, because you might be an experienced user.
My personal choice would be Xen, but that will get the OP in even more trouble even though Xen is more used than KVM (especially when you look at all the hypervisors based on Xen).
VMWare might be limited, but if it does what the it needs to do for the OP, then that is the best solution in my opinion. Just because of information resources and the support you can get, either from VMWare or companies who provide virtualization solutions.
Absolutely true, but some one who is inexperienced should start with something he/she can lots of support for and has a large install base, just because there will be lots of information on the internet to solve your problem. A newbie will certainly not use all the features in the beginning. So why advise something that is a lot more difficult to understand?
the fact that an open and free product is harder to understand than a closed product you have no real way to access besides the API, is highly arguable.
Quote:
The OP is not asking for FOSS solution specifically, so you don't need to take that in account.
Really? Last time I checked the URL it read "linuxquestions.org", not "dontcareaboutwhichplatformquestions.org"
Quote:
In my personal opinion, you have to make sure that the OP is able to do what he wants to do without making it extra difficult for him. Your personal choice doesn't really matter, because you might be an experienced user.
KVM is not extra difficult. Install libvirt and KVM via yum/apt and you're done really. No kernel tweaks, no weird licensing schemes - you're ready to go right away.
Quote:
My personal choice would be Xen, but that will get the OP in even more trouble even though Xen is more used than KVM (especially when you look at all the hypervisors based on Xen).
Xen is harder to use than KVM, because it requires a separate kernel, and the architecture is overcomplicated. KVM is not Xen.
Quote:
VMWare might be limited, but if it does what the it needs to do for the OP, then that is the best solution in my opinion. Just because of information resources and the support you can get, either from VMWare or companies who provide virtualization solutions.
If the OP wanted support, he would have taken the original advice to go for a supported Linux version. As for information resources - the open community is much more responsive and helpful by definition, than any usergroup of a locked down software.
Really, I doubt I need to be the evangelist at LQ - this forum, supposedly, shouldn't require these explanations.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.