Top Banner
Last Updated: October. 2014 Java and PaaS: Apache Stratos
33

Java PaaS Apache Stratos

Nov 27, 2014

Download

Software

Chris Haddad

Apache Stratos is a highly-extensible Platform-as-a-Service (PaaS) framework that helps run Apache Tomcat, PHP, and MySQL applications. The PaaS environment can be extended to support any additional language, framework, or server. For developers, Stratos provides a cloud-based environment for developing, testing, and running scalable applications. IT providers benefit from high utilization rates, automated resource management, and platform-wide insights, including monitoring and billing.

In this session, we will discuss key features in Apache Stratos and choosing the right solution for your business needs.

Topics to be covered:

True community ecosystem
Open extensible architecture
True flexibility for custom services and infrastructure
Multi-factored auto scaling
Multi-tenancy
Scalable dynamic load balancing
Capability of controlling PaaS resources
Logging, metering and monitoring
Cloud bursting
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Java PaaS   Apache Stratos

Last Updated: October. 2014

Java and PaaS: Apache Stratos

Page 2: Java PaaS   Apache Stratos

*2

About the PresenterChris Haddad

๏ VP Platform Evangelism

๏ F500/G2000 Advisor

๏ Cloudy DevOps for Dev guy

๏ Former Gartner research team leader

๏ SaaS Pioneer Learn more about meFollow me @cobiacomm on Twitter

Blog: http://blog.cobia.net/cobiacomm

Decks: http://www.slideshare.net/cobiacomm/

Profle: http://www.linkedin.com/in/cobiacomm/

On Google+ too

Page 3: Java PaaS   Apache Stratos

**

Agenda

Presentation๏ Motivators and Use Cases๏ Technical overview

PaaS Demo๏ Create service and link to runtime artifact repository๏ Upload application๏ Demonstrate multi-tenancy๏ Scale instances

Page 4: Java PaaS   Apache Stratos

**

Why Do You Cloud?๏ Obtain the right tool bits๏ Access a pre-built platform๏ Rely on embedded compliance, governance, and security

policies

๏ Creative experimentation ๏ Spin up and down on demand๏ Lower startup cost

๏ Meet business demand๏ Fulfill dynamic and spiky usage requirements ๏ Optimize Spend

Page 5: Java PaaS   Apache Stratos

**

Why Do You PaaS?

๏ Ready to DevOps๏ Hug a virtual server (or container)๏ Configure a run-time environment๏ Provision software development lifecycle repos and tools

๏ Build better software and accelerate software delivery๏ Offer a pre-built platform to development teams๏ No QoS worries

Page 6: Java PaaS   Apache Stratos

*

What is a Cloud Native Platform?

Page 7: Java PaaS   Apache Stratos

**

What is a Java PaaS?

3 Dimensions

๏ Run-time Framework๏ Application, Service, and API Platform๏ Development Environment

Page 8: Java PaaS   Apache Stratos

*

What is Apache Stratos ?

● A Platform-as-a-Service (PaaS) Framework from Apache Community

● Initially developed and maintained by WSO2

● Donated to Apache Software Foundation

● Evolved within the Apache Community for nearly a year

● Significantly re-architected and improved in Apache

● Graduated to an Apache TLP last month (May 2014)

Page 9: Java PaaS   Apache Stratos

**

Apache Stratos Use Cases

๏ Deploy on all major cloud infrastructures

๏ Provision and Scale Middleware Cartridges๏ Run Apache Tomcat, PHP, and MySQL applications๏ Host services, APIs, and integration flows๏ .NET support in the works

๏ Share platform across multiple teams, departments, channels

๏ Setup Once and Take an Automation Break๏ Configure scale and burst policies

Page 10: Java PaaS   Apache Stratos

*

Deploy on Your IaaS

Page 11: Java PaaS   Apache Stratos

**

Provision and Scale Your App

Page 12: Java PaaS   Apache Stratos

*

Differentiator: Real Time Event Bus

Page 13: Java PaaS   Apache Stratos

**

Multi-Tenancy Models [measure your density]๏ Container MT

- virtual Machine, LXC, Docker๏ In-container MT

- within VM/LXC/Docker tenancy

What is the MT advantage?๏ Optimizing resource utilization๏ Reduce dedicated resource allocation

Share platform across multiple teams, departments, channels

Page 14: Java PaaS   Apache Stratos

**

Apache Stratos L1 Deployment Architecture for VM based Cartridges

