[asterisk-users] High Availability with Asterisk
Markus
universe at truemetal.org
Thu Mar 6 14:33:00 CST 2014
Hi Thorolf,
Am 06.03.2014 16:21, schrieb Thorolf Godawa:
> Using (para-)virtualization with Xen could be an other option, on
> systems with low load this works reliable, but what happens on systems
> with high load? Are there any issues known about problems with the
> realtime, packet loss etc. because it runs in a VM?
hmm, all my Asterisk'es run in (KVM) VMs, no issues there. But how is
this related to high availability? I think it's not. :)
I think the way to go for high availability (and scalability) is
Kamailio! In a redundant setup, running on 2 separate physical machines
(maybe in a VM, doesn't matter). Then you make them failsafe using
whatever tool(s) available. Then you can set up 1, 2, 10 or 100 Asterisk
"behind" Kamailio and any of them could fail (but 1 :-) ) and you will
still be online.
If you want to further develop the high availability thought, then you
could use CephFS which will give you self-healing, 100% available
storage over multiple physical storage servers. There you could store
your Asterisk config files, or your MySQL database used by all the
Asterisk servers, for CDRs, SIP registrations etc. It's kinda slow, but
I think fast enough for Asterisk / MySQL. :)
And, to scale and to make the Asterisk nodes redundant (redundancy is
not really needed anymore, since Kamailio takes care of that, but
basically then you get also VM/physical redundancy), you could look into
OpenNebula which provides a nice auto-scaling feature already out of the
box. If there's load on your Asterisk VMs, OpenNebula will detect this
and spawn new Asterisk VMs (probably on different physical servers,
otherwise it doesn't make that much sense performance-wise) which will
automagically receive requests/calls from Kamailio. If the load goes
down, the VM can be automagically stopped again to free resources for
other VMs/applications. OpenNebula is less popular than OpenStack, which
seems to be the first choice for Cloud-stuff today, but what I liked
about OpenNebula is that it provides the auto-scaling feature already in
the customer-facing web-frontend out-of-the-box, unlike OpenStack. So
you could offer your customers a self-managed, redundant Asterisk cloud
or something like that. :)
In theory, this combination should give you a 100% redundant,
auto-healing, auto-scaling VoIP setup. :)
Regards
Markus
More information about the asterisk-users
mailing list