Considerations for Adopting PaaS (Platform as a Service) Michael Dolan (mdolan@pivotal.io) Senior Field Engineer April 2015 1
Becoming The Agile Enterprise To effectively achieve its missions, the Department of Defense must develop and update its software-based capabilities faster than ever, to anticipate new threats and respond to continuously changing requirements. David M. Wennergren, Former US DoD CIO cloud computing holds tremendous potential to deliver public value by increasing operational efficiency and responding faster to constituent needs. US Federal Cloud Computing Strategy The government needs agile cyber projects that are smaller in effort, have a potential for large payoff, and result in a rapid turnaround, creating a greater cost to the adversary to counter. DARPA Cyber Fast Track Program 2
The Evolution of the Cloud Increasing Agility and Cost Savings You Manage Traditional IT Applications Data Runtime Middleware O/S Virtualization Servers Storage Networking You Manage IaaS Applications Data Runtime Middleware O/S Virtualization Servers Storage Networking You Manage PaaS Applications Data Runtime Middleware O/S Virtualization Servers Storage Networking Increasing Cloud Enablement 3
4
Different strokes for different folks IaaS PaaS Dev PaaS Ops Better SLAs Flexibility Speed Availability Faster Time To Market Mobile + Data Services Agile and Iterative Leverage OSS Continuous Delivery No Downtime Instant scaling Consistency & Automation 5
Removing Developer and Operator Constraints BUILD APPLICATION Auto-detect frameworks Link to PaaS Self-service removal RETIRE APPLICATIONS PUSH FIRST RELEASE Self-service deploy Dynamic routing A/B versioning Live upgrades UPDATE APPLICATIONS MAINTAIN APPLICATION Elastic scale Integrated HA Autoscaling and APM Log aggregation Policy and Auth 6
Tools and Point Products: Lots of Them Apps Services Containers VMs IaaS Hardware 7
IaaS++ PaaS Apps Services Containers Elastic Runtime BOSH VMs IaaS Hardware 8
Key PaaS Capabilities at a Glance Automatic Middleware Configuration Containers and Orchestration Simple Service Binding Automatic IaaS Provisioning High Availability and Scaling Services: Data, Mobile, Platform Log Aggregation Dev/Ops Metrics Network Isolation, Security Groups Roles and Policy Management 9
Great Agile Enterprise Software Scalability Availability Agility Efficiency 10
Pivotal CF: An Application Centric Approach App1 App2 Common Access Tier (App1, App2) Configurations Configurations Built-in Middleware Services JVM JVM Container 1 JVM, etc.. Container 2 JVM, etc.. App Server App Server App Server App Server VM VM Pre-Provisioned Pool of VMs Infrastructure Specific IaaS Agnostic 11
The Agile Enterprise Needs PaaS IaaS without PaaS capabilities becomes a dying breed. The single most powerful thing you can do this year is to enable your developers with a fast and flexible PaaS. 12
From Today s Enterprise Delivery Processes 13
To Becoming an Agile Enterprise Dramatically improve developer experience Development Agile teams, rapid iteration Iteration Delivery Ingest and incubate open source innovation Continuous delivery, no planned downtime Operation Instant scaling of apps and data services Automation and deployment consistency Standardized service binding and discovery 14
PaaS is the operating system for the cloud. As the set of APIs and services for PaaS's grow, the choice of PaaS becomes more crucial as the costs of porting go up. Jonathan Rosenberg CTO & VP, Collaboration 15
DEFINE: Microservice If every service has to be updated in concert, it s not loosely coupled! Loosely coupled service oriented architecture with bounded contexts If you have to know about surrounding services you don t have a bounded context. 16
Not Monoliths HTML JavaScript MVC Service Service Browser Data Access Monolithic Application Relational Database 17
Not Traditional (ESB-centric) SOA UI Service Service Service Service UI Enterprise Service Bus Service Service Service Service 18
But Microservices! 19
20
21
Enabling Continuous Delivery Product Mgr UX Dev QA DBA Self Service API Sys Admin Net Admin Storage Admin BUSINESS CAPABILITY TEAMS USING MICROSERVICES PLATFORM OPERATIONS TEAM Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin 22
But no Microservice is an Island 23
Example Distributed System: Minified 24
Some emergent challenges of microservices systems Configuration Management Service Registration & Discovery Routing & Load Balancing Fault Tolerance (Circuit Breakers!) Monitoring 25
Example: Coordination Boiler Plate 26
CONNECT WITH EMC FEDERAL Government Perspectives Blog publicsectorblog.emc.com BLOG Federal Website www.emc.com/publicsector WEBSITE @EMCPublicSector www.twitter.com/emcpublicsector TWITTER Copyright 2015 EMC Corporation. All rights reserved. 27