Building a CloudStack UI for the Enterprise



Similar documents
Considerations for Adopting PaaS (Platform as a Service)

Managed Cloud Services

Enterprise PaaS Evaluation Guide

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

1.1 SERVICE DESCRIPTION

DevOps. Josh Preston Solutions Architect Stardate

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment

What is new for HP LoadRunner and Performance Center 11.52

NE-20247D Configuring and Deploying a Private Cloud

Oracle Reference Architecture and Oracle Cloud

Journey to the Cloud and Application Release Automation Shane Pearson VP, Portfolio & Product Management

Configuring and Deploying a Private Cloud

Configuring and Deploying a Private Cloud

Het is een kleine stap naar een hybrid cloud

A Brief Overview. Delivering Windows Azure Services on Windows Server. Enabling Service Providers

Cisco Network Services Manager 5.0

Stackato PaaS Architecture: How it works and why.

MS 20247C Configuring and Deploying a Private Cloud

Configuring and Deploying a Private Cloud

20247D: Configuring and Deploying a Private Cloud

Introduction to CoprHD: An Open Source Software Defined Storage Controller

Configuring and Deploying a Private Cloud. Day(s): 5. Overview

Moving beyond Virtualization as you make your Cloud journey. David Angradi

Platform Architecture & Integration with OpenShift

Course Outline. Course Details Course code: 20246D Duration: 5 days Starting time: 9am Finishing time: 4.30pm Lunch and refreshments are provided.

Configuring and Deploying a Private Cloud with System Center 2012 MOC 10751

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

Linux A first-class citizen in Windows Azure. Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise

Firenze. Iottly, open source Internet of Things distribution

SOFTWARE DEFINED NETWORKING

Monitoring and Operating a Private Cloud MOC 20246

Jenkins World Tour 2015 Santa Clara, CA, September 2-3

Building a Continuous Integration Pipeline with Docker

Workspace & Storage Infrastructure for Service Providers

Monitoring and Operating a Private Cloud

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

SOLUTION BRIEF Citrix Cloud Solutions Citrix Cloud Solution for On-boarding

Vistara Lifecycle Management

Axway API Portal. Putting APIs first for your developer ecosystem

Platform as a Service and Container Clouds

MS 10751A - Configuring and Deploying a Private Cloud with System Center 2012

TRAVERSE: VIRTUALIZATION AND PRIVATE CLOUD MONITORING

Intel IT s Cloud Journey. Speaker: [speaker name], Intel IT

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

Testing Tools using Visual Studio. Randy Pagels Sr. Developer Technology Specialist Microsoft Corporation

Configuring and Deploying a Private Cloud 20247C; 5 days

AZURE / HYBRID SCENARIOS. M a n a g i n g C o n s u l t a n t

70-414: Implementing a Cloud Based Infrastructure. Course Overview

Java PaaS Enabling CI, CD, and DevOps

Oracle WebLogic Server: Remote Monitoring and Management

depl Documentation Release depl contributors

Microsoft Private Cloud

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

Modern Web development and operations practices. Grig Gheorghiu VP Tech Operations Nasty Gal

Apache Stratos Building a PaaS using OSGi and Equinox. Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos

MS-20246: Monitoring and Operating a Private Cloud

Join the Lean Wave. Asanka Abeysinghe Director, Solutions Architecture. WSO2, Inc. Friday, July 22, 11

Course 20246: Monitoring and Operating a Private Cloud

SharePoint 2010 Interview Questions-Architect

Cloud.. Migration? Bursting? Orchestration? Vincent Lavergne SED EMEA, South Gary Newe Sr SEM EMEA, UKISA

BMC Cloud Management Functional Architecture Guide TECHNICAL WHITE PAPER

Enterprise Cloud Solutions

BMC Middleware Management.

Transformation to a ITaaS Model & the Cloud

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

How To Compare The Cost Of A Microsoft Private Cloud To A Vcloud With Vsphere And Vspheon

Enterprise IT is complex. Today, IT infrastructure spans the physical, the virtual and applications, and crosses public, private and hybrid clouds.

Building an Enterprise Cloud with F5 and IBM

OpenShift Enterprise PaaS by Red Hat. Andrey Markelov RHCA Red Hat, Presales Solution Architect

Developing in the Cloud Environment. Rosalind Radcliffe IBM Distinguished Engineer, IBM Academy of Technology

PaaS - Platform as a Service Google App Engine

MarkLogic 8: Samplestack

WHITE PAPER Redefining Monitoring for Today s Modern IT Infrastructures

Open Source Multi-Cloud, Multi- Tenant Automation in the cloud with SlipStream PaaS

EMPLOYEE REFERRAL PROGRAM - US

Simplified Private Cloud Management

HP Cloud technologies

Consumption IT. Michael Shepherd Business Development Manager. Cisco Public Sector May 1 st 2014

Cisco Prime Network Services Controller. Sonali Kalje Sr. Product Manager Cloud and Virtualization, Cisco Systems

Lunch and Learn: BlueMix to Mainframe making development accessible in the

Course 10751A: Configuring and Deploying a Private Cloud with System Center 2012

A central continuous integration platform

Cloud Platforms, Challenges & Hadoop. Aditee Rele Karpagam Venkataraman Janani Ravi

Big Data with the Google Cloud Platform

Nevepoint Access Manager 1.2 BETA Documentation

Enterprise Mobile App Management Essentials. Presented by Ryan Hope and John Nielsen

Monitoring and Operating a Private Cloud

CloudStack Metering Working with the Usage Data. Tariq Iqbal Senior

OSGi Service Platform in Integrated Management Environments Telefonica I+D, DIT-UPM, Telvent. copyright 2004 by OSGi Alliance All rights reserved.

Planning, Provisioning and Deploying Enterprise Clouds with Oracle Enterprise Manager 12c Kevin Patterson, Principal Sales Consultant, Enterprise

Transcription:

Building a CloudStack UI for the Enterprise David Grizzanti, Bill Jones Sungard Availability Services 2014 Sungard AS. All rights reserved. CCCNA 14 - APRIL 10TH, 2014 - DENVER, CO

Overview! Who are we? David Grizzanti (Software Engineer @ Sungard AS) Bill Jones (Software Engineer @ Sungard AS)! Cloud Engineering @ Sungard Availability Services Current Cloud Offering & why CloudStack is the future! What s unique about our UI Features Technologies we re using! Overall Architecture! Integrating with CloudStack! Demo! Continuous Integration 2

About Sungard Availability Services Sungard Availability Services provides IT Operations support to IT departments that need to ensure business viability by keeping mission critical information and applications up and running. Sungard AS provides tailored enterprise cloud services, as well as innovative solutions including:! Disaster Recovery! Managed Hosting! Software! Consulting As of March 31 st, 2014 Sungard AS was split from Sungard and became a separate, independent company.

Cloud Engineering at Sungard AS Current Cloud Platform! Enterprise Cloud Services we operate a shared, multi-tenant infrastructure! We provide a fully managed Virtual Data Center environment for our customers! Our customers get cloud economics and agility without needing to re-architect their applications! We currently use traditional network isolation and security techniques! We have developed our own orchestration platform for our fully automated service provisioning Issues with this approach! Runs on complicated hardware! Difficult to perform upgrades, general lifecycle issues! Need for a self-service option 4

Cloud Engineering at Sungard AS Future/Choosing CloudStack! We are growing, so scaling is a concern! Customers want more flexibility and provide more customization! Improve reliability of provisioning automation! Provide more features to customers in an agile fashion! Need for a Public cloud as well as enterprise offerings What UI do we offer our customers? 5

UI: Necessary Features Self Service! Ability to enter credit card and spin up a VM within minutes Utility Billing! Customer shouldn t be blocked from adding more capacity Cost Control! Customers can see projected spend and manage budgets across their entire company Make it straightforward and easy to use! 6

UI: What sets us apart Real Time Notifications to the UI! Integrates with Event Bus/RabbitMQ Elevated Permissions on top of API! Allow more than just ROOT Admin to administer accounts Roles! Allow for multiple user Roles above what CloudStack provides Customer centric UI! Workplace concept to integrate CloudStack resources and billing 7

Overall Architecture Client/Browser Unified Cloud Portal CloudPlatform Hermes Bunny Ears SockJS Web Single Sign On Billing Integration API

Let s talk about the tech!! Ruby (Bunny Ears) Worker that s reading from RabbitMQ! Ruby on Rails Main web app (running under nginx + unicorn)! Node.js (Hermes) Notifies client/browser of changes CloudStack resource state! Backbone.js/Marionette.js + SockJS(WebSockets) Javascript frameworks used to drive UI changes in the browser Websockets keep connection open to Node.js for updating client s browser! Redis Storing information related to each async job User invites! Bootstrap Responsive front-end framework 9

Working with the CloudStack API Benefits! Fully featured API! Async Jobs Web Job Management! Storing request parameters + Job ID in Redis for retrieval and correlation Areas for improvement! Better permissions model (this is already in progress)! A Truly RESTful interface! Consistency around responses for all requests (async and non-async) 10

Example

Working with the Event Bus Benefits! Real time notifications (async jobs results)! No polling required Hermes Client/Browser Bunny Ears Node.js + SockJS (Websockets)! Worker process reads from RabbitMQ! Queries CloudStack/Redis! Sends events to Hermes -> Client s browser Areas for improvement! Multiple events types can sometimes be confusing! Data spread across more than 1 event! Incorrect information included in events 12

Overall Architecture Client/Browser Unified Cloud Portal CloudPlatform Hermes Bunny Ears SockJS Web Single Sign On Billing Integration API

Let s see a Demo!

VM Creation

VM Events

Network Configuration

Testing is Hard Try as hard as possible to TDD Tried to use VCR in the beginning The rise and fall of Smokestack! Built a replica of CloudStack for integration testing (well, almost)! Became too much work to maintain! Went with simulator (quicker on dev cycle) Test Coverage! Code Climate! Quality & security analysis for Ruby on Rails and Javascript 18

Continuous Integration with CloudStack Typical Flows! Run master after each push! Job in jenkins to build new projects for each new branch we push, auto-build on intial push or update! Both master and feature branches run full unit and integration tests Run full test suite after every code push! Challenge of trying to run integration tests on every push! Using CloudStack Simulator for feature tests Pool of CloudStack instances Vagrant/VirtualBox + Rails app to handle resetting each instance after use 19

Simulator Pool

Next Steps Move to Docker? Docker CloudStack Simulator! github.com/dgrizzanti/docker-cloudstack-simulator 21

Tools for sharing Built a fully featured ruby client for CloudStack (StackerBee)! Exception handling! Idiomatic Ruby formatting for names (snake_case vs mixedcase)! Handling of map parameters! Configurable API version! CloudStack REPL! Faraday HTTP lib (configurable middleware)! Exposes console access URL! Tests! github.com/promptworks/stacker_bee Vagrant CloudStack Simulator! github.com/promptworks/vagrant-cloudstack-simulator 22

Logging Tracing requests while testing! Need a reliable way to trace a request all phases of the application! UI -> CloudStack! CloudStack -> RabbitMQ -> BunnyEars -> Hermes -> Client 23

Credits/Acknowledgements 24

Questions? David Grizzanti @dgrizzanti david.grizzanti@sungardas.com Bill Jones bill.jones@sungardas.com