Asterisk Limitation and Setup Challanges

I’m facing a significant issue with my Asterisk setup and could use your expertise. Here’s the situation:

I’m running Asterisk in a Kubernetes environment with a dedicated setup of 20 vCPUs and 78 GB of RAM. Despite this, I encounter performance issues when handling 200 concurrent calls at a rate of 50 calls per second, especially when all calls are being recorded. The system slows down and becomes unresponsive.

The calls are routed to another server with similar configuration, where they are answered, and background audio is played for 30 seconds. However, not all calls are successfully dialed, and this is causing a major bottleneck.

My main goals are to maximize Calls Per Second (CPS) without loss of call audio and to handle the maximum number of channels efficiently. I would like to understand if there might be any misconfigurations or if there’s anything I’m doing wrong. Additionally, I want to ensure that Asterisk utilizes the full potential of the processor resources available.

Could you provide any insights or recommendations on how to address these performance issues and optimize my setup?

Thank you for your time and assistance.

are you running it as one container or as multiple
try to make a designe where you can spred the load out to multiple containers

Even i want to setup Asterisk 18 into kubernetes and make a call (dialplan) from java code using AGIAction and ExecCommand, can someone shed light on it.

Maybe set aside 20 GB of that RAM for a fast-access tmpfs filesystem ie. ramdisk ? Then either mount that as /var/spool/asterisk/monitor/ or change the recording path to match your new mount point, and finally configure some cronjob rsync jobs from short-term to longer-term storage (because contents of ramdisk disappear when you reboot.)

There’s also some good tips in the Asterisk documentation regarding Performance Tuning.

One way to improve tuning is to respond to ERROR, WARNING appearing on console while traffic increases. Some of these messages directly point to a setting limiting scaling.

With a much smaller VM (16 GB of RAM ?) the max I could get was about 800 simulateneous calls with 50 CPS.
The limiting factor was CPS.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.