kazoocon 2014 - deploying kazoo globally

18
Deploying Kazoo Globally Dayton Turner, Founder + CEO, Voxter KazooCon 2014

Upload: james-solada

Post on 10-Jul-2015

1.641 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: KazooCon 2014 - Deploying Kazoo Globally

Deploying Kazoo GloballyDayton Turner, Founder + CEO, Voxter

KazooCon 2014

Page 2: KazooCon 2014 - Deploying Kazoo Globally

Overview

•Who are we, and how do we use Kazoo?

•Challenges in managing a global Network

•How Kazoo makes that easier, and how we work with it

globally (zones and clusters!)

•Contributions to Kazoo

•Demos!

Page 3: KazooCon 2014 - Deploying Kazoo Globally

Who are we? What do we

do?•Helping customers make better decisions since 2005

•Canadian, eh!

•Using Kazoo for 3-ish years, after building a very similar

stack, finding Kazoo, and realizing Kazoo was had

stronger architectural design

•Selling Hosted PBX to businesses, and helping

integrators and other technology companies sell VoIP

without as much derp-ery.

Page 4: KazooCon 2014 - Deploying Kazoo Globally

Custom GUI / 3rd Party

Integrations• Integrate with the likes of:

•Dyn, NSone, Freshbooks, Beanstream,

Salesforce.com, SugarCRM, etc.

•Built a custom GUI for managing reseller-level accounts

•Network-wide DID Manager, “Macro-based”

account/extension additions

•WebRTC Phone

•We built a provisioner, too.

Page 5: KazooCon 2014 - Deploying Kazoo Globally
Page 6: KazooCon 2014 - Deploying Kazoo Globally
Page 7: KazooCon 2014 - Deploying Kazoo Globally
Page 8: KazooCon 2014 - Deploying Kazoo Globally

Where we exist

• International POPs:

•Vancouver, BC

•San Jose, CA

•Toronto, ON

•Miami, FL

•Dominica

•London, UK

•Tokyo, JP is next!

Page 9: KazooCon 2014 - Deploying Kazoo Globally

What we’ve learned along

the way• Internationalization

•General Architecture, Routing, Internationalization (language, time, tones, numbering), Business (Rating, pricing, etc)

•Availability

•Zones, Clusters, DNS, Backups, Replication

•Operations

•Monitoring, Alerting, Logging, Scaling, and managing globally (sup, API, GUIs)

Page 10: KazooCon 2014 - Deploying Kazoo Globally

Internationalization

•E911, DID ownership can be challenging (and different

everywhere)

•Tone Zones, Time Zones, Language Settings, e.164

formatting is important and requires attention

•Routing inside of an international Kazoo cluster may not

behave as you expect – DNS is important!

• International call rating, invoicing, pricing has its own

challenges. Currency, “local calling areas”, taxes, oh

my!

Page 11: KazooCon 2014 - Deploying Kazoo Globally

Availability

•Zones: Use them! They need to be set up properly

though.

•Clusters: Make sure you can survive on the machines

in only that data center

•DNS: DNS SRV is your friend. Geo-aware DNS with

custom SRV responses is your best friend.

•Backups/Replication: Couch is revision based, but a

delete is not a revision. Be careful, and have a static

backup at the ready

Page 12: KazooCon 2014 - Deploying Kazoo Globally
Page 13: KazooCon 2014 - Deploying Kazoo Globally

Operations

•Monitoring: Diamond, InfluxDB, Graphite-API, Grafana,

SUP, Sensu, CrossBar, oh my!

•Alerting: Sensu, Pagerduty, even HipChat!

•Deployment: Puppet (FW, Auth, OS pkgs, roles)

•Logging: rsyslog, logstash, elasticsearch, Kibana

•Management Tools: Bash completion for sup!, patches

to some whapps for remote phone reboot, community

scripts on github

Page 14: KazooCon 2014 - Deploying Kazoo Globally

Contributions

•Check github.com/2600hz/community_scripts

•Bash completion for sup

•SIP check_sync in ecallmgr

•Patch to support caller ID prepends with dashes

•Patch to have a callflow object to “set” CID

• find_account_by_id, check_initial_call,

check_initial_registration

•BigCouch shard/node updater

Page 15: KazooCon 2014 - Deploying Kazoo Globally

Partner/Community

Participation•We’re building:

•AMI <-> Kazoo Translation Bridge

•CNAM Lookup, ”On-net” (Offnet) Kazoo Query Tool

Let’s get everyone involved!

We’re not competing with each other, we’re competing

with the ILECs

Page 16: KazooCon 2014 - Deploying Kazoo Globally

Quick Demo of

Monitoring/Alerting

Page 17: KazooCon 2014 - Deploying Kazoo Globally
Page 18: KazooCon 2014 - Deploying Kazoo Globally

Thank you #kazoocon14!

Dayton Turner, CEO,

Voxter@voxter

@daytonturner