active monitors
13 TopicsHealth check on multiple ports
We have Galera mysql cluster which is running behind HAProxy load-balancer, we have migrating to haproxy to F5. Currently this is what i have in HAProxy Codebackend galera-back mode tcp balance leastconn timeout server 5000s stick store-request src stick-table type ip size 256k expire 30m option tcplog option httpchk HEAD / HTTP/1.0\r\nUser-agent:\ osa-haproxy-healthcheck server ostack-infra-02_galera_container-fa5d9e98 172.28.1.216:3306 check port 9200 inter 12000 rise 1 fall 1 server ostack-infra-03_galera_container-eaacd880 172.28.1.236:3306 check port 9200 inter 12000 rise 2 fall 2 backup server ostack-infra-01_galera_container-6c126d29 172.28.1.183:3306 check port 9200 inter 12000 rise 2 fall 2 backup 01, 02 & 03 node running in cluster and haproxy doing 3306 monitor along with 9200 monitor (9200 check if node is in SYNC or not) My requirement is how do i tell F5 monitor two port 3306 & 9200 and either one if fail take that node out from pool?543Views0likes1Commenttmsh test-monitor : external executable not found
Hi, I'm trying to use the "test-monitor" function in tmsh but every time I use it I get the same answer: root@(lb07067)(cfg-sync In Sync)(Active)(/Common)(tmos) test-monitor http address 10.221.62.23 port 8180 can't run 'http' monitor manually: external executable not found (http) Even on the basic http default monitor. Any clue ? Thanks372Views0likes1CommentInband Monitor where is "Check until up" ?
Hi there I try to implement passive monitoring with a inband monitor, maybe in combination of an active http monitor. For this I checked the v12.1.3 manual of inband monitoring here: Inband monitor settings It says: "If you specify a value of 0 (zero), once the inband monitor marks a pool member down, that pool member is not marked up without outside intervention, either by explicitly marking the pool member up, or by using by using the Check Until Up setting in any other monitor (except another Inband monitor) configured on the same pool member. (In this case, the other monitor is known as the active monitor, and the Inband monitor is known as the passive monitor." So where is this "Check until up" setting? I cannot find it. Does someone have an example of a combined active-passive monitoring config available? Thanks, Peter365Views0likes2CommentsInterval and Timeout set to two seconds on HTTP/HTTPS health monitor
Hi all, I currently have a need from upper management to shorten the length of time a user will need to wait if they're connected to our site and tomcat goes down on one of our backend servers that they're connected to. In order to achieve a wait time of no longer than 10 seconds before their web page is loaded on another server in the pool we set the interval and timeout values on the health monitor to 2 seconds each. Originally I had it set to 5 and 16, then 3 and 10, but that wasn't giving us a low enough wait time before a webpage comes back. So, testing our values at 2 and 2 gave us the results we wanted but I want to make sure there are no "gotchas" as far as on the F5. There's no reason why one of our servers wouldn't be able to respond back within 2 seconds and sending that check every 2 seconds isn't a concern as far as network load. The only thing I can think of that might be a concern is the ability of the server to respond to the string below. As far as I know that string is only making sure http and https are responsive, it's not asking for a webpage or something that would take more time/resources. Have any of you had success/issues with setting a monitor interval and timeout to such a low value and what effects did you see? For reference we're running version 12.1.0 and the monitor string is below: GET / HTTPS/1.1\r\nHost: \r\nConnection: Close\r\n\r\n HTTP/1.1\r\nHost: \r\nConnection: Close\r\n\r\n845Views0likes3CommentsCPU monitor
Problem this snippet solves: Pull CPU utilization and use it with an external monitor How to use this snippet: I need to start by giving credit to the original post here.All I did was modify that script to match what I need it for. This is the first time I am using an external monitor and it was great to make it work so I thought i should share as someone else might need it. There is probably a better way to do this. If so please share. The original script was tackling CPU and memory utilization as this one is only looking at CPU. And in this particular case, I am taking in account all CPUs (2 of them) on the Box. You'll have to start with creating a Read Only SNMP Community String that will be use to pull this Data. Import the script from System/File Management/External Monitor Program File List Create a new External monitor Local Traffic/Monitor and Type External Select your previously uploaded script from External program For Variables, enter DEBUG for name and Value will be the value you chose for "DEB" in the script. Then you can apply your monitor to the node or pool you choose to. Code : #!/bin/sh # IPv6/IPv4 compatibility prefix (LTM passes addresses in IPv6 format) IP=`echo ${1} | sed 's/::ffff://'` PIDFILE="/var/run/`basename ${0}`.${IP}_${PORT}.pid" # kill of the last instance of this monitor if hung and log current pid if [ -f $PIDFILE ] then kill -9 `cat $PIDFILE` > /dev/null 2>&1 fi echo "$$" > $PIDFILE # send request & check for expected response #Replace with your string that need read Only access to the server snmpwalk -v 2c -c ${IP} .1.3.6.1.2.1.25.3.3.1.2.1 > /var/tmp/monitor/cpu1_${IP}.log snmpwalk -v 2c -c ${IP} .1.3.6.1.2.1.25.3.3.1.2.2 > /var/tmp/monitor/cpu2_${IP}.log # mark node UP if expected response was received cpu1=`cat /var/tmp/monitor/cpu1_${IP}.log | cut -f4 -d" "` cpu2=`cat /var/tmp/monitor/cpu2_${IP}.log | cut -f4 -d" "` #Check the CPU threshold and make a decision on it # Replace with your desire CPU threshold # Replace with a number outside the range (0-100). This will allow the threshold to be caught and sent to monitor if [ "$cpu1" -le " " -a "$cpu2" -le " " ]; then echo "UP" rm -f $PIDFILE elif [ "$DEBUG" -eq " " ]; then echo "The threshold CPU has reached $cpu1 and $cpu2 for $IP - DOWN" | logger -p local0.debug rm -f $PIDFILE fi Tested this on version: 11.6379Views0likes0CommentsTroubleshooting monitor issue
Our QuickBuild Corp environment is fronted by an internal DNS entry (xxxxx.xxxxxxx.com) which points to the F5 virtual address 10.xx.xx.xx. This virtual server integrates with the pool xxxxx_xxxxx_p_https_pool whose members should respond to 443 health monitors and traffic. However, the current pool member MACHINE_NAME (10.xx.xx.xx) will only respond to port 80 and ICMP monitors. All local tests utilizing local hosts file modifications on MACHINE_NAME for xxxx.xxxxxx.com against HTTPS were successful, so there appears to be an issue routing HTTPS traffic between the NPCI VCMP and MACHINE_NAME. We have confirmed that telnet from the VCMP to the node/pool member via 443 is allowed, so we’re in need of remediation assistance: a. Determine causes of HTTPS/443 health monitor down status for xxxxx_xxxxx_p_https_pool b. Determine causes of inability for the F5 to pass traffic to a 443 pool members even when leveraging a high level health monitor such as icmp – To rule out health monitor issues we enable icmp as the only health monitor and received an UP status, but the 443 port designation for the pool member wouldn’t render site content.268Views0likes2CommentsMonitors for Citrix XML Process
I am new to the F5 appliance and working on my documentation of where to find things and I noticed that in our XML monitor it states encoding=*cleartext\">xxxxx. We really don't want this to be sent in clear text and I need some direction on how to encrypt this password. Any assistance would be greatly appreciated.366Views0likes5CommentsOracle Access Manager Monitor configuration
Hi Everyone Did anybody experience configuration of Oracle access manager (OAM) ? I have to config monitor of this server. But we have no document of this application yet. We have a problem with how to monitor OAM webserver because Login page has dynamic uri, so we can't specific send and receive string in monitor. Thank you very much634Views0likes6CommentsHow to append a monitor to existing monitors
Hi All, I have created a monitor using below java code.But when I run this code all the existing monitors are removed and the monitor given in the code is added to the pool.Could anyone tell me how to append a new monitor to a pool. String[] monitors = new String[1]; monitors[0] = "Test_Template1"; iControl.LocalLBMonitorRule rule = new iControl.LocalLBMonitorRule(); rule.setQuorum(0L); rule.setType(iControl.LocalLBMonitorRuleType.MONITOR_RULE_TYPE_SINGLE); rule.setMonitor_templates(monitors); iControl.LocalLBPoolMonitorAssociation[] monitor_associations = new iControl.LocalLBPoolMonitorAssociation[1]; monitor_associations[0] = new iControl.LocalLBPoolMonitorAssociation(); monitor_associations[0].setMonitor_rule(rule); monitor_associations[0].setPool_name(poolname); m_interfaces.getLocalLBPool().set_monitor_association(monitor_associations);199Views0likes1Comment