On 8/14/07, Francesco Ciocchetti <[EMAIL PROTECTED]> wrote:
> I Solved my problem.
>
> It was residing in ManageVE OCF resource agent.
>
> Actually the problem is in this check of the monitor function :
>
> if [[ $veexists != "exist" ]]; then
> ocf_log err "vzctl status $VEID returned: $VEID does not exist."
> return $OCF_ERR_INSTALLED
> fi
>
> The problem is that in a configuration like mine where each VE has its
> files on a separate DRBD device , to have an active/active VEs setup,
> this kind of check is misleading to HB. This is because of
>
> [EMAIL PROTECTED] ~]# vzctl status 101
> VEID 101 deleted unmounted down
>
> actually VZCTL does not see the VE Files and reports the VE as deleted.
> I did not found a straight way to solve the problem cause vzctl reports
> as deleted any VEID for wich it does not find the files without checking
> for the presence of the VE config file.
>
> At the moment i decided to "rely on myself" and simply disabled the
> return in that TEST ... i will look for a better way to achieve the same
> beahviour.
if you have the time, could you try the following patch (before I commit it)?
diff -r d76618cb7262 resources/OCF/ManageVE
--- a/resources/OCF/ManageVE Wed Aug 15 09:21:40 2007 +0200
+++ b/resources/OCF/ManageVE Wed Aug 15 10:45:52 2007 +0200
@@ -111,6 +111,12 @@ start_ve()
{
declare -i retcode
+ veexists=`$VZCTL status $VEID 2>/dev/null | $AWK '{print $3}'`
+ if [[ $veexists != "exist" ]]; then
+ ocf_log err "vzctl status $VEID returned: $VEID does not exist."
+ return $OCF_ERR_INSTALLED
+ fi
+
status_ve
retcode=$?
@@ -178,7 +184,7 @@ status_ve()
if [[ $veexists != "exist" ]]; then
ocf_log err "vzctl status $VEID returned: $VEID does not exist."
- return $OCF_ERR_INSTALLED
+ return $OCF_NOT_RUNNING
fi
case "$vestatus" in
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems