Forum Discussion
sectoroverload2
Nimbostratus
Mar 15, 2010clone web requests for load stress testing
I'm trying to setup two pools in my F5. I have a Production pool with 7 servers and a Test pool with 3 servers. I'm trying to setup an iRule to clone the web requests from Prod > Test but am not having any luck.
The "clone" keyword is cloning the TCP traffic which doesn't change the destination IP, but i need to clone the GET and POST requests.
Does anybody have an idea or solution?
15 Replies
- The_Bhattman
Nimbostratus
Hi Sectoroverload2k,
if you go to ask.f5.com (Click here), contains an Solution Guide for Clone pools and mirroring.
I hope this helps
Bhattman - hoolio
Cirrostratus
sectoroverload2k, can you clarify why you're trying to duplicate the traffic to a test pool?
As Bhattman suggests, SOL8573 notes that you can clone the traffic after the destination address has been translated. However, LTM won't clone the traffic with the destination address translated to the server in the clone pool--it will get the MAC address of the clone pool member and send the request to that server with the destination address of the primary pool of the VIP.
In general, the clone pool config or iRule option will only work for IDS type devices. It will not work to duplicate traffic for a layer 7 service like a web app which needs to interact with the client to establish a TCP connection or complete an HTTP transaction.
Aaron - sectoroverload2
Nimbostratus
Thanks. I've seen other documents like that, but I'm still having trouble getting my web server to process the requests.
The problem is that the cloned servers are being sent TCP packets destined for the original pool. I need to somehow find a way to change the destination IP so that my test environment will actually process the requests, run the web code, alter the test database, etc. The test environment's servers are ignoring the packets because of the destination IP. - sectoroverload2
Nimbostratus
@hoolio
We built a new database server and would like to put it under a production stress test without actually breaking production. I was hoping that the "clone" feature in the f5 or iRules would be able to clone the HTTP requests to the test environment (effectively forcing them to put the production load against the new database server) - hoolio
Cirrostratus
There isn't really a way to duplicate the layer 7 traffic on LTM. The best alternative I can think of would be to generate the test traffic either manually or scripted without trying to use the production traffic through LTM.
Aaron - sectoroverload2
Nimbostratus
I tried doing some funky tricks with the firewalls on the test web servers to rewrite the source and destination IPs, but i got mixed results.
Thanks for everybody's input! - L4L7_53191
Nimbostratus
There's no good way to do real-time replay like this, which makes perfect sense when you're dealing with client and server TCP/IP stacks. Your best bet is to clone that traffic off, then replay it afterward. I believe Tea Leaf has this type of functionality, and I'm sure there are others out there as well.
One thing to note: it's really, really hard to effectively 'replay' at layer 4, because its behavior is very much tied to the actual client and server TCP/IP stacks at that point in time. For example, you may be throttling windows, etc. because other traffic is occupying buffers, bandwidth is an issue, or whatever.
Just something to think about. Replaying Layer 7 isn't that big a deal at all.
-Matt - I've heard a lil about tea leaf, but never talked to anyone who has used them... Have you? does it work? Which product are you referencing?
thanks! - L4L7_53191
Nimbostratus
I know that it does work, but I've not used it personally. I'm not sure about the specific product (maybe cxResults?).
-Matt - hoolio
Cirrostratus
Is anyone here still interested in cloning web app traffic to one or more other servers? If so, I have an iRule that I'd like to have you try. I've done initial testing in a lab, but would like more diverse testing. Email me for details: aaron at f5 dot com.
Thanks, Aaron
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* 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
Discover DevCentral Connects