1© 2015 Pivotal Software, Inc. All rights reserved.
Cloud Native
Application Framework
All the tools developers and architects need to create
resilient, secure, and scalable applications
2© 2015 Pivotal Software, Inc. All rights reserved.
“Cloud is about how computing
is done, not where.”
“
”
3© Copyright 2015 Pivotal. All rights reserved.
Cloud, Continuous Delivery, Microservices, DevOps
There’s something happening here…
What it is ain’t exactly clear…
4© Copyright 2015 Pivotal. All rights reserved.
A cloud native platform is composed of three layers, that span
& support the entire life-cycle of an application from
development to production
12 factor apps &
Microservices
Container Orchestration
Infrastructure Automation
Polyglot buildpacks &
Spring Cloud
Elastic Runtime/Diego
BOSH
Cloud Native
Application
Frameworks
Cloud Native
Runtime Platform
Cloud Native
Operations
Cloud Native Culture
5© Copyright 2015 Pivotal. All rights reserved.
Empowered
Culture
Infrastructure
Automation
Runtime
Platform
Cloud Native Application Framework
12 factor app
Spring Cloud
Services
Microservices Polyglot
Java, Ruby,
Python, Node,
PHP, Go
6© Copyright 2015 Pivotal. All rights reserved.
7© Copyright 2015 Pivotal. All rights reserved.
8© Copyright 2015 Pivotal. All rights reserved.
Source: Diagram from Leading the Transformation, 2015.
==
9© Copyright 2015 Pivotal. All rights reserved.
- Managed
independently
- Not held up by
slowest “train”
- Fits cloud native
“scale-up” model
- Reduces risk
Source: Diagram from Leading the Transformation, 2015.
10© Copyright 2015 Pivotal. All rights reserved.
Use 12 factor app principles to create cloud
ready applications
 A set of best practices for
developing and deploying
cloud-native software.
 Practices translate into
platform features and
workflow requirements.
Codebase
Dependencie
s Config
Backing
Services
Build,
Release,
Run
Processes
Port
Binding
Concurrency
Disposability
Dev/Prod
Parity
Logs
Admin
Processes
Source: “The Twelve-Factor App.”
11© Copyright 2015 Pivotal. All rights reserved.
Config Server
Service Registry
Circuit Breaker
Dashboard
12© Copyright 2015 Pivotal. All rights reserved.
Pivotal Cloud Foundry
13© Copyright 2015 Pivotal. All rights reserved.
We wrote the
book on it.
14© Copyright 2015 Pivotal. All rights reserved.
We are uncovering better ways of developing
software by doing it and helping others do it.

Cloud Native Application Framework

  • 1.
    1© 2015 PivotalSoftware, Inc. All rights reserved. Cloud Native Application Framework All the tools developers and architects need to create resilient, secure, and scalable applications
  • 2.
    2© 2015 PivotalSoftware, Inc. All rights reserved. “Cloud is about how computing is done, not where.” “ ”
  • 3.
    3© Copyright 2015Pivotal. All rights reserved. Cloud, Continuous Delivery, Microservices, DevOps There’s something happening here… What it is ain’t exactly clear…
  • 4.
    4© Copyright 2015Pivotal. All rights reserved. A cloud native platform is composed of three layers, that span & support the entire life-cycle of an application from development to production 12 factor apps & Microservices Container Orchestration Infrastructure Automation Polyglot buildpacks & Spring Cloud Elastic Runtime/Diego BOSH Cloud Native Application Frameworks Cloud Native Runtime Platform Cloud Native Operations Cloud Native Culture
  • 5.
    5© Copyright 2015Pivotal. All rights reserved. Empowered Culture Infrastructure Automation Runtime Platform Cloud Native Application Framework 12 factor app Spring Cloud Services Microservices Polyglot Java, Ruby, Python, Node, PHP, Go
  • 6.
    6© Copyright 2015Pivotal. All rights reserved.
  • 7.
    7© Copyright 2015Pivotal. All rights reserved.
  • 8.
    8© Copyright 2015Pivotal. All rights reserved. Source: Diagram from Leading the Transformation, 2015. ==
  • 9.
    9© Copyright 2015Pivotal. All rights reserved. - Managed independently - Not held up by slowest “train” - Fits cloud native “scale-up” model - Reduces risk Source: Diagram from Leading the Transformation, 2015.
  • 10.
    10© Copyright 2015Pivotal. All rights reserved. Use 12 factor app principles to create cloud ready applications  A set of best practices for developing and deploying cloud-native software.  Practices translate into platform features and workflow requirements. Codebase Dependencie s Config Backing Services Build, Release, Run Processes Port Binding Concurrency Disposability Dev/Prod Parity Logs Admin Processes Source: “The Twelve-Factor App.”
  • 11.
    11© Copyright 2015Pivotal. All rights reserved. Config Server Service Registry Circuit Breaker Dashboard
  • 12.
    12© Copyright 2015Pivotal. All rights reserved. Pivotal Cloud Foundry
  • 13.
    13© Copyright 2015Pivotal. All rights reserved. We wrote the book on it.
  • 14.
    14© Copyright 2015Pivotal. All rights reserved. We are uncovering better ways of developing software by doing it and helping others do it.

