On 08/24/2012 10:47 AM, Nathan Bird wrote:
I'm trying to setup an external/libvirt stonith fencing
thingiemadoodle but ran into an error
My pacemaker configuration is (read back out it looks the same):
primitive p-fence-om0101 stonith:external/libvirt \
params hostlist="proxy1 mysql1" \
hypervisor_uri="qemu+ssh://root@om01/system?keyfile=/root/.ssh/om01" \
op monitor interval="60"
#there's also a location rule that is working fine
If i just try to connect with libvirt that uri is correct. When the
stonith script runs though it is getting an incomplete value
"qemu+ssh://root@om01/system?keyfile" observed via log messages.
Apparently the equal symbol '=' is causing a problem for the parameter
passing somewhere.
When I read the external/libvirt plugin's code. It appears to rely on
the environment variable '$hypervisor_uri' and the log message
printing of this indicates that is invalid.
I don't know where to look for who is filling that environment value;
any suggestions?
I worked around this by copying the resource file into a new one named
after the hypervisor I'm trying to talk to and embedding the correct uri
in the file.
Additionally I did a bit more bash quoting in the file, e.g.:
- out=$($VIRSH -c $hypervisor_uri start $domain_id 2>&1)
+ out=$($VIRSH -c "$hypervisor_uri" start $domain_id 2>&1)
Though I'm confident that isn't the only issue as even with those quotes
nothing works-- this script has the wrong value in that variable before
we get to those lines.
_______________________________________________
Pacemaker mailing list: Pacemaker@oss.clusterlabs.org
http://oss.clusterlabs.org/mailman/listinfo/pacemaker
Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org