How to setup load test

New to Grafana. I have download Grafana and successfully setup demo dashboard on a local Linux machine.

How can I setup ‘controlled stress loading’? That is, to stimulate traffic loading coming from nnn users while monitoring CPU usage with Linux top or htop?

I need more-formal test data to determine and buy suitably sized CPU. I can hit the Refresh button as fast as I could (but this is not an accurate test) and see CPU usage jump to 15% on a small test machine.

Many thanks

1 Like

To set up controlled stress loading in Grafana and monitor CPU usage, you can use a load testing tool like Apache JMeter or Locust to simulate traffic from multiple users. First, configure one of these tools to generate traffic from a set number of virtual users. Then, set up Grafana to collect system performance metrics (such as CPU usage) from your Linux machine, using Prometheus or node_exporter. Once your load test is running, monitor CPU usage with Grafana or tools like htop/top to see how the system performs under stress. This will provide more accurate test data, helping you determine the right CPU size for your needs.

1 Like
2 Likes

Or use grafana API with a scripting language such as python

1 Like

Many thanks.

Started reading documentations.

Sure this is not accurate nor scientific, may I have a rough ballpark “number”?

For a “typical” (this is not accurate) dashboard and auto refresh at 1 minute, how many users can Grafana runs on a small Linux machine.

Debian Linux version 12 CLI mode, Intel i5-13400 CPU (4.7GHz, 45 watts TDP, Turob 140 watts, 6 performance cores, 4 essential cores, 16 threads), Samsung 980 PRO NVMe SSD (6000MB/second read), 32GB RAM (3200 MT/s or 3200MHz, DDR4)

I wonder if 32GB RAM is useful. My first-timer setup, Grafana and CLI OS together uses only 400MB RAM

I “believe” above machine may be (one or a few) tens of times faster than my present setup using Raspberry Pi 5, Raspberry Pi OS Lite (CLI no desktop), 8GB RAM (400MB used), Samsung 980 PRO NVMe SSD, PCIe 2, 1 lane, hdparm read speed 400 MB/second.

Any rough idea before I go out and buy the planned machine? Many thanks

ball park number for what?

1 Like

Many thanks. Sorry I was not clear.

My question was how many refresh per second that the planned hardware can serve.

For example, if the hardware can do, says, 10 refresh per second. It will be 600 refreshes per minutes. That will be 600 users at 1 minute with auto refresh setting on top right hand corner.

Sorry this must have been asked before. I search this link and it was moved. https://grafana.com/docs/grafana/latest/administration/metrics/#internal-metrics

Where can I see statistics on Grafana server on how many dashboard web page refreshes it puts out per second?

For a quick rough “number”, I can have people on multiple machines clicking (mouse) refresh button on web page and should be able to generate may be 10 mouse clicks per seconds and can see on top/htop on CPU busy percentage.

1 Like

Instead of people clicking (not scalable) use k6 as suggested by @jangaraj and hit the dashboard endpoints

With Raspberry Pi 5, this installation instructions and the github say it is not for arm64.
https://grafana.com/docs/k6/latest/set-up/install-k6/

This made it successfully on RPi 5 hardware
https://mattbrailsford.dev/installing-k6-on-a-raspberry-pi

1 Like