Forum Discussion
How to use rest api to get the "Availability" attribute value of virtual server member without knowing its pool name
- Mar 30, 2021
Hello Kartal.
To get the state of one member only using their IP, you need to use 'jq'.
# curl -sku admin https://localhost/mgmt/tm/ltm/pool?expandSubcollections=true | jq '.items[] | select(.membersReference.items[].address == "10.100.40.112") | .membersReference.items[].state' "down"
In my case, I have one pool called P-WEB112_80 which has one member node with IP 10.100.40.112.
# tmsh list ltm pool P-WEB112_80 ltm pool P-WEB112_80 { members { N-WEB112:http { address 10.100.40.112 session monitor-enabled state down } } monitor gateway_icmp }
This solves what you are requesting, but take into account that if this member is applied to more than one pool, you will see in the output "up" "up" or "down" "down" without any information about the pool, so in this case, you could use something like this.
# curl -sku admin https://localhost/mgmt/tm/ltm/pool?expandSubcollections=true | jq '.items[] | select(.membersReference.items[].address == "10.100.40.111") | .name, .membersReference.items[].state' "P-REPO_8080" "up" "P-WEB111_80" "up"
If you need to collect any other field (like 'session'), you can extend the previous expression accordingly.
Regards,
Dario.
Dear Dario, thank you for your detailed answer. I have one more small question: I am trying to reach F5 IP from outside and in the curl command I am taking curl: (35) schannel: SNI or certificate check failed: SEC_E_WRONG_PRINCIPAL (0x80090322) error. I also tried with -s but that time nothing returned. Can you give me an idea about it?
Use:
curl -k https://...
Regards,
Dario.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com