Hi all,
recently I tried to use the STONITH plugin external/vcenter along with
vCenter 5 (I doubt, that the version is significant).
While using the stonith resource for each node separately, I had no
problems, but using it in a clone resulted in failures like that one:
====
Nov 14 08:53:57 shermcl1 external/vcenter(vfencing:0)[23236]: [23257]:
ERROR: [reset shermcl2] Invalid target specified
====
where the cluster consists of virtual machines SHERMCL1, SHERMCL2 and
SHERMCL3, with their unames shermcl1, shermcl2 and shermcl3,
accordingly. shermcl2 should be fenced, but the remaining cluster
members were unable to kill that machine.
The relevant portion of the cluster configuration is here:
====
node shermcl1
node shermcl2
node shermcl3
primitive vfencing stonith:external/vcenter \
params VI_SERVER="virtualcenter.dom.ain"
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml"
HOSTLIST="shermcl1=SHERMCL1;shermcl2=SHERMCL2;shermcl3=SHERMCL3"
RESETPOWERON="0" \
op monitor interval="3600s"
clone Fencing vfencing
location l-Fencing_shermcl1 Fencing 0: shermcl1
location l-Fencing_shermcl2 Fencing 0: shermcl2
location l-Fencing_shermcl3 Fencing 0: shermcl3
====
The location statements are needed, as the cluster itself is no
symmetric.
All machines are plain openSUSE 12.2 with corosync 1.4.3 and pacemaker
1.1.6.
While running perfectly on the commandline with
====
stonith -t external/vcenter VI_SERVER="virtualcenter.dom.ain" \
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml" \
HOSTLIST="shermcl1=SHERMCL1;shermcl2=SHERMCL2;shermcl3=SHERMCL3" \
RESETPOWERON="0" -l
====
and showing the names of the three virtual machines, I found, that
called as resource inside the cluster only the first hostname until the
first "=" is visible, perhaps caused by the handover as environment
variable.
Applying the attached trivial patch to use a colon (":") instead of the
equal sign ("=") the command line test
====
stonith -t external/vcenter VI_SERVER="virtualcenter.dom.ain" \
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml" \
HOSTLIST="shermcl1:SHERMCL1;shermcl2:SHERMCL2;shermcl3:SHERMCL3" \
RESETPOWERON="0" -l
====
as well as fencing inside the cluster with
====
primitive vfencing stonith:external/vcenter \
params VI_SERVER="virtualcenter.dom.ain"
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml"
HOSTLIST="shermcl1:SHERMCL1;shermcl2:SHERMCL2;shermcl3:SHERMCL3"
RESETPOWERON="0" \
op monitor interval="3600s"
====
succeeds.
So a question around: Is anyone using the external/vcenter with the
cloned resource successfully with the original syntax?
If so, where is my problem?
If not, the attached patch changes the syntax in the above described
way. If there is no objection can it be applied?
Greetings,
Stefan
PS: sorry for the line breaks in the code
--
Stefan Botter listreader@jsj.dyndns.org
recently I tried to use the STONITH plugin external/vcenter along with
vCenter 5 (I doubt, that the version is significant).
While using the stonith resource for each node separately, I had no
problems, but using it in a clone resulted in failures like that one:
====
Nov 14 08:53:57 shermcl1 external/vcenter(vfencing:0)[23236]: [23257]:
ERROR: [reset shermcl2] Invalid target specified
====
where the cluster consists of virtual machines SHERMCL1, SHERMCL2 and
SHERMCL3, with their unames shermcl1, shermcl2 and shermcl3,
accordingly. shermcl2 should be fenced, but the remaining cluster
members were unable to kill that machine.
The relevant portion of the cluster configuration is here:
====
node shermcl1
node shermcl2
node shermcl3
primitive vfencing stonith:external/vcenter \
params VI_SERVER="virtualcenter.dom.ain"
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml"
HOSTLIST="shermcl1=SHERMCL1;shermcl2=SHERMCL2;shermcl3=SHERMCL3"
RESETPOWERON="0" \
op monitor interval="3600s"
clone Fencing vfencing
location l-Fencing_shermcl1 Fencing 0: shermcl1
location l-Fencing_shermcl2 Fencing 0: shermcl2
location l-Fencing_shermcl3 Fencing 0: shermcl3
====
The location statements are needed, as the cluster itself is no
symmetric.
All machines are plain openSUSE 12.2 with corosync 1.4.3 and pacemaker
1.1.6.
While running perfectly on the commandline with
====
stonith -t external/vcenter VI_SERVER="virtualcenter.dom.ain" \
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml" \
HOSTLIST="shermcl1=SHERMCL1;shermcl2=SHERMCL2;shermcl3=SHERMCL3" \
RESETPOWERON="0" -l
====
and showing the names of the three virtual machines, I found, that
called as resource inside the cluster only the first hostname until the
first "=" is visible, perhaps caused by the handover as environment
variable.
Applying the attached trivial patch to use a colon (":") instead of the
equal sign ("=") the command line test
====
stonith -t external/vcenter VI_SERVER="virtualcenter.dom.ain" \
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml" \
HOSTLIST="shermcl1:SHERMCL1;shermcl2:SHERMCL2;shermcl3:SHERMCL3" \
RESETPOWERON="0" -l
====
as well as fencing inside the cluster with
====
primitive vfencing stonith:external/vcenter \
params VI_SERVER="virtualcenter.dom.ain"
VI_CREDSTORE="/root/.vmware/credstore/vicredentials.xml"
HOSTLIST="shermcl1:SHERMCL1;shermcl2:SHERMCL2;shermcl3:SHERMCL3"
RESETPOWERON="0" \
op monitor interval="3600s"
====
succeeds.
So a question around: Is anyone using the external/vcenter with the
cloned resource successfully with the original syntax?
If so, where is my problem?
If not, the attached patch changes the syntax in the above described
way. If there is no objection can it be applied?
Greetings,
Stefan
PS: sorry for the line breaks in the code
--
Stefan Botter listreader@jsj.dyndns.org