Big-IP: Sharepoint 2010 Monitor

While specing out a Sharepoint 2007 to 2010 migration I discovered that the default monitor created by the application template on our big-ip LTM load balancers does not work. In seeking a solution I ran across this gentleman’s blog with a custom external monitor but found that it didn’t really work. The solution to make it work was simple (as I explained on his blog in a comment). I went ahead and extended it to be more environment generic.
Copy this script to /user/bin/monitors/sharepoint2010.sh and chmod +x the file to use.

Here is an example health monitor configuration:

Comments (4)

  1. 11:46 AM, 06/13/2013Maverick  / Reply

    Hello,
    I’m in v10.2.4 and uses this script.
    In a lot of pool monitored by this script, i very often have in logs
    echo “EAV myNTLMscript: exceeded monitor interval, needed to kill myip:myport with PID xxx
    Is it normal?
    I don’t really understand on what that is corresponding and if it is a problem. Monitor seems be functionnal but I have a a lot of theses logs. Could you explain me it?

  2. 3:55 PM, 06/28/2012Doug Woodgate  / Reply

    Quick followup, if you plan to run the same script against multiple Virtual Servers on the same nodes, you will run into PID file problems.
    To solve, I’ve added the $HOSTHEAD variable to the PID file name to make them unique.
    For instance
    pidfile=”/var/run/basename $0.$HOSTHEAD.$IP.$PORT.pid”

  3. 9:27 AM, 05/10/2012Will  / Reply

    Excellent script, this has helped tremendously! One minor correction though – the PID file cleanup fails since STDOUT is stopping the script before cleanup occurs (your comments note this). You’ll want to move the echo to the end of the if/then section.


    # Check if the command ran successfully
    # Note that any standard output will result in the script execution being stopped
    # So do any cleanup before echoing to STDOUT
    if [ $? -eq 0 ]
    then
    rm -f $pidfile
    if [ $DEBUG -eq 1 ]; then echo "EAV
    basename $0: Succeeded for ${IP}:${PORT}" | logger -p local0.debug; fi
    echo "UP"
    else
    rm -f $pidfile
    if [ $DEBUG -eq 1 ]; then echo "EAV basename $0: Failed for ${IP}:${PORT}" | logger -p local0.debug; fi
    fi

  4. 3:45 AM, 04/10/2012Fachrul  / Reply

    it doesn’t work on version 9.3.0. Do you know why?

Leave a Reply

Pingbacks (0)

› No pingbacks yet.

Follow

Get every new post delivered to your Inbox

Join other followers