Top Banner
Linux Foundation Collaboration Summit February 2015 Mark Hinkle Senior Director Open Source Solutions http:// open.citrix.com @mrhinkle [email protected]
53

Cloud 2.0: Containers, Microservices and Cloud Hybridization

Jul 15, 2015

Download

Technology

Mark Hinkle
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: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Linux Foundation Collaboration Summit – February 2015

Mark HinkleSenior DirectorOpen Source Solutionshttp://open.citrix.com@mrhinkle [email protected]

Page 2: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 3: Cloud 2.0: Containers, Microservices and Cloud Hybridization

3

Slides Can be Viewed and Downloaded at:http://www.slideshare.net/socializedsoftware/

Copyright Mark R. Hinkle, available under the

CCbySA license some rights reserved 2015

Page 4: Cloud 2.0: Containers, Microservices and Cloud Hybridization

So I had this

“brilliant” idea

for a talk….

Page 5: Cloud 2.0: Containers, Microservices and Cloud Hybridization

So I wrote a

“brilliant”

presentation…

Page 6: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Then I listened to

a lot of brilliant

people…

Page 7: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Adrian Cockcroft – Battery Ventures

• David Lutterkort – Puppet Labs

• George Reese – Dell

• Kelsey Hightower - CoreOS

• George Dunlop – Citrix

• John Willis – Socketplane

• Andrew Clay Schafer – Pivotal

• Simon Wardley – CSC

• Alex Polvi – CoreOS

• Solomon Hykes - Docker

• Alex Polvi – CoreOS

• Werner Vogels – Amazon

• James Urquhart – Dell

• Kris Buytaert – Inuits

• Marc Collier – OpenStack

• James Waters – Pivotal

• Lydia Leong – Gartner

• John Mark Walker – Red Hat

• Craig McLuckie - Google

• Many, many, more

Page 8: Cloud 2.0: Containers, Microservices and Cloud Hybridization

the action of working with someone to produce or create

something.

traitorous cooperation with an enemy.

Page 9: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 10: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Walking before you run

Page 11: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 12: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Inspired by Simon Wardley http://enterpriseitadoption.com/

Page 13: Cloud 2.0: Containers, Microservices and Cloud Hybridization

0 0.5 1 1.5 2 2.5 3 3.5 4

Amazon

Azure

Google

Rackspace

Revenue (in Billions)

Source: Company data, Evercore Group LLC, Research. Azure based on MSFT comments about a $1 billion rev run rate in May

2013. Google based on estimate by TBR (Technology Business Research)

Page 14: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Company Revenue Annual Growth

Amazon $962 million 49%

Microsoft $370 164%

IBM $259 86%

Salesforce $203 38%

Google $169 47%

Source: Synergy Research Group

Page 15: Cloud 2.0: Containers, Microservices and Cloud Hybridization

“Citrix CloudStack 3 Brings the Power of Amazon-Style Clouds to Customers of All Sizes”

Citrix Press Release, February 12, 2012

“AWS And Eucalyptus To Make It Easier For Customers To Migrate Applications Between On-Premises Environments And The Cloud”

Eucalyptus Press Release, March 22, 2012

“HP Cloud Compute undercuts Amazon, too”

Tech Target, December 12, 2012

Page 16: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 17: Cloud 2.0: Containers, Microservices and Cloud Hybridization

H/T: Adrian Cockcroft

Page 18: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Public PrivateHybrid

Page 19: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 20: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 21: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 22: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 23: Cloud 2.0: Containers, Microservices and Cloud Hybridization

zzz

Public Cloud

• Global Footprint

• Massive Scale

• Extreme Velocity

Vendors

Advantages

Challenges

• Stability

• Security

• Privacy

• End-to-End

Network

• Security & SLA

• App QOS

• SI Capabilities

• Enterprise Trust

• SMB Channel

Managed Cloud SP/SI Cloud

• Higher price than

Public Cloud

• Limited services

capabilities

• Agility

• Stack lock-in

• Not always best of

breed for whole

stack

Page 24: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Compute

(Containers, KVM, Xen

Project)

Distirbuted Storage

(Ceph, Gluster)

Networking

(Open Daylight)

Orchestration – OpenStack, Apache CloudStack

Docker Mesos Kubernetes

Platform-as-a-Service – CloudFoundry, OpenShift, Gigaspaces

Page 25: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 26: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 27: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Lightweight Linux execution environment

• Static application composition

• Reliable deployment

• Unit of resource isolation

• Execution isolation

• Multi-tenancy without heavyweight VMs

Page 28: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Rapid deployment

• Ease-of-use

• Portability

• Provenance

• Reusable Code

• Open Source

• Configurable Layers

• Reproducible

• Version-Controlled

The Flux Capacitor

Of Cloud Computing

Page 29: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Legacy - Node First Development

App +SO bundled machine images

Fragile, tightly couple apps and little resource fungability.

