As we have no hard and fast rules about the best way to virtualize FreeSWITCH, here are some testimonials from community members:
From: Stanislav Sinyagin
A relatively modern VMWare server should not be a problem, but you need to provide the VM some guaranteed CPU cycles.
I made a number of tests in various cloud hosting offerings, and the hardware clock is not any more an issue. But there was always the issue that the VM was serviced in best-effort manner, and there's never a guaranteed CPU resource for it. So, with 10+ simultaneous calls, FreeSWITCH sometimes failed to send RTP on time, simply because the CPU cycles were not available when needed.
You can perform the tests relatively easily, by firing calls from an automated dialer, and analyzing the RTP streams with tshark.
From: Grant Bagdasarian
We're currently running around 20 FS VM's on multiple physical ESXi hosts and some on vCenter clusters with no issues at all. The current versions are still 1.4 (updating soon) but haven't had any issues with timing or RTP streams. We do limit the number of VM's per physical host not to overcommit resources, but in some cases overcommitting resources worked out fine too.
We've been running FS virtualized on VMWare for almost 2-3 years now and haven't had any issues with timing or rtp.
A single VM host (6 Cores, 12 Threads) with 3 FS VM's (bridging calls between the FS instances) should be able to handle close to 500 calls active without any issues. In this setup and our load test of this setup we had in total 5 call legs, bridged from the first to the last FS VM in the chain.
From: Chad Phillips
I've had very good luck running the newer video branch (1.6) code on ProfitBricks: https://www.profitbricks.com/
As far as I understand, the CPU cycles are guaranteed on their platform. I've had to put as many as 20 cores on a server to handle some of our busier video conference calls, but with that it runs quite smoothly.
That was with 15 - 18 connected participants. My setup is probably a bit different than most, though, as I only have 2 video feeds up at a time (the rest are video muted). Guessing it would require quite a few more cores if I had more active video feeds.
From: Volodymyr Fedorov
Hi all. From behind, we used OpenVz container and freeswitch 1.4 without any performance impact. Stats 300-500 calls, cps around 10-15 without transcoding, but sometimes record-session was involved.
real experiences from community members might guide you.
To speed you on your way to building a new FreeSWITCH installation the FS developer team has prepared an OpenVZ container complete with all necessary libraries and dependencies: