Slide 1

Slide 1 text

OpenStack and Software Engineering – Questions and everything else about OpenStack Thomas Lee – CEO @ Wingu Stephan Ludik – Programme Manager @ Wingu

Slide 2

Slide 2 text

Background  Wingu operates an OpenStack powered Public Cloud  3 ½ years of OpenStack experience  Ubuntu Certified Cloud Partner  Operates a production cloud with customers for 2 ½ years  Started with OpenStack Juno, now on Mitaka release  Code improvements to OpenStack gets upstreamed via Canonical  Supports and develops the Tachyon Python open source web framework

Slide 3

Slide 3 text

What is OpenStack? OpenStack is cloud control software, designed to control vast amounts of compute, storage and networking resources. OpenStack is not a product! OpenStack is an extendible framework that allows you to build the cloud platform you need.

Slide 4

Slide 4 text

Basic OpenStack Architecture

Slide 5

Slide 5 text

What can OpenStack automate?  Compute (Nova, Glance, Ironic, Magnum)  Storage, backup and recovery (Swift, Cinder)  Networking and content delivery (Neutron, Designate)  Data and analytics (Trove)  Security, identity and compliance (Keystone, Barbican)  Management tools (Horizon, Rally, OpenStack CLI)  Deployment tools (Chef, Ansible, Charms, Puppet, Kolla)  Application services (Heat, Zaquar, Murano)  Monitoring and metering (Ceilometer, Monasca, Cloudkitty)

Slide 6

Slide 6 text

OpenStack factoids  Currently 46 major projects with more in incubation  Largest open source project, 100% developed in Python  Code contributions from +- 7000 individuals and +- 300 companies per release  Mature technology – currently 16th release, Pike, available  Massive 3rd party technology ecosystem  Reference customers include PayPal, Walmart, BMW, Wingu, CERN, AT&T, Snapdeal, etc  Certification training is available  Well documented at http://docs.openstack.org

Slide 7

Slide 7 text

OpenStack use cases Many use cases, but we’ll focus on this: Development cloud  Build on basic IaaS (storage, compute, networking)  Use the OpenStack Heat Orchestration Template (HOT – we’ll demo this later) engine or API’s to rapidly provision instances  Add container technology (Docker, Kubernetes, Terraform etc)  Bare metal provisioning available (Ironic)  DbaaS can be used for SQL or NoSQL  Simple Message Service for apps (Zaqar)  Use your favourite DevOps tools (Juju, Chef, Puppet, Ansible etc)  Build systems that deploy to OpenStack, Amazon, Google Compute and Azure

Slide 8

Slide 8 text

OpenStack vs Traditional virtualization Cost structure  No license fees! Choose commercial support subscription if your platform is mission critical  Build on commodity x86 hardware – Capex savings  Software defined everything  Use low cost white label switches – build overlay networks in software Benefits  Fully API driven  Extensible  Rapid feature velocity  3rd party vendor ecosystem  Open source!  No vendor lock in

Slide 9

Slide 9 text

How to build OpenStack Build models  Classic or Hyper-converged?  Hyper converged with HA requires 12 servers with 2 sets of specs (great for your first cloud)  Classic requires 15 servers of 3 sets of specs (great if you need to scale compute and storage independently)  Choose your weapon (Juju, Salt, Ansible etc) Hardware  2 x 48 port 10GbE switches (can be low cost white label)  2 x 24 port 1 GbE switches from your old IT cabinet  OpenStack loves SuperMicro, Dell or HP for servers  Compute nodes typically has 768GB+ RAM, 2 x XEON E5 26xx CPU’s, 4 x 10 GbE and 2 x 1 GbE interfaces Roles  Control (OpenStack services)  Compute  Storage monitors  Storage OSD nodes

Slide 10

Slide 10 text

Demo time!

Slide 11

Slide 11 text

OpenStack Demo Demo sequence Login to Horizon – show empty project. In the interest of time, run start.py (takes around 8 minutes to complete) Demo overview The demo script will provision an instance via the OpenStack Heat orchestration tool using a .hot template.  The hot template includes provisioning of a virtual server, public IP and Ansible on the instance.  Ansible is used to automatically install Django and all dependencies (Nginx etc) and a small web application (hello world) by running a playbook.  Prove we run Django by showing the admin page. Clone demo files from https://github.com/TachyonProject/wingu-demo. All integration of systems was done using OpenStack python clients on local machine, installed via requirements.txt (pip install -r requirements.txt)

Slide 12

Slide 12 text

OpenStack Demo

Slide 13

Slide 13 text

OpenStack Demo Review OpenStack project via Horizon

Slide 14

Slide 14 text

Q & A

Slide 15

Slide 15 text

Thank you! [email protected] [email protected] www.wingu.co.za