Sean Pimental September 25th, 2012
In our training classes, we’re frequently asked to recommend hardware specs for an Asterisk server in a given setting. We welcome the “mini consulting” opportunities we get by interacting with students in live training classes, but this particular question continually challenges us. Unfortunately, there’s no “magic formula” we can use or recommend to answer the question easily. But the fact that there is no simple answer doesn’t mean there’s no answer at all. Keep reading for a rundown of the various factors we consider when assessing just how beefy the hardware running your Asterisk system needs to be.
As a general rule, you should always purchase hardware somewhat beyond your expected needs. In addition to providing a capacity buffer at the outset in case your estimates were off, this also affords you some room to grow without having to buy more hardware. Testing your hardware as thoroughly as possible before deploying it is also essential. Many (but not all!) capacity-related problems can be identified in a dry-run test of the equipment before it’s formally deployed.
But we still haven’t addressed the basic question: How much server do I need? As stated above, there’s seldom a concrete answer to this question. Listed below are several considerations you should keep in mind when determining just what you need, and a brief description of how they should impact your thinking.
1. How many concurrent calls do I expect?
This is perhaps the most obvious and basic consideration for the size of your system. You should spec Asterisk for the peak call volume, and not the average call volume. So figure out the maximum simultaneous calls you ever expect to have, and use that number. In general, if you expect fewer than 20 max concurrent calls, any off-the-shelf PC or server will work. Any more than that and you’re looking at dedicated server-class hardware.
2. How many external lines and internal endpoints will I have?
Keep in mind that if you’re using SIP phones such as the Digium D40, D50, or D70 (http://www1.digium.com/en/products/phones), they’ll generally register back to Asterisk on a regular basis – be aware that even idle phones can still consume system resources on the server.
3. What call services will I use?
Call recording, conferencing, queues, and audio transcoding are all more resource-intensive than simple pass-through audio calls. Add processing power, RAM, or storage space if you use many call services.
4. Will the server only provide Asterisk service?
It’s common especially in SOHO environments to use a single system to handle many services: Your PBX might also be running your web server, database, or mail server. If possible, avoid this! If you can’t avoid it, at least spend the money to upgrade your server so it can comfortably handle all the services it needs to. What’s worse than a down PBX? A down PBX at the same time your email and website are down, too.
We still haven’t offered much in the way of hard numbers. And unfortunately, we’re not going to. There’s just no way to offer specific details with any reliability. Hopefully, having a list of some of the most important considerations will at least get you started down the path of identifying what hardware you need. And hey – if you really just can’t live without a specific recommendation for hardware customized to your particular circumstances… come see us in class! We’d love to talk with you one on one in a classroom setting, where we can give even more detail. There’s always a list of upcoming classes at http://www.digium.com/en/training/schedule/.