-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow multi-threading for netflow #15027
Comments
Hello! I recommend posting this question in our Community Slack or Community Forums, we have a lot of talented community members there who could help answer your question more quickly. You can also learn more about Telegraf by enrolling at InfluxDB University for free! Heads up, this issue will be automatically closed after 7 days of inactivity. Thank you! |
@SirBreadc currently, the handling of the incoming packets is single-threaded in the netflow plugin so effectively you are running 16 processing threads in parallel on the telegraf side. This would boil down to a processing time of approx 1.5ms per packet which sounds about right... |
@srebhan ok cool, so I guess in this case I just need to enable smarter load balancing to try and keep each telegarf node at 20k flows per second as I've just hit the upper limit. Is there any work/features planned to multi-threaded the netflow plugin? As I feel like others might hit a similar issue as Netflow from a device with a 10G/ 40G link sending with a 1:1 sample rate will definitely send more then 20k flow per second. Would be useful if influx could handle this instead of having to implement our own smart load balancing. (note load balancing UDP seems to be very limited with NGINX... or other tools i've been looking at) |
@SirBreadc I can take a look at multi-threading, but it might take a while... |
Please direct all support questsions to slack or the forums. Thank you.
I am currently running the following telegraf configuration:
I have a Centos 7 VM spun up with 8 CPU cores, 32G RAM and another VM 16 CPU cores and 64G RAM. On each VM I am running an NGINX container which load balances my netlfow across 16 different telegarf nodes.
NGINX config:
I am noticing that each telegarf container can only take about 25K flows per second but I have some devices sending 45K flows per second. Has anyone else had a similar issue/know how I should spec my telegraf nodes? Atm I am thinking I need a better LB to distribute those flows as round robin doesn't seem to be working very well for NGINX.
NetFlow types are IPFIX, V9 and NSEL which are being ingested
The text was updated successfully, but these errors were encountered: