Skip to content

Authentication Load Balancing Sticky Session Not Functioning as Expected with Deterministic Routing #3952

Open
@sudeep0210

Description

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

  1. Register multiple services (at least two) to the APIML with the same serviceID and set the load balancing type to authentication.
  2. Send requests through the APIML using the apimlAuthenticationToken, and observe the server to which the requests are routed.
  3. 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

  1. Screenshot of the Eureka service showing that three services are registered with the same serviceID, i.e., BCMSYMDUMPCA31X.
    Image
  2. Screenshot of the API Catalog.
    Image
  3. 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
    Image

  • Service B
    Image

  • Service C
    Image

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions