members
3 TopicsPool Member Status and how QTYPE works?
Hello, i wrote a small Irule for show the Pool Member status as json. when HTTP_REQUEST { if { [string tolower [HTTP::host]] eq "f5_status.XXXX.com" } { #update Poollist, enter Pool names set poolname "P_X_http80 P_XX_http80 P_XXX_https6443" #update RootPartition for replacement set stringmap "\"%1234 \" \"\:\"" set poolnummer 1 set json "\{\"status\"\:\{\"time\"\:\"[clock format [clock seconds] -format "%Y-%b-%dT%H:%M:%S %Z"]\"," foreach pool_n $poolname { set list_all "" set list_up "" set list_down "" set member "" set member_l "" foreach member [members -list $pool_n ] { set member_l "[string map $stringmap $member]" append list_all "\"$member_l\"," } set member "" set member_l "" foreach member [members -list $pool_n ] { if { !([active_members -list $pool_n ] contains $member) }{ set member_l "[string map $stringmap $member]" append list_down "\"$member_l\"," } } set member "" set member_l "" foreach member [active_members -list $pool_n ] { set member_l "[string map $stringmap $member]" append list_up "\"$member_l\"," } set count_a [active_members $pool_n] set count [members $pool_n] set count_d [expr {$count} - {$count_a} ] append json "\"pool$poolnummer\"\:\{\"name\"\:\"$pool_n\",\"member count active\"\:$count_a,\"member count down\"\:$count_d,\"member count all\"\:$count,\"member active\"\:\[[string trimright $list_up ","]\],\"member down\"\:\[[string trimright $list_down ","]\],\"member all\"\:\[[string trimright $list_all ","]\]\}," incr poolnummer } set json [string trimright $json ","] append json "\}\}" HTTP::respond 200 content "$json" "Content-Type" "application/json" } } But i found that new implementation #v12 change to include QTYPE members [-list] [QTYPE] <poolName> [blue green yellow red gray] https://clouddocs.f5.com/api/irules/members.html or https://clouddocs.f5.com/api/irules/active_members.html Anyone know how this work or have a working irule with this "qtype"? I would like to see a example!405Views0likes1CommentError when I try to assign a member to a Pool
When I execute this piece of code: pool = bigip.tm.ltm.pools.pool.create(name="Pool Name", partition='Common', description="First Pool", monitor="/Common/" + monitor.name) Create the Members node = pool.members_s.members.create(name="Node name", address=ip_address, partition='Common', description='First Node', monitor="/Common/icmp_tid") UpdatePool pool.update() I get the next error: Text: '{"code":400,"message":"01070587:7: The requested monitor rule (/Common/icmp_tid on pool ) can only be applied to node addresses. Can anyone explain what is the issue? When I try to create the node itself with th command mgmt.tm.ltm.nodes.node.create() and attach the monitor to it I don't have any problem. But when I create it as a member of an existing pool the error appears. Is there any way this can work or is there any way of assigning an existing node as a member of an pool? Thanks485Views0likes1Comment