4

I'd like to set up three virtualized server on one box running Ubuntu KVM. I'd also like to have a second machine mirroring the above mentioned on a cluster so that if the first machine physically goes down, this one would take over.

Is this setup possible and if so, does anyone have a link to a articles or walkthroughs on this?

5 Answers 5

5

Yes, you can do it. I don't have any articles to hand, but we're using DRBD, heartbeat, some simple shell scripts, and Puppet to automatically provision, replicate, failover and maintain our VMs.

0
0

depends on how exactly you want things to failover. if you mean the scenario where if one host fails, all VMs are restarted on another - RHEV can do that easily. if you're looking for 0 downtime - you want vmware FT, which costs an arm and a leg

0

Maybe the new Cloud Computing Solution from Ubuntu (which is based on KVM) is worth a look. http://www.ubuntu.com/cloud/private

I have no real experience but maybe it's a modern approach to your problem. :-)

0

Instead of Ubuntu you can use Fedora or CentOS because I don't know much about Ubuntu

  1. Both nodes identical with software
  2. Setup host name on both test1.example.com & test2.example.com
  3. At /etc/grub.conf: kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ rhgb quiet acpi=off
  4. /etc/sysconfig/network at line for GATEWAY=xx.xx.xx.xx
  5. If you are using CentOS 5.4 or Fedora 11 or 12 /etc/sysctl.conf net.ipv4.ip_forward = 1 change from 0 to 1
  6. In your case I don't know where the storage is. (I have created NFS on a SAN box for all the guest are using a SAN partition)
  7. yum install ricci luci -y in on test1
  8. yum install ricci -y on test2
  9. service ricci start and chkconfig ricci on both nodes
  10. luci_admin init, then enter the password for your luci admin on test1
  11. Browse to https://<ipaddress>:8084/
  12. Select the cluster tab
  13. Add a new cluster

Then install using cluster server all the guests!

0

The question seems overly broad to answer meaningfully. So, let me answer a narrower question instead!

Canonical (the company behind Ubuntu) has currently the following products:

Each of these is capable of managing a fleet of KVM virtual machines running on multiple Ubuntu hosts.

In case of MAAS (Metal-As-A-Service), note that it can orchestrate either preprovisioned libvirt machines (bring them up, netboot them, provision os...) or it can talk to libvirt (and also LXD) to create new VMs. See https://maas.io/tutorials/create-kvm-pods-with-maas

Compared to other solutions (and compared to not running on Ubuntu), the main Ubuntu advantage (tm) is probably the Ubuntu FAN Network, which is an (almost) zero-config overlay network. https://news.ycombinator.com/item?id=9764391

Additionally, Canonical is happy with you running Kubernetes

This means you can install that and then put on it KubeVirt to run the KVM machines https://kubevirt.io/user-guide/operations/installation/

Or use MicroStack, which is OpenStack on Kubernetes. This is probably what Canonical wants you to do (instead of using KubeVirt).

In general, think whether you need all the typical cluster features (such as live VM migration) or if you can live without these in exchange for a simpler setup. In case of LXD, live migration precludes using Ubuntu Fan network and requires to have shared storage, such as Ceph.

You must log in to answer this question.