24
Making Stuff Better Making Stuff Better Through Cloudstack Through Cloudstack Deploying cloud-based phone systems

CloudStack EU User Group - Making stuff better through CloudStack

Embed Size (px)

Citation preview

Page 1: CloudStack EU User Group - Making stuff better through CloudStack

Making Stuff Better Through Making Stuff Better Through CloudstackCloudstackDeploying cloud-based phone systems

Page 2: CloudStack EU User Group - Making stuff better through CloudStack

• IT Service Provider• Mobile, WAN, Telephony, Datacentres, Managed

Services• One of the UK’s largest Mitel Phone System

resellers

Page 3: CloudStack EU User Group - Making stuff better through CloudStack

• Lead Data Analytics Team– Software Development– Monitoring & Data– IT Architecture

• Built our ACS platform in 2013• Areas of Interest

– Making things better through technology– Building great teams

Page 4: CloudStack EU User Group - Making stuff better through CloudStack

• Member of the Data Analytics Team (joined in January)• Proud father of two• Ph.D. in Computer Science• Areas of interest

– Software Engineering– Security/Data Privacy– Automation/Integration– Scalability– System Architecture

• New to cloudstack

Page 5: CloudStack EU User Group - Making stuff better through CloudStack

• Mitel licensing changes allowed for consumption-based usage

• Using a 3rd party to host cloud-based Mitel systems• Decided to host in-house• Needed to be VMWare• Existing Cloudstack platform was chosen

– more because we had high hopes for the possibilities rather than us actually knowing how we would do things

Page 6: CloudStack EU User Group - Making stuff better through CloudStack

• Apache Cloudstack • (with support from Shape Blue)• VMWare ESXi (Xen too)• Brocade Switches• Netapp Storage• Mitel virtual appliances

– Custom Linux builds– Some Windows

• Our own MPLS network plus direct carrier integration

Page 7: CloudStack EU User Group - Making stuff better through CloudStack

• VPC per customer• Or across two Zones for a resilient option• Up to 25 virtual machines across two Zones• SIP and WAN networks delivered to each VPC• 180+ firewall rules

Page 8: CloudStack EU User Group - Making stuff better through CloudStack

• Hosted on traditional VMWare• Required lots of resource

– Network x2– Virtualisation– Mitel – PM

• Too many handoffs between teams• Manual builds• Too much TIME!

Page 9: CloudStack EU User Group - Making stuff better through CloudStack

• API driven deployments• Simple UI for Mitel Engineers to do the (almost) full

deploy• Cut down on handoffs• Build in repeatability• Simplify the options

Page 10: CloudStack EU User Group - Making stuff better through CloudStack

• Hosted on Cloudstack• Requires LESS resource

– Network x 1– Mitel

• Automated infrastructure builds (mostly)

Page 11: CloudStack EU User Group - Making stuff better through CloudStack

• Automation of core network• Configuration of Mitel appliances• Replication• Modifications• Upgrades

Page 12: CloudStack EU User Group - Making stuff better through CloudStack

• Fast• Consistent• Cost-effective (less people, faster)• Autonomy for the Mitel team• Driving Innovation

– Automation– Challenging existing thought processes

• Breaking down tech silos

Page 13: CloudStack EU User Group - Making stuff better through CloudStack
Page 14: CloudStack EU User Group - Making stuff better through CloudStack
Page 15: CloudStack EU User Group - Making stuff better through CloudStack
Page 16: CloudStack EU User Group - Making stuff better through CloudStack

• Written in PHP• Running against cloudstack 4.5• Based on: https://github.com/qpleple/cloudstack-php-client

code stats

integration tests

unit tests

Page 17: CloudStack EU User Group - Making stuff better through CloudStack

• API-driven model is awesome• API documentation covers all API services and their

fields• Asynchronous calls• Resilient API service

Page 18: CloudStack EU User Group - Making stuff better through CloudStack

• Use of identifier everywhere but for account• API-driven but it is getting messy

– Create a VM: 33 fields– List VMs: 62 fields (top level only)

• Documentation:– No definition of each type of field– individual APIs do not state whether they are async or not– Basic description per field (typos)

Page 19: CloudStack EU User Group - Making stuff better through CloudStack
Page 20: CloudStack EU User Group - Making stuff better through CloudStack

• We would still use cloudstack but …

Page 21: CloudStack EU User Group - Making stuff better through CloudStack

• Handles the creation of most cloudstack components• Handles the dependencies among resources• Allows modifications of deployments

Page 22: CloudStack EU User Group - Making stuff better through CloudStack
Page 23: CloudStack EU User Group - Making stuff better through CloudStack

• Run as a daemon/service (cli application instead) • Manage:

– domains– accounts– users

• Report progress during a run (feed UI)

Page 24: CloudStack EU User Group - Making stuff better through CloudStack

• Any Questions?