Testing Cluster, Failover Domains and such

jorg

New Member
Jan 10, 2014
7
0
1
Hi,
We are looking into Proxmox and are testing at the moment.
We need a redundant/failover system for around 100 VMs to start with. These are currently running on an old Xen cluster and we think about moving to Proxmox/KVM.

Our test configuration: 3 Hosts, each 24 cores and 128GB RAM, redundant connection to a dual-controller HA-SAS-storage system.
I set up Proxmox on the three hosts, configured multipathing for the storage and can create and migrate around VMs now - with some glitches and questions popping up:

some questions:
1. ISOs
When I install a new VM from an iso file, I can add it to the HA group, but it won't migrate/start on another node. I found the reason is the iso file missing on the other nodes.
Is this supposed to be like that or a bug? Looks like I can't put isos on a shared storage and the local iso folder is not being synced inbetween the nodes. It's just a matter of time until this would cause problems because somebody will forget to unlink the iso after installation and some important VM will not start in the case of a failover...

2. VNC
remote control is not working from neither a Ubuntu 13.10 client nor a Mac OS X client. This makes the console ununsable. Is there a fix? It is no option to have the need of special Java versions or such on the clients... to many systems, home offices and such.

3. failover domains
From what I understand, we need to set these up manually and also maintain them by hand in the cluster.conf? This is needes for any professional use and I would have expected to be able to do this via the GUI?

Our current idea to solve these problems is a simple script/daemon that monitors and modifies the following things:
(please give me some feedback if this sounds like nonsense or is actually a good approach)

1. monitor the template- and iso-folders and sync them between the hosts (inotify, rsync and such)
2. monitor /etc/pve/nodes/*/qemu-server/*.conf and add "args: -vnc 1.2.3.4:MACHINENUMBER" if missing. These changes should then automatically be synced to all other nodes, right? (at least it looks like that). Or will I have to use some API for these changes? This is not an optimal solution, but everyday-access to the VMs will be SSH (linux VMs) or rdesktop (windows VMs) anyway.
3. We don't need Pools for user rights or such, so my idea is the following: I would divert Pools to group my VMs to failover domains. So a Pool would be a failover domain and I could do the grouping of VMs via the GUI. I would then monitor changes in /etc/pve/cluster.conf and user.cfg: if a ne pvevm-entry pops up/changes, look it up in the /etc/pve/user.cfg and add domain="MyPoolName" to the pvevm-tag

ipmi-based fencing seems to work, but I haven't tested the following yet:
- bonding & vlans, but I assume once I set up vlans/bridges the "debian way", the interfaces will pop up in proxmox and I can assign them to the VMs NICs?

Thanks
 
ISO's can definitely be put on shared storage. You need to select backup in the options for the storage

Sent from my MT27i using Tapatalk
 
Hi,
2. monitor /etc/pve/nodes/*/qemu-server/*.conf and add "args: -vnc 1.2.3.4:MACHINENUMBER" if missing. These changes should then automatically be synced to all other nodes, right? (at least it looks like that). Or will I have to use some API for these changes? This is not an optimal solution, but everyday-access to the VMs will be SSH (linux VMs) or rdesktop (windows VMs) anyway.
You do not need to manually sync files between nodes. Changing, adding, deleting a file under /etc/pve on one node will automatically be distributed to other nodes through the cluster manager.
 
...
2. VNC
remote control is not working from neither a Ubuntu 13.10 client nor a Mac OS X client. This makes the console ununsable. Is there a fix? It is no option to have the need of special Java versions or such on the clients... to many systems, home offices and such.
...
Hi,
which OS-X version do you use? With an old 10.6.8 it's not possible to run an console - but with an newer one it schould work (and you can also use spice).

I don't use ubuntu (only debian/siduction) but with the icedtea-plugin (1.4.1) the console work without issue - should be the same on ubuntu.

Udo
 
I can use the console on osx 10.9 with safari ( you need 64-bit browser to start java, because java is only 64-bit on osx ) but I couldn't figure out how to use SPICE. On windows
I just launch the spiceproxy.vv and it starts it? but on osx?
 
You need to install the spice client, I don't think there is one for Macintosh

Sent from my MT27i using Tapatalk
 
Of course I have the spice client.. it seems to be different and it doesn't have an option to load a script, or I couldn't find a way..
 
Then you need to register the Spice Client as the default handler for the mime type (application/x-virt-viewer) and/or the file extension (.vv)

Thats a config issue for OSX and/or your Browser. I don't know a thing about that myself.
 
It doesn't work.. the app is called RemoteViewer. I tried to launch it from terminal, I tried assign it as a default app from finder, it just launches and does nothing else, I guess it's a different app.
 
Thanks for the feedback so far. regarding the remote console, I didn't have success with two ubuntu 13.10 installations. They should both be up-to-date. I'll check that again. Regarding the OS X I'll have to ask a colleague, I don't use OSX myself...

Does anybody have an opinion on my approach regarding failover domains?
 
Does anybody have an opinion on my approach regarding failover domains?

Nobody? I am wondering if nobody ever tried to use that? I think thats critical when using a cluster with more than 2 hosts?! :-o
 
Nobody? I am wondering if nobody ever tried to use that? I think thats critical when using a cluster with more than 2 hosts?! :-o

Bump :-o
nobody? I simply cannot imagine nobody has used failover domains with Proxmox? :-o
 
For everything that is not handled through the GUI, I modified the cluster.conf ( for example fencing.. and HA ).. if you wonder why you need Proxmox then you should start another topic :p
 
For everything that is not handled through the GUI, I modified the cluster.conf ( for example fencing.. and HA ).. if you wonder why you need Proxmox then you should start another topic :p

That's not the point. Failover domains are critical if you virtualize your business. You might not care what machine a VM is running on if you are just selling VMs to customers, but in a more critical environment its essential that i.e. my load-balancers or firewalls (active and backup) are running on different Hardware. That's what failover domains are for. You need to group all your VMs.
Proxmox lacks this feature at the moment. My idea I wrote in my first post was to misuse the Pools for that and do some scripting to automate creating the cluster.conf. I wonder if I end up in trouble later on, after updates etc, or if somebody has better ideas and I wonder if nobody else uses failover domains with Proxmox?
Just doing everything by hand (=adding every single VM by hand in the cluster.conf) undermines Proxmox and the whoel idea behind a GUI in general...
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!