SlideShare ist ein Scribd-Unternehmen logo
1 von 35
HA Asterisk on Azure 
Magic Azure! 
Sanjay|Anthony @astiostech.com 
Copyright 2014 © Astiostech Sdn Bhd. For informational purposes only. No warranties of any kind are made 
and you have to verify all information before relying on it. You can re-use this presentation as long as you 
read, agree, and follow the guidelines described in the “Comments” field in File/Properties.
Readme 
• Microsoft MVP in Enterprise Security 
• Over 10 years of experience with Open 
Source, Microsoft Technology and 
Security related speaking engagements 
• Very focused with over 8 years 
experience with Asterisk and Nagios 
• Built one of the first VaaS in Malaysia 
using cloud tech 
• Built various products and solutions on 
private labels and OSS
Introduction To Asterisk 
• Enterprise PBX functionalities 
• Integration with computers 
• Relatively large scalability 
• Connects to lots and lots of other communication devices 
• Human interaction (interactive) 
• Customizable for most needs
Introduction To Asterisk 
• Become a call center 
• Enable IP features (e.g. SIP to cost saving gateways) 
• Bridge using IP between remote offices (free calls) 
• Voicemail/VMtoEmail services 
• Integrate to CRM/Database/Software
Introduction To Asterisk 
• Multiparty voice and video conferencing 
• Bridge to Skype/Gtalk 
• Enable a digital receptionist / directory 
• Have a remote office / DR office setup 
• Call accounting/auditing/management 
• Text to speech 
• Connect anywhere, anytime 
• Call recording, and many more..
Introduction to Asterisk 
Google Talk 
H.323 
IAX™ (Inter-Asterisk eXchange) 
Jingle/XMPP 
MGCP (Media Gateway Control Protocol 
SCCP (Cisco® Skinny®) 
SIP (Session Initiation Protocol) 
Skype 
UNIStim 
Caller ID on Call Waiting 
Calling Cards 
Conference Bridging 
Database Store / Retrieve 
Database Integration 
Dial by Name 
Direct Inward System Access 
Distinctive Ring 
Distributed Universal Number Discovery 
Do Not Disturb 
E911 
ENUM 
AGI (Asterisk Gateway Interface) 
RESTFUL API 
Graphical Call Manager 
Outbound Call Spooling 
Predictive Dialer 
TCP/IP Management Interface 
TDMoE (Time Division Multiplex 
over Ethernet) 
Allows direct connection of Asterisk 
PBX 
Zero latency 
Uses commodity Ethernet 
hardware 
Voice-over IP 
Allows for integration of physically 
separate installations 
Uses commonly deployed data 
connections 
Allows a unified dialplan across 
multiple offices 
AT&T 4ESS 
EuroISDN PRI and BRI 
Lucent 5ESS 
National ISDN 1 
National ISDN 2 
NFAS 
Nortel DMS100 
Q.SIG
Key Concepts 
Sanjay W
Asterisk on cloud – Voice as a Service 
• Features 
• Easy deployment 
• Scalability 
• Secure by implementation 
• No voice distortion / quality issues 
• Can be deployed across multi geo locations 
• Plug and play for customers/users 
• Number follows you anywhere you go 
• Enablers 
• Current telcos providing VoIP PSTN in and out 
• Many hundreds of international bulk voice providers to choose from 
• Multi route for resilience 
• Location independent 
• Low cost of ownership 
• Extremely high broadband penetration rate 
• Negligible latency
Asterisk on Azure – Why Azure? 
• Designed for Noobs (like me) 
• Not a MVP for Azure  
• Customer satisfaction 
• No complaints 
• Supported with multiple Open Source OS flavors 
• We personally prefer Debian and Ubuntu 
• Has its own HA/LB method (explained later) 
• Extremely Fast, Extremely Scalable 
• Geographically suitable for Malaysia 
• Singapore, Hong Kong
Asterisk on Azure – Why Azure? 
• Assume from here on, we are on the farther POP, Hong Kong 
• We deliberately did that for worst-case-scenarios 
• Latency is negligible (using SIP with uLaw, no compression, no 
encapsulation, no encryption) 
• Singapore was around 40ms-60ms 
• Hong Kong was around 70ms-80ms 
• ITU-T recommendation latency is 150ms for voice traffic (and 250ms 
roundtrip) 
• Low packet loss rate 
• Approximately 0.1%
Asterisk on Azure – Why Azure? 
• Easy management UX 
• Adding ports was slow, otherwise, everything else is fast  
• Build mobile solutions out from Azure 
• Connect to an AD ready Azure 
• For Authentication, Authorization on Asterisk 
• Unification of credentials, integration 
• Shared resources like disks can be helpful to share commonly used 
resources such as static configurations, etc.. 
• Easy Backup / Restore operations
Our Demo Azure Asterisk HA 
• Distributed computing within Azure 
• Two SIP servers 
• One DB server (could also be 2 if we had more time) 
• Can also add proxies – But we didn’t have time 
• Can also add firewalls – But we didn’t have time 
• We use pfSense firewall in XML cluster mode for hacker bashing 
• Comes with firewalls, IPS/IDS and lots of other networking goodies 
• Uses Azure Cloud HA for targeting 
• Typically we use another method (explained later) 
• Uses common and easy HA methods on Linux
Our Demo Azure 
Public Network 
Asterisk Master Asterisk Slave Asterisk HA 
Asterisk Configurator DB 
Azure Cloud HA 
Telco A 
Telco B
Alternative Design 
Azure Asterisk HA 
Public Network 
pfSense 1 
Proxy Kamailio Proxy Kamailio 
Asterisk Master Asterisk Slave 
DB Slave 
Azure Cloud HA 
Telco A 
Telco B 
DB Master 
pfSense 1 
Virtual DMZ
Our Demo Azure 
Asterisk HA 
Logical Illustration 
SIP USER 
PUBLIC LAYER 
AZURE CLOUD LAYER TCP PROBE 
WHICH ACTIVE SERVER 
RUNNING TCP 5060 
WHICH ACTIVE SERVER 
RUNNING TCP 5060 
ACTIIVE SERVER CONNECTS TO CONFIG DB
Components in Demo Azure Asterisk 
• Asterisk 1.8 or higher 
• FreePBX 2.11 or higher 
• MySQL 5 
• PHP 
• Heartbeat 
• DRBD 
• Tiny script to monitor safe_asterisk 
• Azure depends on port TCP5060 
• Asterisk opens port TCP5060 
• So, its really good to monitor Asterisk
Setup Details 
Anthony Ho
Steps to build Asterisk HA on Azure 
Checklist 
• Setup 3 Virtual Machines (VM) in 
Azure. 
• Assigning the VMs with the same 
cloud service. 
• Creating the necessary End points. 
• Attaching an Empty Disk on each 
VM. 
• Installation of Astiostech’s Asterisk 
Business Telephony 
• Installation of Astiostech’s High 
Availability Package.
Steps to build Asterisk HA on Azure 
• Setup 3 Azure 
Ubuntu VM
Steps to build Asterisk HA on Azure 
• Use the same Cloud 
Service on the Second 
and third VM
Steps to build Asterisk HA on Azure 
• Create end points and check 
“CREATE A LOAD-BALANCED 
SET” to failover the necessary 
ports else leave it to run 
normally.
10 Steps to build Asterisk HA on Azure 
• Create an empty disk on 
two of the Asterisk VMs 
and attach it once done.
Steps to build Asterisk HA on Azure 
• Installation of 
Astiostech’s 
Asterisk Business 
Telephony package. 
• MySQL database 
will be installed 
into the dedicated 
MySQL database 
server. 
ASTIOSTECH BTEL PBX 
FOP2 FreePBX MonAST 
APACHE * ASTERISK MYSQL 
LINUX OS
Steps to build Asterisk HA on Azure
Steps to build Asterisk HA on Azure
Steps to build Asterisk HA on Azure 
There are 2 major components 
in our HA package 
1. Heartbeat 
• Heartbeat is a daemon that 
provides cluster infrastructure 
(communication and 
membership) services to its 
clients. 
2. DRBD
Steps to build Asterisk HA on Azure 
DRBD refers to block devices designed as a building block to 
form high availability (HA) clusters. This is done by mirroring a 
whole block device via an assigned network. 
DRBD can be understood as network based raid-1.
Demo Overview 
SLAVE 
heartbeat 
Replication 
TM 
MASTER 
(ACTIVE) 
astiosmaster.cloudapp.net 
Ext: 1000 Ext: 1001 Anthony s Cell Phone
Demo calling from Master server 
• Ext.1000 Calling 
Ext.1001 
• Outbound Calls – 
Ext.1000 calling an 
external number. 
• Inbound Calls - An 
external caller 
calling in to the 
Extension 1001. 
SLAVE 
heartbeat 
Replication 
TM 
MASTER 
(ACTIVE) 
astiosmaster.cloudapp.net 
Ext: 1000 Ext: 1001 Anthony s Cell Phone
Demo Failover (Master -> Slave)
Demo calling from Slave server 
• Asterisk PBX Fails 
over to the SLAVE 
server. 
• PBX Phone function 
will just work like 
normal. 
SLAVE 
(ACTIVE) 
heartbeat 
Replication 
TM 
MASTER 
astiosmaster.cloudapp.net 
Ext: 1000 Ext: 1001 Anthony s Cell Phone
Failback and quick test
Azure Setup Screens
Field tips and tricks 
• Enable Asterisk’s TCP 5060 Ports for Azure Cloud monitoring. 
• Since Azure monitors HTTP or TCP ports only 
• Enable a daemon service [demo] to monitor Asterisk 
• In case Asterisk goes down, initiate failover/failback 
• All other ports should then be “instructed” by the TCP 5060 via Azure, 
• You might want to enable individual ports for SSH 
• But you cannot use the same public facing port twice
Q&A & Thank You 
Copyright 2014 © Astiostech Sdn Bhd. For informational 
purposes only. No warranties of any kind are made and you 
have to verify all information before relying on it. You can re-use 
this presentation as long as you read, agree, and follow 
the guidelines described in the “Comments” field in 
File/Properties. 
Openness is the future of computing..

Weitere ähnliche Inhalte

Was ist angesagt?

VoIP Wars: Attack of the Cisco Phones
VoIP Wars: Attack of the Cisco PhonesVoIP Wars: Attack of the Cisco Phones
VoIP Wars: Attack of the Cisco PhonesFatih Ozavci
 
Mise en place d’une plateforme de formation IMS
Mise en place d’une plateforme de formation IMSMise en place d’une plateforme de formation IMS
Mise en place d’une plateforme de formation IMSKokou Gaglo
 
CCNAv5 - S3: Chapter 4 Wireless Lans
CCNAv5 - S3: Chapter 4 Wireless LansCCNAv5 - S3: Chapter 4 Wireless Lans
CCNAv5 - S3: Chapter 4 Wireless LansVuz Dở Hơi
 
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSEC
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSECĐồ án Xây dựng hệ thống bảo mật mạng VPN/IPSEC
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSECnataliej4
 
Partie II – ASM Application Security Manager
Partie II – ASM Application Security ManagerPartie II – ASM Application Security Manager
Partie II – ASM Application Security Managere-Xpert Solutions SA
 
Introduction to cisco wireless
Introduction to  cisco wirelessIntroduction to  cisco wireless
Introduction to cisco wirelessAble George
 
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASA
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASASupport formation vidéo : Vos premiers pas avec le pare feu CISCO ASA
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASASmartnSkilled
 
Industrial Cyber Security: What is Application Whitelisting?
Industrial Cyber Security: What is Application Whitelisting?Industrial Cyber Security: What is Application Whitelisting?
Industrial Cyber Security: What is Application Whitelisting?honeywellgf
 
IMS Registration Flow
IMS Registration FlowIMS Registration Flow
IMS Registration FlowKent Loh
 
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.xAlphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.xAlphorm
 
Mininet introduction
Mininet introductionMininet introduction
Mininet introductionVipin Gupta
 
Scaling Asterisk with Kamailio
Scaling Asterisk with KamailioScaling Asterisk with Kamailio
Scaling Asterisk with KamailioFred Posner
 
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsi
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsiRoom 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsi
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsiVietnam Open Infrastructure User Group
 
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm
 
Introduction to nexux from zero to Hero
Introduction to nexux  from zero to HeroIntroduction to nexux  from zero to Hero
Introduction to nexux from zero to HeroDhruv Sharma
 

Was ist angesagt? (20)

VoIP – vulnerabilities and attacks
VoIP – vulnerabilities and attacksVoIP – vulnerabilities and attacks
VoIP – vulnerabilities and attacks
 
Tailieu.vncty.com do an 3g
Tailieu.vncty.com   do an 3gTailieu.vncty.com   do an 3g
Tailieu.vncty.com do an 3g
 
VoIP Wars: Attack of the Cisco Phones
VoIP Wars: Attack of the Cisco PhonesVoIP Wars: Attack of the Cisco Phones
VoIP Wars: Attack of the Cisco Phones
 
Mise en place d’une plateforme de formation IMS
Mise en place d’une plateforme de formation IMSMise en place d’une plateforme de formation IMS
Mise en place d’une plateforme de formation IMS
 
CCNAv5 - S3: Chapter 4 Wireless Lans
CCNAv5 - S3: Chapter 4 Wireless LansCCNAv5 - S3: Chapter 4 Wireless Lans
CCNAv5 - S3: Chapter 4 Wireless Lans
 
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSEC
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSECĐồ án Xây dựng hệ thống bảo mật mạng VPN/IPSEC
Đồ án Xây dựng hệ thống bảo mật mạng VPN/IPSEC
 
Partie II – ASM Application Security Manager
Partie II – ASM Application Security ManagerPartie II – ASM Application Security Manager
Partie II – ASM Application Security Manager
 
Introduction to cisco wireless
Introduction to  cisco wirelessIntroduction to  cisco wireless
Introduction to cisco wireless
 
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASA
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASASupport formation vidéo : Vos premiers pas avec le pare feu CISCO ASA
Support formation vidéo : Vos premiers pas avec le pare feu CISCO ASA
 
Industrial Cyber Security: What is Application Whitelisting?
Industrial Cyber Security: What is Application Whitelisting?Industrial Cyber Security: What is Application Whitelisting?
Industrial Cyber Security: What is Application Whitelisting?
 
IMS Registration Flow
IMS Registration FlowIMS Registration Flow
IMS Registration Flow
 
Ome201102 huawei bts3012 issue1.0
Ome201102 huawei bts3012 issue1.0Ome201102 huawei bts3012 issue1.0
Ome201102 huawei bts3012 issue1.0
 
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.xAlphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
 
Mininet introduction
Mininet introductionMininet introduction
Mininet introduction
 
Đề tài: Thiết kế hệ thống mạng máy tính, HAY, 9đ - tải qua zalo=> 0909232620
Đề tài: Thiết kế hệ thống mạng máy tính, HAY, 9đ - tải qua zalo=> 0909232620Đề tài: Thiết kế hệ thống mạng máy tính, HAY, 9đ - tải qua zalo=> 0909232620
Đề tài: Thiết kế hệ thống mạng máy tính, HAY, 9đ - tải qua zalo=> 0909232620
 
Scaling Asterisk with Kamailio
Scaling Asterisk with KamailioScaling Asterisk with Kamailio
Scaling Asterisk with Kamailio
 
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsi
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsiRoom 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsi
Room 1 - 2 - Nguyễn Văn Thắng & Dzung Nguyen - Proxmox VE và ZFS over iscsi
 
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
 
Brkdct 3101
Brkdct 3101Brkdct 3101
Brkdct 3101
 
Introduction to nexux from zero to Hero
Introduction to nexux  from zero to HeroIntroduction to nexux  from zero to Hero
Introduction to nexux from zero to Hero
 

Andere mochten auch

Running Asterisk on virtualized environments
Running Asterisk on virtualized environmentsRunning Asterisk on virtualized environments
Running Asterisk on virtualized environmentsSaúl Ibarra Corretgé
 
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Fred Posner
 
High Availability Setup with Heartbeat and Floating IP
High Availability Setup with Heartbeat and Floating IPHigh Availability Setup with Heartbeat and Floating IP
High Availability Setup with Heartbeat and Floating IPayman diab
 
WordPress for Beginners Create Professional Websites
WordPress for Beginners Create Professional WebsitesWordPress for Beginners Create Professional Websites
WordPress for Beginners Create Professional Websitesayman diab
 
Expanding Asterisk with Kamailio
Expanding Asterisk with KamailioExpanding Asterisk with Kamailio
Expanding Asterisk with KamailioFred Posner
 
Alfio Muñoz - Alta disponibilidad con Elastix
Alfio Muñoz - Alta disponibilidad con ElastixAlfio Muñoz - Alta disponibilidad con Elastix
Alfio Muñoz - Alta disponibilidad con ElastixElastixCom
 
Elastix4.0 High Availability without ElastixHA module
Elastix4.0 High Availability without ElastixHA moduleElastix4.0 High Availability without ElastixHA module
Elastix4.0 High Availability without ElastixHA moduleHani Perkasa
 
High Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatHigh Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatChris Barber
 
MACRA and the New Quality Payment Program
MACRA and the New Quality Payment ProgramMACRA and the New Quality Payment Program
MACRA and the New Quality Payment ProgramHealth Catalyst
 
Design patterns and plan for developing high available azure applications
Design patterns and plan for developing high available azure applicationsDesign patterns and plan for developing high available azure applications
Design patterns and plan for developing high available azure applicationsHimanshu Sahu
 
High availability solutions bakostech
High availability solutions bakostechHigh availability solutions bakostech
High availability solutions bakostechViktoria Bakos
 
Oracle database high availability solutions
Oracle database high availability solutionsOracle database high availability solutions
Oracle database high availability solutionsKirill Loifman
 
High Availability (HA) Explained
High Availability (HA) ExplainedHigh Availability (HA) Explained
High Availability (HA) ExplainedMaciej Lasyk
 
Architecting for High Availability
Architecting for High AvailabilityArchitecting for High Availability
Architecting for High AvailabilityAmazon Web Services
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoCISCO NETWORKING
 
Kamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionKamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionOlle E Johansson
 
Pinana : Old proposal for distributed SIP states in Asterisk
Pinana : Old proposal for distributed SIP states in AsteriskPinana : Old proposal for distributed SIP states in Asterisk
Pinana : Old proposal for distributed SIP states in AsteriskOlle E Johansson
 
Astricon 2010: Scaling Asterisk installations
Astricon 2010: Scaling Asterisk installationsAstricon 2010: Scaling Asterisk installations
Astricon 2010: Scaling Asterisk installationsOlle E Johansson
 

Andere mochten auch (20)

Running Asterisk on virtualized environments
Running Asterisk on virtualized environmentsRunning Asterisk on virtualized environments
Running Asterisk on virtualized environments
 
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...
 
High Availability Setup with Heartbeat and Floating IP
High Availability Setup with Heartbeat and Floating IPHigh Availability Setup with Heartbeat and Floating IP
High Availability Setup with Heartbeat and Floating IP
 
WordPress for Beginners Create Professional Websites
WordPress for Beginners Create Professional WebsitesWordPress for Beginners Create Professional Websites
WordPress for Beginners Create Professional Websites
 
Expanding Asterisk with Kamailio
Expanding Asterisk with KamailioExpanding Asterisk with Kamailio
Expanding Asterisk with Kamailio
 
Elastix installation
Elastix installationElastix installation
Elastix installation
 
Alfio Muñoz - Alta disponibilidad con Elastix
Alfio Muñoz - Alta disponibilidad con ElastixAlfio Muñoz - Alta disponibilidad con Elastix
Alfio Muñoz - Alta disponibilidad con Elastix
 
Elastix4.0 High Availability without ElastixHA module
Elastix4.0 High Availability without ElastixHA moduleElastix4.0 High Availability without ElastixHA module
Elastix4.0 High Availability without ElastixHA module
 
High Availability With DRBD & Heartbeat
High Availability With DRBD & HeartbeatHigh Availability With DRBD & Heartbeat
High Availability With DRBD & Heartbeat
 
MACRA and the New Quality Payment Program
MACRA and the New Quality Payment ProgramMACRA and the New Quality Payment Program
MACRA and the New Quality Payment Program
 
Design patterns and plan for developing high available azure applications
Design patterns and plan for developing high available azure applicationsDesign patterns and plan for developing high available azure applications
Design patterns and plan for developing high available azure applications
 
High availability solutions bakostech
High availability solutions bakostechHigh availability solutions bakostech
High availability solutions bakostech
 
Oracle database high availability solutions
Oracle database high availability solutionsOracle database high availability solutions
Oracle database high availability solutions
 
High Availability (HA) Explained
High Availability (HA) ExplainedHigh Availability (HA) Explained
High Availability (HA) Explained
 
Architecting for High Availability
Architecting for High AvailabilityArchitecting for High Availability
Architecting for High Availability
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos cisco
 
Kamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionKamailio :: A Quick Introduction
Kamailio :: A Quick Introduction
 
Elastix Call Center
Elastix Call CenterElastix Call Center
Elastix Call Center
 
Pinana : Old proposal for distributed SIP states in Asterisk
Pinana : Old proposal for distributed SIP states in AsteriskPinana : Old proposal for distributed SIP states in Asterisk
Pinana : Old proposal for distributed SIP states in Asterisk
 
Astricon 2010: Scaling Asterisk installations
Astricon 2010: Scaling Asterisk installationsAstricon 2010: Scaling Asterisk installations
Astricon 2010: Scaling Asterisk installations
 

Ähnlich wie High Availability Asterisk and FreePBX on Microsoft Azure

PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentationlalitjangra9
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSShixiong Shang
 
Openstack in 10 mins
Openstack in 10 minsOpenstack in 10 mins
Openstack in 10 minsDawood M.S
 
tack Deployment in the Enterprise
tack Deployment in the Enterprisetack Deployment in the Enterprise
tack Deployment in the EnterpriseCisco Canada
 
Puppet Camp Dallas 2014: Puppet Keynote
Puppet Camp Dallas 2014: Puppet Keynote Puppet Camp Dallas 2014: Puppet Keynote
Puppet Camp Dallas 2014: Puppet Keynote Puppet
 
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAs a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAnimesh Singh
 
RTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIRTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIJoel W. King
 
What's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with PuppetWhat's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with PuppetMark Voelker
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker建澄 吳
 
Introduction to IP telephony & VoIP
Introduction to IP telephony & VoIP Introduction to IP telephony & VoIP
Introduction to IP telephony & VoIP Kaushal Bhavsar
 
High available BizTalk infrastructure on Azure IaaS
High available BizTalk infrastructure on Azure IaaSHigh available BizTalk infrastructure on Azure IaaS
High available BizTalk infrastructure on Azure IaaSBizTalk360
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanAmbassador Labs
 
What is the OpenStack Platform? By Peter Dens - Kangaroot
What is the OpenStack Platform? By Peter Dens - KangarootWhat is the OpenStack Platform? By Peter Dens - Kangaroot
What is the OpenStack Platform? By Peter Dens - KangarootKangaroot
 
Helix core on aws webinar
Helix core on aws webinar Helix core on aws webinar
Helix core on aws webinar Perforce
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops OverviewJoel W. King
 
Connecting Oracle Cloud to your Data Centre (Part A)
Connecting Oracle Cloud to your Data Centre (Part A)Connecting Oracle Cloud to your Data Centre (Part A)
Connecting Oracle Cloud to your Data Centre (Part A)Simon Haslam
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet
 

Ähnlich wie High Availability Asterisk and FreePBX on Microsoft Azure (20)

PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
 
Openstack
OpenstackOpenstack
Openstack
 
Openstack in 10 mins
Openstack in 10 minsOpenstack in 10 mins
Openstack in 10 mins
 
tack Deployment in the Enterprise
tack Deployment in the Enterprisetack Deployment in the Enterprise
tack Deployment in the Enterprise
 
Puppet Camp Dallas 2014: Puppet Keynote
Puppet Camp Dallas 2014: Puppet Keynote Puppet Camp Dallas 2014: Puppet Keynote
Puppet Camp Dallas 2014: Puppet Keynote
 
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAs a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
 
RTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIRTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACI
 
What's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with PuppetWhat's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with Puppet
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker
 
Introduction to IP telephony & VoIP
Introduction to IP telephony & VoIP Introduction to IP telephony & VoIP
Introduction to IP telephony & VoIP
 
High available BizTalk infrastructure on Azure IaaS
High available BizTalk infrastructure on Azure IaaSHigh available BizTalk infrastructure on Azure IaaS
High available BizTalk infrastructure on Azure IaaS
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill Monkman
 
What is the OpenStack Platform? By Peter Dens - Kangaroot
What is the OpenStack Platform? By Peter Dens - KangarootWhat is the OpenStack Platform? By Peter Dens - Kangaroot
What is the OpenStack Platform? By Peter Dens - Kangaroot
 
Helix core on aws webinar
Helix core on aws webinar Helix core on aws webinar
Helix core on aws webinar
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops Overview
 
Connecting Oracle Cloud to your Data Centre (Part A)
Connecting Oracle Cloud to your Data Centre (Part A)Connecting Oracle Cloud to your Data Centre (Part A)
Connecting Oracle Cloud to your Data Centre (Part A)
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: Keynote
 
Architecting for Resiliency
Architecting for ResiliencyArchitecting for Resiliency
Architecting for Resiliency
 

Mehr von Sanjay Willie

Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
ChatGPT For Business Use
ChatGPT For Business UseChatGPT For Business Use
ChatGPT For Business UseSanjay Willie
 
WordPress CLI in-depth
WordPress CLI in-depthWordPress CLI in-depth
WordPress CLI in-depthSanjay Willie
 
The Role of Governments In Sustaining The 4th Industrial Revolution
The Role of Governments In Sustaining The 4th Industrial RevolutionThe Role of Governments In Sustaining The 4th Industrial Revolution
The Role of Governments In Sustaining The 4th Industrial RevolutionSanjay Willie
 
Enhancing Contact Centers Through Open Source Digital Workplace Solutions
Enhancing Contact Centers Through Open Source Digital Workplace SolutionsEnhancing Contact Centers Through Open Source Digital Workplace Solutions
Enhancing Contact Centers Through Open Source Digital Workplace SolutionsSanjay Willie
 
Open Source Driving Digital Workplace Collaboration
Open Source Driving Digital Workplace CollaborationOpen Source Driving Digital Workplace Collaboration
Open Source Driving Digital Workplace CollaborationSanjay Willie
 
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...Sanjay Willie
 
NagiosXI - Astiostech NagiosXI Event with NTT MSC Cyberjaya
NagiosXI - Astiostech NagiosXI Event with NTT MSC CyberjayaNagiosXI - Astiostech NagiosXI Event with NTT MSC Cyberjaya
NagiosXI - Astiostech NagiosXI Event with NTT MSC CyberjayaSanjay Willie
 
What is Nagios XI and how is it different from Nagios Core
What is Nagios XI and how is it different from Nagios CoreWhat is Nagios XI and how is it different from Nagios Core
What is Nagios XI and how is it different from Nagios CoreSanjay Willie
 
WebRTC & Asterisk 11
WebRTC & Asterisk 11WebRTC & Asterisk 11
WebRTC & Asterisk 11Sanjay Willie
 

Mehr von Sanjay Willie (10)

Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
ChatGPT For Business Use
ChatGPT For Business UseChatGPT For Business Use
ChatGPT For Business Use
 
WordPress CLI in-depth
WordPress CLI in-depthWordPress CLI in-depth
WordPress CLI in-depth
 
The Role of Governments In Sustaining The 4th Industrial Revolution
The Role of Governments In Sustaining The 4th Industrial RevolutionThe Role of Governments In Sustaining The 4th Industrial Revolution
The Role of Governments In Sustaining The 4th Industrial Revolution
 
Enhancing Contact Centers Through Open Source Digital Workplace Solutions
Enhancing Contact Centers Through Open Source Digital Workplace SolutionsEnhancing Contact Centers Through Open Source Digital Workplace Solutions
Enhancing Contact Centers Through Open Source Digital Workplace Solutions
 
Open Source Driving Digital Workplace Collaboration
Open Source Driving Digital Workplace CollaborationOpen Source Driving Digital Workplace Collaboration
Open Source Driving Digital Workplace Collaboration
 
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...
 
NagiosXI - Astiostech NagiosXI Event with NTT MSC Cyberjaya
NagiosXI - Astiostech NagiosXI Event with NTT MSC CyberjayaNagiosXI - Astiostech NagiosXI Event with NTT MSC Cyberjaya
NagiosXI - Astiostech NagiosXI Event with NTT MSC Cyberjaya
 
What is Nagios XI and how is it different from Nagios Core
What is Nagios XI and how is it different from Nagios CoreWhat is Nagios XI and how is it different from Nagios Core
What is Nagios XI and how is it different from Nagios Core
 
WebRTC & Asterisk 11
WebRTC & Asterisk 11WebRTC & Asterisk 11
WebRTC & Asterisk 11
 

Kürzlich hochgeladen

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Kürzlich hochgeladen (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

High Availability Asterisk and FreePBX on Microsoft Azure

  • 1. HA Asterisk on Azure Magic Azure! Sanjay|Anthony @astiostech.com Copyright 2014 © Astiostech Sdn Bhd. For informational purposes only. No warranties of any kind are made and you have to verify all information before relying on it. You can re-use this presentation as long as you read, agree, and follow the guidelines described in the “Comments” field in File/Properties.
  • 2. Readme • Microsoft MVP in Enterprise Security • Over 10 years of experience with Open Source, Microsoft Technology and Security related speaking engagements • Very focused with over 8 years experience with Asterisk and Nagios • Built one of the first VaaS in Malaysia using cloud tech • Built various products and solutions on private labels and OSS
  • 3. Introduction To Asterisk • Enterprise PBX functionalities • Integration with computers • Relatively large scalability • Connects to lots and lots of other communication devices • Human interaction (interactive) • Customizable for most needs
  • 4. Introduction To Asterisk • Become a call center • Enable IP features (e.g. SIP to cost saving gateways) • Bridge using IP between remote offices (free calls) • Voicemail/VMtoEmail services • Integrate to CRM/Database/Software
  • 5. Introduction To Asterisk • Multiparty voice and video conferencing • Bridge to Skype/Gtalk • Enable a digital receptionist / directory • Have a remote office / DR office setup • Call accounting/auditing/management • Text to speech • Connect anywhere, anytime • Call recording, and many more..
  • 6. Introduction to Asterisk Google Talk H.323 IAX™ (Inter-Asterisk eXchange) Jingle/XMPP MGCP (Media Gateway Control Protocol SCCP (Cisco® Skinny®) SIP (Session Initiation Protocol) Skype UNIStim Caller ID on Call Waiting Calling Cards Conference Bridging Database Store / Retrieve Database Integration Dial by Name Direct Inward System Access Distinctive Ring Distributed Universal Number Discovery Do Not Disturb E911 ENUM AGI (Asterisk Gateway Interface) RESTFUL API Graphical Call Manager Outbound Call Spooling Predictive Dialer TCP/IP Management Interface TDMoE (Time Division Multiplex over Ethernet) Allows direct connection of Asterisk PBX Zero latency Uses commodity Ethernet hardware Voice-over IP Allows for integration of physically separate installations Uses commonly deployed data connections Allows a unified dialplan across multiple offices AT&T 4ESS EuroISDN PRI and BRI Lucent 5ESS National ISDN 1 National ISDN 2 NFAS Nortel DMS100 Q.SIG
  • 8. Asterisk on cloud – Voice as a Service • Features • Easy deployment • Scalability • Secure by implementation • No voice distortion / quality issues • Can be deployed across multi geo locations • Plug and play for customers/users • Number follows you anywhere you go • Enablers • Current telcos providing VoIP PSTN in and out • Many hundreds of international bulk voice providers to choose from • Multi route for resilience • Location independent • Low cost of ownership • Extremely high broadband penetration rate • Negligible latency
  • 9. Asterisk on Azure – Why Azure? • Designed for Noobs (like me) • Not a MVP for Azure  • Customer satisfaction • No complaints • Supported with multiple Open Source OS flavors • We personally prefer Debian and Ubuntu • Has its own HA/LB method (explained later) • Extremely Fast, Extremely Scalable • Geographically suitable for Malaysia • Singapore, Hong Kong
  • 10. Asterisk on Azure – Why Azure? • Assume from here on, we are on the farther POP, Hong Kong • We deliberately did that for worst-case-scenarios • Latency is negligible (using SIP with uLaw, no compression, no encapsulation, no encryption) • Singapore was around 40ms-60ms • Hong Kong was around 70ms-80ms • ITU-T recommendation latency is 150ms for voice traffic (and 250ms roundtrip) • Low packet loss rate • Approximately 0.1%
  • 11. Asterisk on Azure – Why Azure? • Easy management UX • Adding ports was slow, otherwise, everything else is fast  • Build mobile solutions out from Azure • Connect to an AD ready Azure • For Authentication, Authorization on Asterisk • Unification of credentials, integration • Shared resources like disks can be helpful to share commonly used resources such as static configurations, etc.. • Easy Backup / Restore operations
  • 12. Our Demo Azure Asterisk HA • Distributed computing within Azure • Two SIP servers • One DB server (could also be 2 if we had more time) • Can also add proxies – But we didn’t have time • Can also add firewalls – But we didn’t have time • We use pfSense firewall in XML cluster mode for hacker bashing • Comes with firewalls, IPS/IDS and lots of other networking goodies • Uses Azure Cloud HA for targeting • Typically we use another method (explained later) • Uses common and easy HA methods on Linux
  • 13. Our Demo Azure Public Network Asterisk Master Asterisk Slave Asterisk HA Asterisk Configurator DB Azure Cloud HA Telco A Telco B
  • 14. Alternative Design Azure Asterisk HA Public Network pfSense 1 Proxy Kamailio Proxy Kamailio Asterisk Master Asterisk Slave DB Slave Azure Cloud HA Telco A Telco B DB Master pfSense 1 Virtual DMZ
  • 15. Our Demo Azure Asterisk HA Logical Illustration SIP USER PUBLIC LAYER AZURE CLOUD LAYER TCP PROBE WHICH ACTIVE SERVER RUNNING TCP 5060 WHICH ACTIVE SERVER RUNNING TCP 5060 ACTIIVE SERVER CONNECTS TO CONFIG DB
  • 16. Components in Demo Azure Asterisk • Asterisk 1.8 or higher • FreePBX 2.11 or higher • MySQL 5 • PHP • Heartbeat • DRBD • Tiny script to monitor safe_asterisk • Azure depends on port TCP5060 • Asterisk opens port TCP5060 • So, its really good to monitor Asterisk
  • 18. Steps to build Asterisk HA on Azure Checklist • Setup 3 Virtual Machines (VM) in Azure. • Assigning the VMs with the same cloud service. • Creating the necessary End points. • Attaching an Empty Disk on each VM. • Installation of Astiostech’s Asterisk Business Telephony • Installation of Astiostech’s High Availability Package.
  • 19. Steps to build Asterisk HA on Azure • Setup 3 Azure Ubuntu VM
  • 20. Steps to build Asterisk HA on Azure • Use the same Cloud Service on the Second and third VM
  • 21. Steps to build Asterisk HA on Azure • Create end points and check “CREATE A LOAD-BALANCED SET” to failover the necessary ports else leave it to run normally.
  • 22. 10 Steps to build Asterisk HA on Azure • Create an empty disk on two of the Asterisk VMs and attach it once done.
  • 23. Steps to build Asterisk HA on Azure • Installation of Astiostech’s Asterisk Business Telephony package. • MySQL database will be installed into the dedicated MySQL database server. ASTIOSTECH BTEL PBX FOP2 FreePBX MonAST APACHE * ASTERISK MYSQL LINUX OS
  • 24. Steps to build Asterisk HA on Azure
  • 25. Steps to build Asterisk HA on Azure
  • 26. Steps to build Asterisk HA on Azure There are 2 major components in our HA package 1. Heartbeat • Heartbeat is a daemon that provides cluster infrastructure (communication and membership) services to its clients. 2. DRBD
  • 27. Steps to build Asterisk HA on Azure DRBD refers to block devices designed as a building block to form high availability (HA) clusters. This is done by mirroring a whole block device via an assigned network. DRBD can be understood as network based raid-1.
  • 28. Demo Overview SLAVE heartbeat Replication TM MASTER (ACTIVE) astiosmaster.cloudapp.net Ext: 1000 Ext: 1001 Anthony s Cell Phone
  • 29. Demo calling from Master server • Ext.1000 Calling Ext.1001 • Outbound Calls – Ext.1000 calling an external number. • Inbound Calls - An external caller calling in to the Extension 1001. SLAVE heartbeat Replication TM MASTER (ACTIVE) astiosmaster.cloudapp.net Ext: 1000 Ext: 1001 Anthony s Cell Phone
  • 31. Demo calling from Slave server • Asterisk PBX Fails over to the SLAVE server. • PBX Phone function will just work like normal. SLAVE (ACTIVE) heartbeat Replication TM MASTER astiosmaster.cloudapp.net Ext: 1000 Ext: 1001 Anthony s Cell Phone
  • 34. Field tips and tricks • Enable Asterisk’s TCP 5060 Ports for Azure Cloud monitoring. • Since Azure monitors HTTP or TCP ports only • Enable a daemon service [demo] to monitor Asterisk • In case Asterisk goes down, initiate failover/failback • All other ports should then be “instructed” by the TCP 5060 via Azure, • You might want to enable individual ports for SSH • But you cannot use the same public facing port twice
  • 35. Q&A & Thank You Copyright 2014 © Astiostech Sdn Bhd. For informational purposes only. No warranties of any kind are made and you have to verify all information before relying on it. You can re-use this presentation as long as you read, agree, and follow the guidelines described in the “Comments” field in File/Properties. Openness is the future of computing..