How to Generate Ingress Traffic to monitor performance using Grafana, Prometheus, Jaeger

Hello guys I apologize if there is a similar question like this asked before, this is my first time posting here and please ignore my mistakes if I make any.

As title says I am tinkering around Grafana, Prometheus and Jaeger using Istio and a simple bare boned website and deploying them on a Kubernetes Cluster / Pods in a Ubuntu VM environment. One of the things I am researching is performance capabilities. What I wanted to ask you is that what are some ways to generate traffic, consistent and complex traffic that I can monitor through the tools. I have tried just regular curling and mass curling but so many thats about it.

You probably want to use some sort of load testing tool. I’ve used https://locust.io/ back in the days with great success.

Thank you for the reply, so one thing i wanted to ask you is that I need to increase the traffic, slow it down and then when it goes up and down the traffic when it hit a threshold i want it to send a alert using the alertmanager. Would locust help doing that and also any other suggestions for what i just describe ? Thank you.

Locust is more suitable for load testing amount of users. It starts small and increment until it reaches maximum users specified.

Not sure I understand what you want to do -you want to trigger alerts just for evaluation purposes or what?

Hey @mefraimsson yes so it is for demo purpose. I have a bookinfo sample application using Istio deployed on using Kubernetes and using tools like Grafana with Jaeger and Prometheus to monitor application’s health. One of things i want to do is with traffic to the application. I want to increase requests and then maybe lower the requests and i want to monitor that from grafana and jaeger also I want the traffic to break a certain threshold which will send alerts using build in alertmanager. So far last week i did a massive load curl on the application url but it just give me a steady request i need little bit more complex, i don’t know if locust is a good idea for me. Any advice ?

Okay. If you’re able to do some programming I think you would be able to come up with something that would suit your specific use case.

Maybe there are other load testing frameworks out there that can solve your use case.

Good luck

Would you happen to have any suggestions or advice or how would you go about if you were in my position, sorry I am really new to all of this and frankly can’t make sense of how would i go about doing it.

A quick google on load testing will probably give you a huge amount of information.

This for example: https://thisdata.com/blog/load-testing-api-interfaces-with-go-and-vegeta/