Describe the bug
The authentication load balancing sticky session functionality does not work as expected. Even though the load balancing configuration for Deterministic Routing is set with customMetadata.apiml.lb.type set to authentication, requests are still routed in a round-robin fashion. This behavior contradicts the documentation provided at section customMetadata.apiml.lb.type -> authentication in zowe doc custom-metadata
Steps to Reproduce
- Register multiple services (at least two) to the APIML with the same
serviceID and set the load balancing type to authentication.
- Send requests through the APIML using the
apimlAuthenticationToken, and observe the server to which the requests are routed.
- Send another request using the same
apimlAuthenticationToken. Notice that the request is routed to a different server instead of the same one.
Expected behavior
After the first request, the session should stick to a specific server, and all subsequent requests from the same user should be consistently routed to that server.
Screenshots
- Screenshot of the Eureka service showing that three services are registered with the same
serviceID, i.e., BCMSYMDUMPCA31X.

- Screenshot of the API Catalog.

- Screenshots from the gateway service endpoints, showing that the load balancing type is set to
authentication
Link: https://host:port/gateway/api/v1/services
-
Service A

-
Service B

-
Service C

Version details
{
"zowe": {
"version": "3.0.0",
"buildNumber": "6219",
"commitHash": "c39ba1eb36ba7b8f3ad334a72f2e4359a5798931"
},
"apiml": {
"version": "3.0.36",
"buildNumber": "33",
"commitHash": "Unknown"
}
}
Willingness to help
Yes, I am willing to assist with debugging and reproducing issue.
Describe the bug
The authentication load balancing sticky session functionality does not work as expected. Even though the load balancing configuration for Deterministic Routing is set with
customMetadata.apiml.lb.typeset toauthentication, requests are still routed in a round-robin fashion. This behavior contradicts the documentation provided at sectioncustomMetadata.apiml.lb.type->authenticationin zowe doc custom-metadataSteps to Reproduce
serviceIDand set the load balancing type toauthentication.apimlAuthenticationToken, and observe the server to which the requests are routed.apimlAuthenticationToken. Notice that the request is routed to a different server instead of the same one.Expected behavior
After the first request, the session should stick to a specific server, and all subsequent requests from the same user should be consistently routed to that server.
Screenshots
serviceID, i.e.,BCMSYMDUMPCA31X.authenticationLink: https://host:port/gateway/api/v1/services
Service A

Service B

Service C

Version details
Willingness to help
Yes, I am willing to assist with debugging and reproducing issue.