Page 15: Java PaaS   Apache Stratos

**

Apache Stratos L1 Deployment Architecture for Docker based Cartridges

Page 16: Java PaaS   Apache Stratos

**

Stratos Architecture with Docker Support

Page 17: Java PaaS   Apache Stratos

**

What is it?๏ Scaling algorithm can use multiple factors. such as

- Load average of the instance- Memory consumption of the instance- In-flight request count in LB

Setup Once and Take an Automation Break

Page 18: Java PaaS   Apache Stratos

**

What is unique about Stratos๏ Cartridge based LB model๏ Can bring any third-party LB

- HAProxy, nginx, AWS ELB- As easy as plugging into LB extension API

Scalable and Dynamic Load Balancing..

Page 19: Java PaaS   Apache Stratos

**

What are the smart policies?๏ Auto scaling๏ Deployment

Auto scaling policy๏ Define thresholds values pertaining scale up/down

decision ๏ Auto Scaler refer this policy๏ Defined by DevOps

Deployment policy๏ Defined how and where to spawn cartridge instances๏ Defined min and max instances in a selected service

cluster๏ Defined by DevOps based on deployment patterns

Smart Policies

Page 20: Java PaaS   Apache Stratos

**

What are the advantages?๏ Make DevOps life easy๏ Low TCO, and higher utilization existing dedicated

resources

Cloud Bursting...

Page 21: Java PaaS   Apache Stratos

**

Apache Stratos 4.0 Layered Architecture

Page 22: Java PaaS   Apache Stratos

*

Stratos Controller

Page 23: Java PaaS   Apache Stratos

**

๏ Apache Stratos next release is mainly into- Docker based cartridge support- integration with CoreOS- integration with Kubernetes- integration with flannel- integration with discovery service and build in

docker registry support

๏ Support docker top of VM- provide two level of scalability- support for integrated with any existing IaaS- any public, private cloud support which can run

docker host VM

Apache Stratos 4.1 - Docker support.

Page 24: Java PaaS   Apache Stratos

**

Platform as a Service Demo

PaaS Demo๏ Create service and link to runtime artifact repository๏ Upload application๏ Demonstrate multi-tenancy๏ Scale instances

Page 25: Java PaaS   Apache Stratos

*25

DevOps PaaS: AppFactory

Page 26: Java PaaS   Apache Stratos

**

Advanced Extra Credit

Using Apache Stratos 4.1.0-m2 developer preview

๏ setup with 3 node CoreOS cluster, Discovery service, Kubernetes master and 3 minions and flannel

๏ Configure Stratos๏ Register Kubernetes-CoreOS host cluster to Stratos๏ Deploy Docker based PHP Cartridge๏ Deploy PHP application using PHP Cartridge๏ Automated artifact updates๏ Manual Scaling๏ Autoscaling based on load avarage

Page 27: Java PaaS   Apache Stratos

*

Apache Stratos

● Try it!

● Be part of it!!!๏Contribute Cartridges – Cartridge Store๏Join the community!!!

● http://stratos.apache.org/index.html

๏ Facebook: https://www.facebook.com/apache.stratos

๏ LinkedIn: http://www.linkedin.com/groups/Apache-Stratos-5131436

๏ Twitter: https://twitter.com/ApacheStratos

Page 28: Java PaaS   Apache Stratos

**

More Information !

๏ Apache Stratoshttp://stratos.apache.org/

๏ Apache Stratos 4.1.0-m2 developer previewhttps://cwiki.apache.org/confluence/display/STRATOS/4.1.0+Stratos+M2+Developer+Preview

๏ Why Apache Stratos is the preferred choice in the PaaS Space

http://wso2.com/library/articles/2014/05/why-apache-stratos-is-the-preferred-choice-in-the-paas-space/

๏ Sneak peak into Apache Stratos 4.0.0http://lakmalsview.blogspot.com/2013/12/sneak-peek-into-apache-stratos.html

Page 29: Java PaaS   Apache Stratos

**

What WSO2 delivers

Page 30: Java PaaS   Apache Stratos

*30

WSO2 Advantage

API-Centric, Cloud-Native, DevOps Friendly, Enterprise-Ready Open Source

30

Page 31: Java PaaS   Apache Stratos

**

Business Model

Page 32: Java PaaS   Apache Stratos

*

Strategic Success Requires Adopting New IT Disciplines

Page 33: Java PaaS   Apache Stratos

Contact us !