High Availability Asterisk (HAAst)



HAAst is a software package which creates a high-availability cluster out of any pair of Asterisk servers. HAAst can detect a range of failures on one Asterisk server and automatically transfer control to the other server, resulting in a telephony environment with minimal down time.

HAAst is a 100% software solution, with switchover in seconds. Built-in intelligent network control allows for a single IP address to be shared between peers, so clients/phones automatically connect to the active Asterisk server without change. Built-in replication and synchronization between servers also reduces maintenance and support activities.

HAAst includes a wide range of sensors to detect failure/degredation of a peer, its hardware, the network, the connection to carriers, etc. The sensors contribute to an overall health score which allows HAAst to automatically take corrective action, notify an administrator, or worst case start an orderly transition to the standby peer.

HAAst is an easy to use solution, with shell (command line), telnet, socket, and web interfaces, suitable for beginners and experts alike. HAAst is ideal for demanding telephony environments like call centers, emergency 911 operations, medical facilities, and mid-to-large size businesses, as well as small-businesses looking for high PBX uptime using low-cost off the shelf components.

HAAst does not require any other High Availability/heartbeat software, nor require use of shared disk/block level device etc. In fact, HAAst does not share any hardware / logical device between peers, so there is no single point of failure. HAAst is robust in functionality yet simple to set up and use.

HAAst is available in Free and Commercial editions. The Free edition is suitable for companies wanting to test if the basic functionality & compatibility meets their needs. In addition, the Free edition is a functional and useful high availability add-on for SOHO environments, more capable that any other DIY scripts, etc. The commercial edition is suitable for companies with critical telephony uptime requirements including call centers, 911 emergency centers, hospitals, etc.

HAAst is available in both free and commercial editions. You can get HAAst, as well as more documentation, at www.telium.ca.


Health Sensors

HAAst health sensors can detect a range of Asterisk failures (not just a stopped process), as well as failures / degradation of the PBX server, the environment, external network devices, upstream proxies, ITSP/carrier routes, and more. HAAst even allows administrators to create custom sensors from any script file or executable, contributing to the overall health score for the peer. Health sensors allow a HAAst peer to determine its overall ability to operate effectively, and take action when health is critical or failover to the peer.

Peer Synchronization

HAAst incorporates extensive synchronization capabilities, including the ability to synchronize files, directories, databases (MySQL) and more between peers. Synchronization takes place from the active to the standby only if the active peer is healthy, and only at intervals specified by the administrator. HAAst can even alter the received data, allowing the standby peer to overwrite settings/data after synchronization (for differences between peers).

Shared IP

HAAst incorporates the ability to share an IP address between peers, allowing for the cluster to failover without any changes required to upstream or downstream devices. The floating IP is added/removed by HAAst as either a physical NIC, a virtual NIC, or as a virtual VLAN NIC. HAAst also broadcasts network changes to neighboring switches / routers to ensure traffic flows to the new device immediately.

Autonomous Peers

HAAst peers do not depend on any shared hardware, software, disks, etc. Some high availability solutions share a block level device (eg: DRDB), a channel bank (eg: Astribank), a physical disk, a USB device, etc. However, these create a single point of failure that can collapse or corrupt an entire cluster when they fail. HAAst creates completely autonomous peers, ensuring that one peer cannot detrimentally affect the other.

Geographically Distant Peers

The design of HAAst allows for peers to be separated over large distances (e.g. different continents) and still operate as a single cluster. All communications, synchronization, and control have been optimized to minimize data transfer and adapt to varying latency / network conditions.

Fast Failover

HAAst version 2 incorporates a new sensor engine and cluster controller, which can detect a failed peer in under 0.5 seconds, and transition to the peer immediately thereafter. An entire cluster can now failover in as little as 3 seconds, with typical Asterisk servers failing over in 5 - 10 seconds (depending on hardware, cpu speed, etc).

Intelligent Fallback

HAAst can treat Asterisk peers as equals (with either peer continuing in an active role indefinitely) or as primary/backup (with the backup peer returning control to the primary peer when possible). HAAst intelligently transfers control from the backup peer to the primary peer only once the systems are stable and the cluster is reconnected, only during a specified time window, only when the systems are idle, etc. as specified by the administrator. This intelligent fallback feature allows administrators to move VoIP traffic back to a primary system when users are least affected.

Hardware & Software Independence

The HAAst software resides as a layer between Linux and Asterisk, allowing for considerable differences in peers including different hardware, different Linux versions, different Asterisk versions, and more. This feature also allows administrators to upgrade portions of one peer without risk to the cluster, then switching the active peer and beginning upgrades on the other.

Encrypted Peer Communications

Peers can be safely placed on opposite sides of insecure networks as all HAAst communications between peers is encrypted. HAAst uses 256-bit encryption to ensure that control of the cluster is never at risk, and performance/call data is never exposed.

LCD Interface

End users and administrators will appreciate the ability to quickly view the status and health of the HAAst peers from an LCD panel directly on the front of the PBX chassis. Administrators can optionally enable control of the cluster from the panel as well, allowing end-users to promote/demote/shutdown the peer with the push of a button on the front of the chassis.

Telnet Interface

Administrators will be immediately comfortable with the simple and powerful telnet interface to HAAst. The entire cluster can be managed and controlled from a telnet interface, whether from a PC, a tablet, or a cell phone. The interface includes online help, and user friendly rich terminal output.

Browser Interface

Seasoned administrators and novices alike will be comfortable with the simple and powerful browser (web) interface to HAAst. The cluster can be managed and controlled from any browser, including a PC, a tablet, or a cell phone. The interface includes simple control over the cluster, viewing of event logs, and more.

Socket & PHP & REST Interfaces

Developers will appreciate the socket, PHP, and REST (Representational State Transfer) interfaces to HAAst, as the power and control of HAAst can be easily expanded and integrated with other system administration and monitoring tools. HAAst includes sample code to demonstrate how to extract data and control HAAst via a web service, via a PHP class, and via the socket interface. HAAst monitoring can also be connected to commercial and free monitoring tools (eg: Nagios).

Asterisk Compatibility

HAAst is compatible with a broad range of Asterisk versions and distributions. HAAst works with Asterisk versions 1.4 through 14, both 32-bit and 64-bit. HAAst is also compatible with a wide range of Asterisk distributions, including Digium's plain old Asterisk, FreePBX, PBX In A Flash, TrixBox, 3rd Lane, and more. HAAst can even control a custom distribution through settings which allow starting and stopping any executable.


HAAst is simple to install and integrate into any existing environment. New installations can be up and running within hours; and repeat installations (for integrators) can be completed within 20 minutes per peer.

Detailed installation instructions are included. Installation can be completed by an average Linux admin; no need to compile, make, etc. Installation mostly involves copying files and creating symlinks.


Web Interface - Cluster Status

Web Interface - Peer Health Live

Web Interface - Peer Health History

Web Interface - Individual Sensors

Telnet Interface - Cluster Status


The HAAst software is produced by Telium. Telium can be reached at www.telium.ca or info@telium.ca

Created by: ocgltd, Last modification: Tue 29 of Nov, 2016 (03:31 UTC)
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+