Forum Discussion
Round Robin Multiple URIs per server with multiple servers
I would like to route a client's URI request to multiple servers with multiple services.
Each server will be running multiple services that have unique URIs.
All services are using net.tcp port 808 with Client / Server authentication.
Currently we have four servers all running only one XService.
The client sends a request to our LTM,
net.tcp://LTM/XService/XService.svc/net.tcp
Using Round Robin, the LTM redirects to
net.tcp://PServer1/XService/XService.svc/net.tcp
net.tcp://PServer2/XService/XService.svc/net.tcp
net.tcp://PServer3/XService/XService.svc/net.tcp
net.tcp://PServer4/XService/XService.svc/net.tcp
I would like to increase the services on each server from 1 to 5 and add them to the pool.
The service name URI changes slightly.
The LTM would then redirect requests to
net.tcp://PServer1/XService1/XService.svc/net.tcp
net.tcp://PServer1/XService2/XService.svc/net.tcp
net.tcp://PServer1/XService3/XService.svc/net.tcp
net.tcp://PServer1/XService4/XService.svc/net.tcp
net.tcp://PServer1/XService5/XService.svc/net.tcp
net.tcp://PServer2/XService1/XService.svc/net.tcp
net.tcp://PServer2/XService2/XService.svc/net.tcp
net.tcp://PServer2/XService3/XService.svc/net.tcp
net.tcp://PServer2/XService4/XService.svc/net.tcp
net.tcp://PServer2/XService5/XService.svc/net.tcp
net.tcp://PServer3/XService1/XService.svc/net.tcp
net.tcp://PServer3/XService2/XService.svc/net.tcp
net.tcp://PServer3/XService3/XService.svc/net.tcp
net.tcp://PServer3/XService4/XService.svc/net.tcp
net.tcp://PServer3/XService5/XService.svc/net.tcp
net.tcp://PServer4/XService1/XService.svc/net.tcp
net.tcp://PServer4/XService2/XService.svc/net.tcp
net.tcp://PServer4/XService3/XService.svc/net.tcp
net.tcp://PServer4/XService4/XService.svc/net.tcp
net.tcp://PServer4/XService5/XService.svc/net.tcp
Can some help me with the iRules to make this work?
7 Replies
- Kevin_Stewart
Employee
Are these 5 different sets of services, based on URI, that might go into 5 different pools, or do you need to modify the URI based on the pool member selected? - jo001wr_130455
Nimbostratus
Actual both are desired.
Initially, I would like to modify the URI based on the pool member selected.
Long term, I may have the need for multiple pools. - Kevin_Stewart
Employee
I'm assuming that PServer1 is a server with a single IP address in a pool and that XService1 through 5 are simply 5 separate services running under different URIs of the same host. If that's true, then I suppose the next questions are:
1) How do clients request the services (by URI specifically), or
2) Do you need to simply, as the topic line suggests, round robin through the services (the client doesn't specify a service URI)? - jo001wr_130455
Nimbostratus
2) Round robin through the services, the client does not specify a service URI and does not care which service processes the request. - Kevin_Stewart
Employee
One more question. Is this HTTP-based on the server side? - jo001wr_130455
Nimbostratus
Each service on each server has a keep alive ping HTTP URI and a target service Net.Tcp URI.
i.e.
http://PServer1/Ping/XService1
http://PServer1/Ping/XService2
http://PServer1/Ping/XService3
http://PServer1/Ping/XService4
http://PServer1/Ping/XService5
http://PServer2/Ping/XService1
http://PServer2/Ping/XService2
http://PServer2/Ping/XService3
http://PServer2/Ping/XService4
http://PServer2/Ping/XService5
All of the client requests are net.tcp only. - jo001wr_130455
Nimbostratus
Is this possible with iRules or is this beyond the capabilities of iRules?
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