Zhenghui.Xie at Sun.COM ??:
> Hi, All
>
> Several days ago, I sent out an email 
> (http://mail.opensolaris.org/pipermail/ilb-dev/2009-February/000116.html) 
> to resolve the remaining open issues in health check design. After 
> reading the feedback from Peter and discussing with iteam people, here 
> is a writeup that proposes some solution.
>
> 1. health check probes:
> ilb will provide three build-in health check probes, ping, tcp and udp.
> 1a) For ping, use /usr/sbin/ping (ping(1M)) to send ICMP request to 
> host(s).
> 1b) For tcp, ilb delivers /usr/lib/ilb/tcp_query_probe, check whether 
> open socket on the destination/port will success.
> 1c) For udp, ilb defaultly just ping the destination (unless somebody 
> can suggest good approach to send udp probe). If user wants more 
> specific tests, user needs to provide their own test script.
>
> 2. show health check results:
> ilbadm list-servergroup will show the health of each server. a sample 
> output of "ilbadm list-servergroup" will look like:
> ------------------- sample --------------------------------------
> #ilbadm list-servergroup
> SG-NAME RULE-NAME SERVER-IP PORT SERVER-STATE FLAGS
> sg-123 rule-abc 1.1.1.1 80 alive xxxx
> sg-123 rule-abc 1.1.1.2 80 dead xxxx
> sg-123 rule-abc 1.1.1.3 80 disabled xxxx
> sg-456 rule-def 2.1.1.1 21 alive xxxx
> sg-456 rule-def 2.1.1.2 21 alive xxxx
> ---------------- end of sample ---------------------------------
>
> list-servergroup provides "-v" to output more detailed server health 
> information, sample output:
> -----------------sample------------------------------------------
> SG-NAME: sg-123
> RULE-NAME: rule-abc
> SERVER-IP PORT STATE METHOD LAST-RESULT LAST-TEST-TIME NEXT-TEST-TIME
> 1.1.1.1 80 alive TCP 3/5* 11:34:30 11:39:30
> 1.1.1.2 80 dead TCP 0/5 11:34:31 11:39:31
> 1.1.1.3 80 disabled TCP 0/0** 0:0:0 0:0:0
> ----------------- end of sample
> * this means 3 out of 5 probes succeeded. The server will only be 
> declared as dead when all probes fail.
> ** no hc on disabled server.
>
> 3. does one rule need more than one health check?
> For phase 1, we just deliver one health check per rule. It will work 
> like the following:
What will the output of 'list-servergroup'|'list-servergroup -v' be when 
there is no health check?

Thanks,
- Grace
> if user didn't specify any hc when create the rule, no health check 
> will be performed.
> if user specify "ping" as the hc method, ping will be performed. 
> Server will be declared dead if ping failed.
> if user specify "tcp" "udp" or provide their own test script, first 
> perform a default ping. If ping failed, no further try, server will be 
> declared as dead. If ping succeed, next try tcp probe or user test 
> script, server will be declared dead if test failed.
>
> "create-healthcheck" provides a '-n' option to turn off the default 
> ping probe, allow user to specify "thank you but don't perform the 
> default ping for me"
>
> Any suggestions, objections, rotten tomatoes/fresh eggs? Please send 
> your comments, if any, by end of this week.
>
> -Jan
> _______________________________________________
> ilb-dev mailing list
> ilb-dev at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/ilb-dev


Reply via email to