Low resource efficiency

Containers

Hermetically sealed deployment units

Efficient isolation and resource use.

ClusteringDeclarative app model

Agile, decoupled architecture

Smart (Machine Learning Enhanced)

Active Management

New World - Cluster First Development

Radically enhanced developer productivity: snap together systems.

Radically reduced operations overhead: deploy, run, update effortlessly

Operational specialization: cluster/infra ops separate from app ops

Page 30: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Security???

• Binary Management (Repos)

• Resource tracking and separation

• Networking across clouds/hosts

• Container consistency (Multiple container sources)

• Many other problems with rapidly deployable, highly portable, easily used technologies

Page 31: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 32: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 33: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 34: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 35: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 36: Cloud 2.0: Containers, Microservices and Cloud Hybridization

microservices(n) - Loosely coupled

service oriented architecture with

bounded contexts

If every service has to be

updated at the same time

it’s not loosely coupled

If you have to know

too much about surrounding

services you don’t have a bounded context.

Page 37: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Microservices can be introduced quickly

• Leave old services in production until time to clean-up

• Allows for faster speed of innovation

• Code pushes are only additive so no legacy issues

Page 38: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Rocket

?

Page 39: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Ne

tflix B

log

-h

ttp://te

ch

blo

g.n

etflix

.co

m/2

01

5/0

2/a

-mic

ros

co

pe

-on

-mic

ros

erv

ice

s.h

tml

Page 40: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Alex Williams (the New Stack) : Looking out at 2015, what are some of the issues that will be more complex in this distributed infrastructure world for customers – what are some of the top ones you see?

Mitchell Hashimoto(Hashicorp) - Number one is service proliferation, where your data center just becomes more and more services. Number two is, inherently becoming multi-data-center and highly-distributed at a much earlier stage. With things like Docker, where you can run things in much smaller units, it becomes a lot easier to start running a lot more services. As a result, we have a management problem, an orchestration problem, and distributed system problems in there.

Source: http://thenewstack.io/new-stack-mitchell-hashimoto-containers-no-containers-one-question-2015/

Page 41: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 42: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 43: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Cloud 2.0

Where Awesome Starts

Page 44: Cloud 2.0: Containers, Microservices and Cloud Hybridization

…the future of technological innovation is

not stealing limited resources away from

one another, but creating new resources

— and new opportunities to create new

resources — together in a rich ecosystem.

Allison Randal

Open Source Hacker

Former OSCON Program Chair

@allisonrandal

Open Source Isn’t a Zero-Sum Game

Page 45: Cloud 2.0: Containers, Microservices and Cloud Hybridization

Innovate Develop what doesn’t exist to address your needs

LeverageLeverage the growing base of high-quality open source software

Commoditize Shift non-differentiating tech to reliable services or sources

Simon Wardley – Open Source as a weapon

Page 46: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Declarative > Imperative – State desired results, let the system actuate

• Control loops: Observe, rectify, repeat

• Simple > complex: Do as little as possible

• Modularity: Components, interfaces & plugins

• Legacy compatible: Requiring apps to change is a non-starter

• Network-centeric – IP addresses are cheap

• Non grouping - Labels are the only groups

• Cattle > pets: Manager your workload in Bulk

• Open > closed: Open Source, standards, REST, JSON, etc.

Courtesy: Craig Mcluckie Google Linux Collab Summit

Page 47: Cloud 2.0: Containers, Microservices and Cloud Hybridization

A design pattern in which software/application components provide services to other software/application components via a protocol, typically over a network and in a loosely-coupled way.

SOA Definition circa 1995

Page 48: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Massively Scalable

• Secure

• Competitive Prices

• Distributed Applications

• Proliferation of Microservices coming

Page 49: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Cloud Tenets(Rapid Elasticity, Metered, Self-Service, Pooling, Broad Network)

• Hosted on User Selected Hardware

• Tailored to just what you need

• Unlikely to have as many zones as public

• Next evolution of cloud isn’t all-in-on, it’s federation of cloud services (no silos)

Page 50: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Minimum Viable Cloud

• Network Quality of Service*

• Application Management *

• Service Level Differentiation*

• Developer Environments*

• Advanced Security*

• Continuous Integration*

• Developer Environments *

Page 51: Cloud 2.0: Containers, Microservices and Cloud Hybridization
Page 52: Cloud 2.0: Containers, Microservices and Cloud Hybridization

And I work on open source at Citrix.

http://open.citrix.com

Thank You

Page 53: Cloud 2.0: Containers, Microservices and Cloud Hybridization

• Pattern: Microservices Architecture

• Gilt’s Kevin Scaldeferri on Enabling Micro-service Architectures with Scala(Video)

• Heroku Blog - Why Microservices Matter

• Microservices Example – Azure Biz Talk

• Video: Integrating to Microservices by Adrian Cockcroft

• Distributed Systems for Fun and Profit