Failover domain not working

mcmyst

Member
Dec 12, 2012
47
2
6
Hello,

I have set up a 3 node cluster:
- node1 : for quorum
- node2 : hoster
- node3 : hoster

I have created a failover domain between node2 and node3, here is the clusters.conf:
Code:
<?xml version="1.0"?>
<cluster config_version="11" name="local">
  <cman keyfile="/var/lib/pve-cluster/corosync.authkey" transport="udpu"/>
  <clusternodes>
    <clusternode name="node1" nodeid="1" votes="1">
    </clusternode>
    <clusternode name="node2" nodeid="2" votes="1">
      <fence>
        <method name="1">
          <device name="fence2"/>
        </method>
      </fence>
    </clusternode>
    <clusternode name="node3" nodeid="3" votes="1">
      <fence>
        <method name="1">
          <device name="fence3"/>
        </method>
      </fence>
    </clusternode>
  </clusternodes>
  <fencedevices>
    <fencedevice agent="test" ipaddr="192.168.48.202" login="root" name="fence2" passwd="root"/>
    <fencedevice agent="test" ipaddr="192.168.48.203" login="root" name="fence3" passwd="root"/>
  </fencedevices>
  <rm>
    <failoverdomains>
      <failoverdomain name="Node2-Node3" nofailback="1" ordered="1" restricted="1">
        <failoverdomainnode name="node2" priority="2"/>
        <failoverdomainnode name="node3" priority="1"/>
      </failoverdomain>
    </failoverdomains>
    <pvevm autostart="1" vmid="100"/>
  </rm>
</cluster>

I don't want the VM going to node1 so I have not declared node1 in the failoverdomain.

When the VM is on node2, and I crash node2, the VM goes on node3 ==> OK
When the VM is on node3, and I crash node3, the VM goes on node1 ==>NOK, it should goes on node2

Do you have any ideas ?

Thank you
 
I forgot, here is the package version:
Code:
[COLOR=#000000][FONT=monospace]proxmox-ve-2.6.32: 3.1-109 (running kernel: 2.6.32-23-pve)pve-manager: 3.1-3 (running version: 3.1-3/dc0e9b0e)pve-kernel-2.6.32-23-pve: 2.6.32-109lvm2: 2.02.98-pve4clvm: 2.02.98-pve4corosync-pve: 1.4.5-1openais-pve: 1.1.4-3libqb0: 0.11.1-2redhat-cluster-pve: 3.2.0-2resource-agents-pve: 3.9.2-4fence-agents-pve: 4.0.0-1pve-cluster: 3.0-7qemu-server: 3.1-1pve-firmware: 1.0-23libpve-common-perl: 3.0-6libpve-access-control: 3.0-6libpve-storage-perl: 3.0-10pve-libspice-server1: 0.12.4-1vncterm: 1.1-4vzctl: 4.0-1pve3vzprocps: 2.0.11-2vzquota: 3.1-2pve-qemu-kvm: 1.4-17ksm-control-daemon: 1.1-1glusterfs-client: 3.4.0-2[/FONT][/COLOR]
 
Try this instead:
Code:
    <failoverdomains>
      <failoverdomain name="[COLOR=#333333]Node2-Node3[/COLOR]" ordered="0" restricted="1">
        <failoverdomainnode name="[COLOR=#333333]node2[/COLOR]"/>
        <failoverdomainnode name="[COLOR=#333333]node3[/COLOR]"/>
      </failoverdomain>
    </failoverdomains>
 
I guess you need to assign the domain to the VM:

Code:
  <pvevm domain="[COLOR=#333333]Node2-Node3[/COLOR]" autostart="1" vmid="100"/>
 
You are right. Thank you dietmar.

One other question : Do you know where to set a dead timer to say to the cluster to not migrate VM before X seconds when a node fails ?
 
No you just add a VM ID and autostart option.
I think that Proxmox should the entire clusters's setting in the GUI (don't see it in the roadmap...).
 

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!