[ClusterLabs] Strange behavior every time I set VirtualDomain attribute
Milos Buncic
htchak19 at gmail.com
Thu Jun 25 21:03:56 UTC 2015
Hi there,
Every time I run (CentOS 6.6)
pcs resource update testvm1 migration_transport=ssh
or
pcs resource update testvm1 migration_transport=
or when I try to set any VirtualDomain parameter, graceful shutdown is
initiated!
Jun 25 21:59:56 node1 VirtualDomain(testvm1)[10876]: INFO: Issuing graceful
shutdown request for domain testvm1.
Can someone please explain me why this is happening?
I'm using VirtualDomain resource agent downloaded from github
https://github.com/ClusterLabs/resource-agents/blob/master/heartbeat/VirtualDomain
VirtualDomain_Stop() {
local i
local status
local shutdown_timeout
local needshutdown=1
VirtualDomain_Status
status=$?
case $status in
$OCF_SUCCESS)
if ocf_is_true $OCF_RESKEY_force_stop; then
# if force stop, don't bother attempting
graceful shutdown.
force_stop
return $?
fi
ocf_log info "Issuing graceful shutdown request for
domain ${DOMAIN_NAME}."
if [ -n "$OCF_RESKEY_snapshot" ]; then
virsh save $DOMAIN_NAME
"$OCF_RESKEY_snapshot/${DOMAIN_NAME}.state"
if [ $? -eq 0 ]; then
needshutdown=0
else
ocf_log error "Failed to save
snapshot state of ${DOMAIN_NAME} on stop"
fi
fi
# save config if needed
if ocf_is_true "$OCF_RESKEY_save_config_on_stop";
then
save_config
fi
# issue the shutdown if save state didn't shutdown
for us
if [ $needshutdown -eq 1 ]; then
# Issue a graceful shutdown request
*virsh $VIRSH_OPTIONS shutdown
${DOMAIN_NAME}*
fi
# The "shutdown_timeout" we use here is the
operation
# timeout specified in the CIB, minus 5 seconds
shutdown_timeout=$(( $NOW +
($OCF_RESKEY_CRM_meta_timeout/1000) -5 ))
# Loop on status until we reach $shutdown_timeout
while [ $NOW -lt $shutdown_timeout ]; do
VirtualDomain_Status
status=$?
case $status in
$OCF_NOT_RUNNING)
# This was a graceful
shutdown.
return $OCF_SUCCESS
;;
$OCF_SUCCESS)
# Domain is still running,
keep
# waiting (until
shutdown_timeout
# expires)
sleep 1
;;
*)
# Something went wrong.
Bail out and
# resort to forced stop
(destroy).
break;
esac
NOW=$(date +%s)
done
;;
$OCF_NOT_RUNNING)
ocf_log info "Domain $DOMAIN_NAME already stopped."
return $OCF_SUCCESS
esac
# OK. Now if the above graceful shutdown hasn't worked, kill
# off the domain with destroy. If that too does not work,
# have the LRM time us out.
force_stop
}
Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clusterlabs.org/pipermail/users/attachments/20150625/02058cde/attachment-0003.html>
More information about the Users
mailing list