Cluster config issues with two node cluster

May 5, 2010
44
0
6
California, USA
Hello,

I am trying to setup a two node HA cluster. I am fallowing this guide:
http://pve.proxmox.com/wiki/Two-Node_High_Availability_Cluster

I have setup (multiple times :( ) a healthy cluster fallowing this guide:
http://pve.proxmox.com/wiki/Proxmox_VE_2.0_Cluster

When I configure fencing in the cluster.conf.new amd go to the web interface to "Activate" the changes I get:
mismatched tag at line 18, column 4, byte 603 at /usr/lib/perl5/XML/Parser.pm line 187 (500)

I know I'm putting something in the config wrong, I'm just not sure what. I have tried changing around the config a couple times with no luck. Here is my current cluster.config.new:

Code:
<?xml version="1.0"?>
<cluster name="do-prod" config_version="6">
  <cman two_nodes="1" expected_votes="1" keyfile="/var/lib/pve-cluster/corosync.authkey">
  </cman>
  <fencedevices>
        <fencedevice agent="fence_ipmilan" hostname="10.1.1.27" login="ADMIN" name="forge-impi" passwd="ADMIN"/>
        <fencedevice agent="fence_ipmilan" hostname="10.1.1.25" login="ADMIN" name="ironworks-ipmi" passwd="ADMIN"/>
  </fencedevices>


  <clusternodes>
  <clusternode name="forge" votes="1" nodeid="1"/>
        <fence>
                <method name="1">
                        <device name="forge-ipmi" action="reboot"/>
                </method>
        </fence>
  </clusternode>
  <clusternode name="ironworks" votes="1" nodeid="2"/>
        <fence>
                <method name="1">
                        <device name="ironworks-ipmi" action="reboot"/>
                </method>
        </fence>
  </clusternode>


</clusternodes>
</cluster>

here is my pveversion:

pve-manager: 2.1-12 (pve-manager/2.1/be112d89)
running kernel: 2.6.32-13-pve
proxmox-ve-2.6.32: 2.1-72
pve-kernel-2.6.32-11-pve: 2.6.32-66
pve-kernel-2.6.32-13-pve: 2.6.32-72
lvm2: 2.02.95-1pve2
clvm: 2.02.95-1pve2
corosync-pve: 1.4.3-1
openais-pve: 1.1.4-2
libqb: 0.10.1-2
redhat-cluster-pve: 3.1.92-2
resource-agents-pve: 3.9.2-3
fence-agents-pve: 3.1.8-1
pve-cluster: 1.0-27
qemu-server: 2.0-45
pve-firmware: 1.0-17
libpve-common-perl: 1.0-28
libpve-access-control: 1.0-24
libpve-storage-perl: 2.0-27
vncterm: 1.0-2
vzctl: 3.0.30-2pve5
vzprocps: 2.0.11-2
vzquota: 3.0.12-3
pve-qemu-kvm: 1.1-6
ksm-control-daemon: 1.1-1

Thanks in advance! And as always, awesome product!

--Will
 
Last edited by a moderator:
You cloes the clusternode tags too early:

<clusternode name="forge" votes="1" nodeid="1"/>

Instead, use

<clusternode name="forge" votes="1" nodeid="1">

because you close the later with </clusternode>
 
Thanks dietmar, now that I look at it the whole config looks wrong (lines being closed early). What's weird though, is the default two node config is wrong too?

<?xml version="1.0"?>
<cluster name="do-prod" config_version="2">

<cman keyfile="/var/lib/pve-cluster/corosync.authkey">
</cman>

<clusternodes>
<clusternode name="forge" votes="1" nodeid="1"/>
<clusternode name="ironworks" votes="1" nodeid="2"/></clusternodes>

**EDIT2**
Didn't like me removing the other closing tags so I put them back. What do I have wrong? I wrote the config based off the wiki.


</cluster>

I will try removing some of the redundant closing tags, and post back with results.

--Will

**EDIT**

I remove the closing tags from the clusternode definitions, and now the web interface error is gone. The new config changes show in the pending section. However I click "Activate" I get: "config validation failed: unknown error (500)"

I assume this has to do with other "bad" closing tags in the config. Any suggestions? I will go through and try to clean it up. This is what it looks like now:

<?xml version="1.0"?>
<cluster name="do-prod" config_version="6">
<cman two_nodes="1" expected_votes="1" keyfile="/var/lib/pve-cluster/corosync.authkey">
</cman>
<fencedevices>
<fencedevice agent="fence_ipmilan" hostname="10.1.1.27" login="ADMIN" name="forge-impi" passwd="ADMIN"/>
<fencedevice agent="fence_ipmilan" hostname="10.1.1.25" login="ADMIN" name="ironworks-ipmi" passwd="ADMIN"/>
</fencedevices>


<clusternodes>
<clusternode name="forge" votes="1" nodeid="1">
<fence>
<method name="1">
<device name="forge-ipmi" action="reboot"/>
</method>
</fence>
</clusternode>
<clusternode name="ironworks" votes="1" nodeid="2">
<fence>
<method name="1">
<device name="ironworks-ipmi" action="reboot"/>
</method>
</fence>
</clusternode>


</clusternodes>
</cluster>

**EDIT2**
it didn't like me removing the closing tags so I put them back, now the config looks like the above again, any ideas? I wrote the config based off the wiki.
 
Last edited:
There is no 'two_nodes' argument! It is called 'two_node' instead.

Oops, sorry about that. Changed it to "two_node" and I still get the "config validation failed: unknown error (500)." Is this logged anywhere? Are there any example configs? I googled a little and found some I might try. I just don't see what I'm doing wrong :(

--Will
 
You can run ccs_config_validate to verify your config:

# ccs_config_validate -f your-new-config.conf
Relax-NG validity error : Extra element fencedevices in interleave
tempfile:5: element fencedevices: Relax-NG validity error : Element cluster failed to validate content
tempfile:15: element device: validity error : IDREF attribute name references an unknown ID "forge-ipmi"
tempfile:22: element device: validity error : IDREF attribute name references an unknown ID "ironworks-ipmi"
Configuration fails to validate


Basically typos in fence devices names:
forge-impi vs. forge-ipmi
ironworks vs ironworks-ipmi
 
You can run ccs_config_validate to verify your config:

# ccs_config_validate -f your-new-config.conf
Relax-NG validity error : Extra element fencedevices in interleave
tempfile:5: element fencedevices: Relax-NG validity error : Element cluster failed to validate content
tempfile:15: element device: validity error : IDREF attribute name references an unknown ID "forge-ipmi"
tempfile:22: element device: validity error : IDREF attribute name references an unknown ID "ironworks-ipmi"
Configuration fails to validate


Basically typos in fence devices names:
forge-impi vs. forge-ipmi
ironworks vs ironworks-ipmi

Wow...thank you so much! I can't believe I missed that. I looked at the config for so long I was getting cross-eyed. Config is fixed and working, that ccs_config_validate command is awesome.


--Will
 
Hello can any one help me on this.. I am trying to configure fencing on proxmox 3.4.

I am trying to check my configure using css command, But i am getting below error.

root@node1:/usr/sbin# ccs_config_validate -f /etc/pve/cluster.conf.new
Relax-NG validity error : Extra element clusternodes in interleave
tempfile:15: element clusternodes: Relax-NG validity error : Element cluster failed to validate content
Configuration fails to validate
root@node1:/usr/sbin#


Thanks