Cloud Native Applications Maturity Model

Post on 08-Apr-2017

279 views 0 download

Transcript of Cloud Native Applications Maturity Model

Cloud-native Application Maturity Model

Microservices & Containers - Austin

Confidential 2August 14, 2016

High-performing IT organizations

2016 State of DevOps Report

https://puppet.com/resources/white-paper/2016-state-of-devops-report

200xmore frequent

deploys

3xfewer

failures

24xfaster

recovery

2,555xshorter lead

times

2.2xhigher employee

satisfaction

Dev -> QA -> Ops

Infrastructure as Pets

Traditional apps

DevOps

Infrastructure as Cattle

Cloud-native applications

Few releases per year Continuous Delivery

4

Topics

1. The Cloud-native Application Maturity Model

2. How containers and microservices help

3. Managing cloud-native applications

5

About me

1994

• Founder at Nirmata

• Developer (Java, Go, JavaScript, C++); learning Ops

• Centralized management of complex distributed systems

6

Cloud-native Application Maturity Model

We are here

ODCA Best Practices: Architecting Cloud-Aware Applications Rev. 1.0

7

CAMM Level 0: Virtualized

• Tiered applications in Virtual Machineso Application runs on virtual infrastructureo Application can be deployed using a script or installer

• Handoffs: Dev QA Ops

OS

App

VM

OS

App

VM

OS

App

VM

8

CAMM Level 1: Loosely Coupled

Applications are decoupled from networks

Applications are decoupled from storage

Application components are service-oriented (Optional)

1

2

3

9

Platform Services

Language Specific Libraries

Application

Host / Infra. Services

Platform-as-a-Service

Decoupling Applications from Infrastructure

Container Engine

Host / Infra. Services

Container Services

Container Runtime

Application

Container Services

10

Through 2018, more than 70% of IT organizations

planning a private PaaS will deploy a container service (rather than PaaS framework software)

-- Gartner Predicts 2016: PaaS Innovation Continues Unabated

11

Cloud-native Application Maturity ModelODCA Best Practices: Architecting Cloud-Aware Applications Rev. 1.0

PaaS or Container Services

12

CAMM Level 2: Abstracted

Services are stateless

Application is unaware and unaffected by failure of dependent services

Application is infrastructure agnostic and can run anywhere

1

2

3

13

1. Elastic: scales up or down independently of other services

2. Resilient: services provide fault isolation boundaries

3. Composable: uniform APIs and a Service Gateway

4. Minimal: smallest possible set of highly cohesive set of entities

5. Complete: can be deployed and versioned independently

A Microservices-style application is composed of several services and each service is:

https://dzone.com/articles/microservices-five

14

Cloud-native Application Maturity ModelODCA Best Practices: Architecting Cloud-Aware Applications Rev. 1.0

Microservices in Containers

15

CAMM Level 3: Adaptive

Fully automate application and infrastructure management

Deploy and operate on any cloud

Plan for active-active cloud deployments (future)

1

2

3

16

Two emerging trends…

• In-band management: Chef Habitat, Joyent’s Container Pilot, …

• Out-of-band management: IaaS+, Nirmata

17

Nirmata

18

Why Nirmata?

Software infrastructure is best delivered “as-a-service”

Cloud-native applications need cloud-native management

Applications should not be locked in to a cloud provider

1

2

3

• Founded Sep 2013 -> Beta Jan 2015 -> GA 2016!

• Fortune 50 as well as startup customers in production

• 1M+ pulls; 10K+ managed containers per month!

• Wide range of apps – from Enterprise IT to IoT!

we believe….

19

Public or Private Clouds

Adaptive Management for Cloud-Native Applications

nirmata

any cloud – any device

Connected Devices

Data Centers

DevOps

IT Ops

fully automated deployment – operations - optimization

20

NetworkInfrastructure as a Service

HostsOpen Container Runtime

Build – CI/CD

Source Control

Image Registry

Storage

Compute

Security

Host Mgmt

Scheduling & Orchestration

Policy-Based Resource Management

Application Lifecycle Management

Microservices Infrastructure

Monitoring

Logging

Remediation

Alarms

Cloud Virtual Physical

Access Control

Demo

22

Cloud-native Application Maturity ModelODCA Best Practices: Architecting Cloud-Aware Applications Rev. 1.0

Adaptive Management

23Accelerating DevOps: Automating application lifecycle using containers | March 15, 2016

13,327Containers Deployed

Customer Profile – Fortune 500 Enterprise

95Running Environments

500% growth since Jan 2016!

Fast, repeatable, and predictable deployments!

48X productivity gain

82,246hrs saved over 12 mos

Online Meetup – Thursday 10:00 AM Pacific

Containerizing Traditional Applications

www.meetup.com/microservices

15 day trial signup for free with no credit card required!

try.nirmata.io

Thank you!

jim@nirmata.com - @JimBugwadia