why paas ? what to do with paasfiles.meetup.com/13739482/20160224sb000_osxcln.pdf · developers...

17
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Why PaaS ? What to do with PaaS ? „PaaS vs. CaaS vs. X Solutions w/(o) OpenStack“ OpenStack-X Cologne Meetup 20160224

Upload: others

Post on 16-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Why PaaS ?What to do with PaaS ?

„PaaS vs. CaaS vs. X Solutions w/(o) OpenStack“OpenStack-X Cologne Meetup 20160224

Page 2: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

© Copyright 2015 Hewlett Packard Enterprise Development LP. 2015 Restricted .The information contained herein is subject to change without notice.

We live in an idea economy

Page 3: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

We thought we’d be programming like this

Page 4: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

But sometimes it feels like this

Page 5: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

• Agility is paramount

• Developers need flexibility

Page 6: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

What is an app ?

<CODE>

SERVER

DATABASE

NETWORK

MIDDLEWARE

SEC

UR

ITY

Page 7: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Developers should be writing code

Opportunity costTime spent setting up environments, staging and deploying code, patching and upgrading apps sacrifices innovation and delays applications/services supporting the intended user.

– Provision VM

– Install Runtime

– Install Database

– Deploy Application

But what about all THIS …

– Configure Load Balancer

– Configure SSL Termination

– Configure Service Connectivity

– Configure Firewall

– Setup Access

Page 8: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Deploying an Application … from Developer to Consumer

$stackato push myapp

Ask for a server

Install OS

InstallFrameworks

Ask for a DataBase

Deploy my App

Tests

Add a Load Balancer

Wait VM Creation

Consumers

OpsSysAdmin

DB Admin

OpsNetAdmin

Dev/Test/Ops

Provision VMInstall RuntimeInstall DatabaseDeploy ApplicationConfigure Load BalancerConfigure SSL TerminationConfigure Service ConnectivityConfigure FirewallSetup Access

have to do all this ..

… or just this ..

Page 9: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Cloud native means…

© Copyright 2015 Hewlett Packard Enterprise Development LP. 2015 Restricted .The information contained herein is subject to change without notice.

http://12factor.net/

Page 10: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Traditional application assumptions don’t work in IaaS

Traditional apps assume node reliability and connectedness

Cloud native applications take a different approach

Cloud native applications externalize state

Cloud Native apps

• Assumes node failure and avoids local storage• Executes as one or more stateless processes• Treats all service connections as transient

More at http://12factor.net

Page 11: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Developers are polylingual

• 38% of developers program in no single language more than 50% of the time

• 17% of developers use specialized language as their primary development language

12%7%

6%

5%

4%

3%

3%

3%2%

17%

38%

No primary language

Other primary language

HTML/CSS/ JavaScript

C#

C++

Forrester Report: “ Development Landscape: 2013” by Jeffery S. Hammond and Vivian Brown, August 22, 2013

Page 12: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

taken from: https://www.ctl.io/appfog/

Page 13: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

The platform for the agile enterprise

HPE Helion Stackato

© Copyright 2015 Hewlett Packard Enterprise Development LP. 2015 Restricted .The information contained herein is subject to change without notice.

Page 14: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

JenkinsHelion

Code Engine

In addition to marked areas: • HPE’s open source contributions:

https://github.com/hpcloud

• HPE Helion Stackato CLI & javascript client code

• Cloud Foundry v2 services connectors

• Persistent filesystem service, elasticsearch, and other services

• AOK (Ruby UAA replacement) with updates to Omni-Auth

• Logyard (system and application log streams)

• PRs to core code

• Various buildpacks

• Related non-core tools

© Copyright 2015 Hewlett Packard Enterprise Development LP. 2015 Restricted .The information contained herein is subject to change without notice.

Page 15: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

These Stackato roles are:» Cloud Controller: responsible for directing all of the elements of the system. The attachedHealth Monitor keeps track of DEA availability. All Stackato VMs communicate with theCloud Controller over NATS, “a lightweight publish-subscribe and distributed queuingmessaging system.” This system handles the orchestration of the components and sets upother communication channels between components as appropriate (e.g. TCP connectionsbetween apps and databases). During cluster configuration, all VMs are connected to the CloudController via NATS.» Router: maps application URLs to the application instances running on the DEAs. Applicationusers connecting from the web are redirected transparently to an internal URL and port.Connections from Stackato clients are routed directly to the Cloud Controller.» DEAs: the worker nodes of the system. Each hosts multiple applications within separate Linuxcontainers. Application droplets are pulled from the Cloud Controller and launched inside apre-allocated container. If a DEA becomes unresponsive for any reason, the Health Manager willnotice and have the Cloud Controller redeploy the assigned applications to “healthy” DEAs.» Services: database, messaging, file system, and other services can be automaticallyprovisioned by the Cloud Controller. Services are bound to applications by way of a specialenvironment variable that exposes the connection information in the application container. Anyservices requested by a user can be bound to any application deployed by that user, so multipleservices can be bound to an application and vice versa. Services can be run on separate VMs,or can share VMs as required. Applications can use external services as well. For example, if anexisting high-availability database cluster is exposed to the DEAs, the applications can connectdirectly, as it would in a traditional application hosting scenario.

Architecture & Services

Basic Roles / Funktions Stackato PaaS (based on CloudFoundry)

http://www.activestate.com/sites/default/files/pdfwp/whitepaper_stackato_architecture.pdf

Page 16: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Architecture & Services (2) Polyglot application runtime environment

• Cluster of VMs/Services working together on OpenStack software

• Language runtimes include Java, Ruby, PHP, Python, Node.js, Perl

• Services such as MySQL, PostgreSQL, RabbitMQ, Redis, Memcache

• Uses Docker to create and destroy Linux containers on demand (Linux containers isolate user applications during staging and runtime)

Application Services

• Automates critical services required for hybrid and cloud-native apps

• Provides database lifecycle management and automates common administration tasks including backup, restore and scaling

Page 17: Why PaaS ? What to do with PaaSfiles.meetup.com/13739482/20160224sb000_OSXCLN.pdf · Developers should be writing code Opportunity cost Time spent setting up environments, staging

Where to look for more …https://en.wikipedia.org/wiki/Platform_as_a_servicehttps://en.wikipedia.org/wiki/Cloud_Foundryhttps://www.cloudfoundry.org/

http://12factor.net/http://www.clearlytech.com/2014/01/04/12-factor-apps-plain-english/

Want to give it a try ? You can try/run Stackato on .. • Amazon EC2• Microsoft Azure• OpenStack Horizon• Oracle Virtual Box• VMware Fusion/Player• VMware vSphere

https://docs.stackato.com/http://docs.stackato.com/admin/setup/microcloud.htmlhttp://docs.stackato.com/user/quick-start/index.htmlhttp://www.davidaiken.com/hpe-helion-stackato-tutorials/deploying-your-first-application-to-hpe-helion-stackato/https://www.youtube.com/watch?v=bibCL-Zz4uA&feature=youtu.be

Or if you just want to watch others ..https://www.youtube.com/results?search_query=stackatohttps://www.youtube.com/watch?v=Zygy9jbHWmg