Editor's Notes

  • #2 Thanks for visiting Pivotal at VMWorld. My name is Julia and today I want to tell you about the Pivotal mission…. From the technology, to the people, to the way people interact with technology, Pivotal is transforming how the world builds software. Now I want to tell you about one vital part, maybe the most visible part, of the cloud native stack, the application framework. But first a word about how we got to this point.
  • #3 We are entering into a fundamentally new era of business, where people have to build new experiences and new capabilities that are driven by software in order to compete in the market. Competing in this service oriented world means moving fast with consistency and reliability. Speed has to be balanced with operational excellence. This is the cloud native advantage.
  • #4 In the not so distant past, software and systems were separate. Software was created by developers. Systems were built and maintained by system administrators. Many organizations adopted heavy handed change management processes to slow the rate of change and reduce the number of incidents, often with large infrequent changes resulting in brittle systems that tend to fail catastrophically. The relationship between developers and system administrators are often also brittle and prone to catastrophic failure. The cloud native approach focuses more on minimizing the impact of incidents by releasing small batches into architectures designed to be operated with partial failure and recovered quickly. Cloud, Devops, Microservices, Continuous Delivery; these are all aspects of the same phenomena. The words that describe high performing teams delivering faster, but also delivering consistently and reliably at scale. That’s what cloud native means.
  • #5 Pivotal breaks down cloud native technology into 3 layers, which is all supported, reinforced and optimized by cloud native culture. At the bottom, we have API driven cloud native infrastructure automation. This abstracts the provisioning and configuration of computing, networking and storage resources. Then we have a cloud native container scheduling runtime responsible for building, running and operating applications. The top layer consists of frameworks that enable the rapid development of cloud native applications with reusable components and patterns.
  • #6 Now let’s spend a more time going a little deeper on the Application Framework. These are the tools that provide all the functionality architects and developers need to design and deliver cloud native applications. In particular these tools should enable creating microservices and 12 factor apps with minimal friction. Organizations using these tools, and the supporting platform capabilities, create scalable secure applications while releasing new features every week, if not daily.
  • #7 Microservices emerged as the primary cloud native architecture. This method of designing applications breaks subsystems into small independent services. The application is then composed of these small services. The good news is that each of these services can be deployed and scaled independently, the bad news is they have to be, but we’ll come back that when we talk about the runtime platform.
  • #8 In contrast, the traditional architectures delivered applications that were created, deployed and operated as one big monolith. The pressure to deliver faster at scale, broke these monoliths apart as the early cloud native practioners found that monoliths created problems slowing things down to coordinate everyone for a release and also resisted the cloud preference for scaling out. This microservice paradigm did not appear over night, but emerged as a pattern across a wide number of successful organizations.
  • #9 With a monolith, everything must be shipped at once, which means delivery is only as fast as the slowest changing sub-component. This works great when you have a small project and a small team, but if a large team on a complicated application requires coordinating across the organization, everything can grind to a halt as releases must be held back until everyone is ready. Even worse, when everything is running in the same system, errors in the smallest subcomponent can bring down all of production. To pile on, the slow release cadence means larger batches of change, which expose the application to more risk and potentially long after the context of the changes are gone. Can you imagine trying to figure out where a mistake was made in 6 months of work when production systems are failing? Unfortunately, I bet you can.
  • #10 Microservices allow always keeping the trains running because each service is deployed independently in loose coordination with the rest. Most of the consumer web applications that we take for granted are delivered this way. Many of them even integrate with each other. Twitter, Facebook, Google, flickr, Uber, Apple… none of them wait on each other to go ahead and deploy the applications you use everyday, but they use each other.
  • #11 If microservices describe how the architect your application, what principals do you use for the actual code. A good place to start is the 12 factor app principals. Learn from and use the same methods that the original cloud native do. These 12 simple principles give a surprising amount of detailed, prescriptive advice on how to write your applications to be ready for cloud deployment. They describe a contract between the developer and the cloud platform that, if followed, will allow an application to scale with cloud native resilience. The other side of that contract must be provided by a platform like Pivotal Cloud Foundry.
  • #12 Spring Boot is an open source Java framework optimized for developing microservices that is rapidly being adopted and has been embraced cloud native companies like Netflix. In addition to the rapid development of simple microservices, Pivotal has also embraced a number of Netflix Open Source components to provide additional microservice capabilities like services discovery, dynamic configuration and circuit breakers. This means that you can use the practices and tools relied on by Netflix and others while leveraging the Java skills you might already have.
  • #13 Now you have an idea of how to develop cloud native applications and understanding microservices plus the 12 factor app approach is a great starting point the for new cloud native applications. Your application is ready to be bundled up and ready to run on...something. Come back to hear us talk about our Cloud Native Runtime Platform. Together the Pivotal Cloud Native solution supports capabilities like zero downtime deployment, rolling updates, instantly scaling up and down, and continuous delivery...all because your application was designed as a cloud native application. All of these tools are integrated, meaning: you don't have to do the work to make them all work together. Instead, you can focus on writing your actual application and delighting your customers, rather than provisioning and configuring servers.
  • #14 Finally, we wrote the book on how these microservices are used in cloud native architecture and how to get there. We should have copies here, if you'd like one, or you can get the PDF for free online.
  • #15  Thank you for your time today, we welcome you to check out all the Pivotal presentations and encourage you to ask one of our technology experts any questions you might have. We would love to spend time telling you more about how Pivotal’s Cloud Native Platform is transforming how the world builds software.