On Thu, Feb 28, 2008 at 9:53 AM, Dejan Muhamedagic <[EMAIL PROTECTED]> wrote:
> Hi,
>
>
> On Thu, Feb 28, 2008 at 03:47:04PM +0100, Dominik Klein wrote:
> >> thanky you for the script and for pointing to the right direction.
> >> May I change the format of the output? (Yes, I also saw the thing with
> >> wrong headings)
> >
> > Here's a newer version. It can now read resource-stickiness and
> > resource_stickiness (notice the - and _). Both is possible, but up to now,
> > only one was looked for.
> > Also fixed a problem with the headings being mixed up.
>
> I was wondering if you could do it the other way around, i.e. one
> gives failover requirements such as after third failure move to
> the other node and the script calculates the various stickiness
> values. How about that?
And I was wondering why it can't be done on CRM level? It would be
great to be able to define a max number of allowed failures and let
CRM to calculate all necessary scores.
>
> Thanks,
>
> Dejan
>
>
>
> > I know this thing produces a lot of logs, but at least it does display the
> > scores, hu? :)
> >
> > #!/bin/bash
> >
> > # Feb 2008, Dominik Klein
> > # Display scores of Linux-HA resources
> >
> > # Known issues:
> > # * cannot get resource[_failure]_stickiness values for master/slave and
> > clone resources
> > # if those values are configured as meta attributes of the master/slave
> > or clone resource
> > # instead of as meta attributes of the encapsulated primitive
> >
> > if [ `crmadmin -D | cut -d' ' -f4` != `uname -n|tr "[:upper:]" "[:lower:]"`
> > ]
> > then echo "Warning: Script running not on DC. Might be slow(!)"
> > fi
> >
> > # Heading
> > printf "%-16s%-16s%-16s%-16s%-16s%-16s\n" "Resource" "Score" "Node"
> > "Stickiness" "Failcount" "Failure-Stickiness"
> >
> > 2>&1 ptest -LVVVVVVV|grep -E "assign_node|rsc_location"|grep -w -E "\
> > [-]{0,1}[0-9]*$"|while read line
> > do
> > node=`echo $line|cut -d ' ' -f 8|cut -d ':' -f 1`
> > res=`echo $line|cut -d ' ' -f 6|tr -d ","`
> > score=`echo $line|cut -d ' ' -f 9|sed 's/1000000/INFINITY/g'`
> >
> > # get meta attribute resource_stickiness
> > if crm_resource -g resource_stickiness -r $res --meta &>/dev/null
> > then
> > stickiness=`crm_resource -g resource_stickiness -r $res
> > --meta 2>/dev/null`
> > else if crm_resource -g resource-stickiness -r $res --meta
> > &>/dev/null
> > then
> > stickiness=`crm_resource -g resource-stickiness -r
> > $res --meta 2>/dev/null`
> > # if that doesnt exist, get syntax like <primitive
> > resource-stickiness="100"
> > else if ! stickiness=`crm_resource -x -r $res
> > 2>/dev/null | grep -E "<master|<primitive|<clone" | grep -o
> > "resource[_-]stickiness=\"[0-9]*\"" | cut -d '"' -f 2 | grep -v "^$"`
> > then
> > # if no resource-specific
> > stickiness is confiugured, grep the default value
> > stickiness=`cibadmin -Q -o
> > crm_config 2>/dev/null|grep "default[_-]resource[_-]stickiness"|grep -o -E
> > 'value ?= ?"[^ ]*"'|cut -d '"' -f 2|grep -v "^$"`
> > fi
> > fi
> > fi
> >
> > # get meta attribute resource_failure_stickiness
> > if crm_resource -g resource_failure_stickiness -r $res --meta
> > &>/dev/null
> > then
> > failurestickiness=`crm_resource -g
> > resource_failure_stickiness -r $res --meta 2>/dev/null`
> > else if crm_resource -g resource-failure-stickiness -r $res
> > --meta &>/dev/null
> > then
> > failurestickiness=`crm_resource -g
> > resource-failure-stickiness -r $res --meta 2>/dev/null`
> > else
> > # if that doesnt exist, get the default
> > value
> > failurestickiness=`cibadmin -Q -o
> > crm_config 2>/dev/null|grep "resource[_-]failure[_-]stickiness"|grep -o -E
> > 'value ?= ?"[^ ]*"'|cut -d '"' -f 2|grep -v "^$"`
> > fi
> > fi
> >
> > failcount=`crm_failcount -G -r $res -U $node 2>/dev/null|grep -o -E
> > 'value ?= ?[0-9]*'|cut -d '=' -f 2|grep -v "^$"`
> >
> > printf "%-16s%-16s%-16s%-16s%-16s%-16s\n" $res $score $node
> > $stickiness $failcount $failurestickiness
> > done|sort -k 1
> > _______________________________________________
> > Linux-HA mailing list
> > [email protected]
> > http://lists.linux-ha.org/mailman/listinfo/linux-ha
> > See also: http://linux-ha.org/ReportingProblems
> _______________________________________________
> Linux-HA mailing list
> [email protected]
> http://lists.linux-ha.org/mailman/listinfo/linux-ha
> See also: http://linux-ha.org/ReportingProblems
>
--
Serge Dubrouski.
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems