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



Similar documents
The Evolution of PaaS QCon London 2012

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

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON

Déployer son propre cloud avec OpenStack. GULL François Deppierraz

Scale Cloud Across the Enterprise

Enterprise PaaS Evaluation Guide

OpenShift on you own cloud. Troy Dawson OpenShift Engineer, Red Hat November 1, 2013

Certified Cloud Computing Professional VS-1067

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic

Comparing Open Source Private Cloud (IaaS) Platforms

DevOps. Josh Preston Solutions Architect Stardate

Apache Stratos (incubating) M5 Installation Guide

OpenShift 3.0 in the Sogeti Services Factory

Cloud Hosting. QCLUG presentation - Aaron Johnson. Amazon AWS Heroku OpenShift

Comparing Ganeti to other Private Cloud Platforms. Lance Albertson

The future of middleware: enterprise application integration and Fuse

PaaS solutions evaluation

Java PaaS Enabling CI, CD, and DevOps

Open Source Cloud Technology for Enterprise Computing

Securing the Internet of Things

Razvoj Java aplikacija u Amazon AWS Cloud: Praktična demonstracija

Introduction to Cloud Computing

How to choose the right PaaS Platform?

Cloud Models and Platforms

Jfokus PaaS Hands-On Lab

Deploying Your Application On Public Cloud

w w w. u l t i m u m t e c h n o l o g i e s. c o m Infrastructure-as-a-Service on the OpenStack platform

Management for the Mobile-Cloud Era

OpenShift on OpenStack

Networks and Services

Oracle Applications and Cloud Computing - Future Direction

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Amazon Elastic Beanstalk

openshift enterprise whitepaper Gordon Haff

Distributed Cloud Computing Platform as a Service (PaaS) Analysis and Recommendations

Open Source Middleware for the Cloud Stratos. Dimuthu Leelarathne Technical Lead and Product Manager

OpenStack Alberto Molina Coballes

OpenStack. Orgad Kimchi. Principal Software Engineer. Oracle ISV Engineering. 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Virtualization and Cloud Computing

AppStack Technology Overview Model-Driven Application Management for the Cloud

Last time. Today. IaaS Providers. Amazon Web Services, overview

PaaS - Platform as a Service Google App Engine

Cloud Computing: Making the right choices

CloudStack and Big Data. Sebastien May 22nd 2013 LinuxTag, Berlin

Oracle Reference Architecture and Oracle Cloud

Integration in the cloud - IPaaS with Fuse technology. Charles Moulliard Apache Committer

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

An Introduction to Cloud Computing Concepts

Scalable Architecture on Amazon AWS Cloud

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

White Paper. Cloud Native Advantage: Multi-Tenant, Shared Container PaaS. Version 1.1 (June 19, 2012)

Software as a Service (SaaS) and Platform as a Service (PaaS) (ENCS 691K Chapter 1)

NCTA Cloud Operations

Crash Course in Open Source Cloud Computing. David Nalley CloudStack Community Manager

The Virtualization Practice

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

Cloud Computing. Adam Barker

Ensuring High Service Levels for Public Cloud Deployments Keys to Effective Service Management

FLOSSK: FLOSSTalk OpenStack 22 nd February, Arturo Suarez: Founder, COO&BizDev StackOps 21/02/12 1

Intel IT Cloud Extending OpenStack* IaaS with Cloud Foundry* PaaS

OpenStack Introduction. November 4, 2015

Subash Krishnaswamy Applications Software Technology Corporation

Cloud Computing Training

Efficient Network Marketing - Fabien Hermenier A.M.a.a.a.C.

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

2013 ovh.com. All rights reserved

Must Haves for your Cloud Toolbox Driving DevOps with Crowbar and Dasein

Microservices and Containers in the Middleware World

Cloud/SaaS enablement of existing applications

Cloud computing - Architecting in the cloud

Cloud Computing Architecture with OpenNebula HPC Cloud Use Cases

KT ucloud storage. Two Years of Life with OpenStack Swift / Jaesuk Ahn, Cloud OS Dev. Team, Korea Telecom

Code in the cloud for the cloud jfokus.mybluemix.net

CLOUD COMPUTING. When It's smarter to rent than to buy

Drupal in the Cloud. Scaling with Drupal and Amazon Web Services. Northern Virginia Drupal Meetup

OpenShift and Cloud Foundry PaaS: High-level Overview of Features and Architectures

Using Red Hat Systems Management Tools in a Hybrid Cloud

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

Cloud Computing #8 - Datacenter OS. Johan Eker

The Road To enterprise paas

Optimizing Service Levels in Public Cloud Deployments

Cloud Computing. A new kind of developers? Presentation by. Nick Barcet nick.barcet@canonical.com

Da Internet delle persone a Internet delle cose. Giovanni Pirola Regional Service Manager Red Hat, Inc. November 19th 2014

EIGHT. Opportunities for Enterprise Modernization

Bla Bla Bla Cloud. Massimo Re Ferre VMware Staff Systems Engineer vcloud Architect VMware Inc. All rights reserved

Oracle WebLogic Server: Remote Monitoring and Management

MADFW IaaS Program Review

PLATFORM-AS-A-SERVICE, DEVOPS, AND APPLICATION INTEGRATION. An introduction to delivering applications faster

Distributed Cloud Computing Platform as a Service (PaaS) Analysis and Recommendations

Dynamic Deployment and Scalability for the Cloud. Jerome Bernard Director, EMEA Operations Elastic Grid, LLC.

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

CHAPTER 8 CLOUD COMPUTING

Red Hat Openshift Christoph Eberle

Assignment # 1 (Cloud Computing Security)

Becoming a Cloud Services Broker. Neelam Chakrabarty Sr. Product Marketing Manager, HP SW Cloud Products, HP April 17, 2013

Azure Day Application Development

How To Develop An Org Cloud Based Powerware For An Onpremise Cloud Environment

Cloud Computing and Big Data What Technical Writers Need to Know

Transcription:

Apache Stratos Building a PaaS using OSGi and Equinox Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos @pzfreo #wso2 #apache paul@wso2.com pzf@apache.org 1

About me CTO and Co- Founder WSO2 o Working in Apache for 14 years o Working with Cloud, SOA, APIs, MQTT, IoT o Also presenqng tomorrow about IoT security (M2M day 14:15) o 2

The Small Print Disclaimer Apache Stratos is an effort undergoing incubation at The Apache Software Foundation (ASF). Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. 3

4

Today s Buzzword Bingo! PaaS Cloud Elastic Policy Auto-Scale DevOps jclouds Puppet Platform IaaS Chef Cassandra Multi-tenant Load Balancer Governance Monitoring 5

6 What is a PaaS anyway?

Gartner Reference Model for Pla0orm as a Service SaaS Applications PaaS Integrated PaaS Platform Management, Monitoring, Governance, Provisioning ApplicaQon Pla]orm PaaS Service Offerings IntegraQon Pla]orm Business Process Management Pla]orm Cloud Database Pla]orm PaaS Technology Core Cloud Value Foundation User Experience Pla]orm Other (Shared Resources, Multitenancy, Self-Service, Elasticity, Real-Time Versioning, Metadata Management, Subscription/Use Billing) Integrated PaaS Application Modeling, Design, Development, Maintenance, Life Cycle Management Cloud Performance Foundation (In-Memory Computing, Grid/Massive Scale, Auto-Scaling, SLA Enforcement, Use Tracking, High Availability, Security, Data Integrity, Parallel Processing) IaaS System Infrastructure or System Infrastructure Services (IaaS) Hardware

What is Cloud? o Depends who you are o My daughter: icloud (her music in the cloud) o My mum: gmail (her email in the cloud) o My VP sales: Salesforce (his prospects in the cloud) o Sysadmin: Amazon/Rackspace/etc (his infrastructure in the cloud) o *: what you care about, self- provisioned, managed, metered and paid per use, in the cloud 8

PaaS is a cloud for developers o Provisioning stuff developers care about: o Not VMs, networks and disk (though that might sqll be useful) o ApplicaQon environments, databases, queues o Dev / Staging / ProducQon o Different runqmes: o Java Servlet/Tomcat, Node.js, PHP, Python o MySQL, MongoDB, Cassandra o Etc o Working with Git, SVN, Jenkins, etc 9

Who needs a PaaS anyway? o Anyone who wants to provision applicaqon environments on- the- fly o A basis for mulq- tenant SaaS applicaqons o ElasQc scaling and management of the infrastructure o ApplicaQon based monitoring of the environment o More intelligent use of resources 10

What is Apache Stratos? A Pla]orm- as- a- Service (PaaS) Framework Built on OSGi and Equinox Donated to Apache Solware FoundaQon CommiCers from Cisco, Citrix, SunGard, Indiana U, NASA JPL, etc Deploys onto an Infrastructure- as- a- Service (IaaS) Including Amazon EC2, VMWare vcloud, OpenStack etc Creates a secure, mulq- tenant, elasqc, metered, billed PaaS Supports private, public or hybrid PaaS

Quick Demo o Warning: this is alpha solware o Running on Amazon o Accessed via Conference wifi o Hmmm? Ok who s idea was that 12

13

14

Why OSGi? o A set of servers that need to be deployed in different architectures: o Single JVM for developer tesqng / small footprint o Scale- out for large scale deployment o Re- usable components from a wider set of middleware o Message Broker o HTTP Load Balancer o IdenQty Services o Logging and Metering o etc 15

Carbon Framework WSO2 2011

Carbon Component Manager WSO2 2011

More on Carbon o Based on Equinox o Using p2 feature model o Allows components to be managed and deployed from either local or remote repo o Handles versions and dependencies o Supports rollback o Command line p2 management and OSGi Console o Consistent model for scaling o Master/Slave + Deployment Synchronizer o Consistent Registry/Repository o Security model 18

Lessons learnt from Carbon o OSGi is a bit of a pain someqmes o We hide as much as possible from end- users o Used properly it enables massive producqvity gains o Small company with > 15 products and world class deployments o Small teams can be producqve o End users can enhance the products with their own components o MinificaQon o Scaling out 19

What does a PaaS look like > stratos subscribe- cartridge php myphp - - repo- url hcps://github.com/pzfreo/php- s4 - - deployment- policy economy Subscribes to a runqme (e.g. php) > git push php- s4 Auto deploys the code into the cartridge 20

Stratos Layered Architecture

Stratos Cartridges A component which can be plugged into Stratos, so that it can use Stratos core services of the framework layer Cloud- aware pla]orm environment extending legacy technologies into the cloud and delivering cloud benefits Users/DevOps may create custom cartridges and host any applicaqon, container, or framework in a Stratos Cloud. (Eg: node.js, Ruby, MongoDB, Wordpress,.net, Oracle WebLogic or JBoss SOA Pla]orm..etc Single tenant or mulq- tenanted

Stratos Cartridges

Puppet o Puppet o Powerful devops and provisioning tool o Used by the cartridges to auto- provision o Today to create a cartridge you basically build a puppet script o Next step is that will be a generic Puppet cartridge 24

MulG- factored Auto Scaling Integrate both real- Qme and rule- based decision making Scaling algorithm can use mulqple- factors Capable of predicqng future load

Scalable and Dynamic Load Balancing Comes with an HTTP Load Balancer as a cartridge Service level load balancing Auto Scaling load balancers External load balancer integraqon support Supports HAProxy for non- HTTP loads

Cloud BursGng

Controlling IaaS Resources ParGGons Logically group IaaS resource locaqons ParQQons are important to make applicaqon high availability Cartridge instances are spawned inside these parqqons ParQQons are defined by DevOps Network ParGGons Logical groups of mulqple parqqons, that are in the same network. Stratos will spawn Load Balancers per network parqqon. Since LB instances and cartridge instances reside in same network, they can communicate using private IP addresses. Used in deployment policies.

Smart Policies Auto Scaling Policy Defines threshold values pertaining to scale up/down decision Auto scaler will refer this policies Defined by DevOps During cartridge subscripqon user specifies the auto scaling policy to be used Deployment Policy Defines how and where to spawn cartridge instances Defines minimum and maximum instances in a selected service cluster Defined by DevOps based on deployment pacerns Guarantee SLA of cloud applicaqons

More highlights Unified communicaqon Centralized monitoring and metering Web UI and CLI REST API for integraqon with external PaaS management interface for both DevOps and user interacqon ArQfact distribuqon coordinator Persistence volume support for cartridges Gracefully shutdown instance when scale down

App Factory Apache License Open Source 31

Why Stratos? o Inherently MulQ- tenant o Highly Extensible o OSGi components, AMQP- based architecture, Policies, IaaS, etc o Built in Single Sign On/IdenQty management model o Policy based o Supports a simple model of parqqons o Smart Load Balancing o Non- HTTP Load balancing o LXC support o Apache FoundaQon o App Factory takes it to the next level 32

Want to help? o Feedback and tesqng o CreaQng Cartridges o Virgo? Birt? MosquiCo? Etc o ExisQng apps too (e.g. Drupal, Wordpress, etc) o PorQng to Google Compute o Autoscaling policies and rules o Ease of use creaqng a Vagrant/LXC distro o Help with App Factory 33

Stratos @ Google Summer of Code 6 proposals o Python Agent o AWS LB support o GCE LB support o New scaling algorithms o New LB algorithms o GCE support 34

Resources o hcp://stratos.incubator.apache.org/ o Hangout archives (and future hangouts) o hcp://stratos.incubator.apache.org/events/hangouts.html o Carbon: o hcp://www.slideshare.net/wso2.org/introducqon- to- the- wso2- carbon- pla]orm- webinar o Stratos o hcp://www.slideshare.net/lakwarus/overview- of- apache- stratos- incubaqon- 40- architecture 35

QuesQons?