Forum Discussion
Pool is up and member is disabled
I was using a Health Monitor as below.
monitor sap-http-55000 { defaults from http interval 30 timeout 91 dest *:55000 recv disable "Dispatcher running but no server connected!" recv "^HTTP/1.1\s(400)" send "GET /irj/portal/ HTTP/1.1 \r\nHost:x.x.xom\r\nConnection:close\r\n\r\n"
On HTTP response 400 Bad request in F5, client can access the URL and it gives successful log in and client is getting 200 OK in HTTP Watch tool in the client browser.
On HTTP 503 status " Not ready", we are getting the node member as disabled but still the pool is showing in up status (Green)
- > GET /irj/portal HTTP/1.1
User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 Host: 10.85.183.22:55000 Accept: /
< HTTP/1.1 400 Bad Request < Content-Type: text/html; charset=UTF-8 < Set-Cookie: com.sap.engine.security.authentication.original_application_url=GETDbtBda6XdWhLSsdN3u5eHbHa%2B%2BZj2qgH6yIDRiB0%2Bv%2FJmRNvbWw08T%2F7aRadd4jVNqdPIqU8ynR5gQIzXHBxNKSJiYzYRVeQ2m3KILrlttBOHCT%2BC9flBMtcH6knKQcdMhtGDRjhrzSV19XwkXLbSynvmwd4xuqz;Path=/;HttpOnly < Transfer-Encoding: chunked < Content-Language: en-US < expires: 0 < Date: Wed, 15 Apr 2015 09:50:51 GMT < Set-Cookie: PortalAlias=portal; Path=/ < Set-Cookie: saplb_*=(J2EE501080800)501080850; Version=1; Path=/ < Set-Cookie: JSESSIONID=(J2EE501080800)ID1747982450DB3c7d00ce1d0e707eadb174217dc4fee4c2f11f07End; Version=1; Domain=10.85.183.22; Path=/
-
The monitor acted by disable the node (10.85.183.22) on HTTP response 503 Not Ready, not expected as per the recv disable string "Dispatcher running but no server connected!" .
About to connect() to 10.85.183.22 port 55000 Trying 10.85.183.19... connected Connected to 10.85.183.19 (10.85.183.22) port 55000
GET /irj/portal HTTP/1.1 User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 Host: 10.85.183.22:55000 Accept: /
< HTTP/1.1 503 Not Ready < Connection: close < Server: SAP J2EE Engine
What could be the cause for this for pool is showing green and member is disabled ?
Appreciate you kind feedback on this !
2 Replies
- dragonflymr
Cirrostratus
Hi,
This is by design, not the best approach in my opinion but... You are using Receive Disable String, when it's matched monitor is setting member state to Disabled. This is not the same as Down status when there is not match for both Receive String and Receive Disable String. When member is disabled it is:
- Processing active connections until they are closed or Idle Timeout is over
- Accepting new connections for which there is persistence info related to disabled member
That is why F5 decided that Pool status should be still kept Enabled (green circle) instead of Down or Unavailable.
Personally I would like to have some indication of such state at pool level, but it is as it is right now. Would be nice to have some more advanced logic related to Disabled action initiated by monitor, like checking if member has active connections, checking if VS has enabled persistence and then accordingly mark pool Down. But I guess it could create a lot of overhead so...
You can check as well one of my posts
Member Disabled and persistence without Persistence Records
Piotr
- Antony2015
Altostratus
Piotr,
Thanks for your detailed response. I have resolved this issue by removing recv disable string and added specific alias service port.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)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