software defined everything - nlvmug · software defined everything kit colbert vp & gm,...

31
© 2015 VMware Inc. All rights reserved. Software Defined Everything Kit Colbert VP & GM, Cloud-Native Business Unit March 2016

Upload: others

Post on 22-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

© 2015 VMware Inc. All rights reserved.

Software Defined Everything

Kit Colbert VP & GM, Cloud-Native Business Unit March 2016

John Deere

2

Sonos AMP

3

IT Drives These Changes

Compared to peers across the industry, high-performing IT organizations experience:

4 Source: https://puppetlabs.com/2015-devops-report

60x fewer failures

168x faster failure recovery time

30x more frequent deployments

200x shorter

lead times

Building the Best Software: Experiment Continually We’re more often wrong than we’re right:

5 Source: http://ai.stanford.edu/~ronnyk/ExPThinkWeek2009Public.pdf

“ Evaluating well-designed and executed experiments that were designed to improve a key metric, only about one-third were successful at improving the key metric!”

•  Avoid the temptation to try and build optimal features through extensive planning without early testing of ideas.

•  Experiment often. •  A failure of an experiment is not a mistake: learn from it. •  Try radical and controversial ideas often. •  Experiment to find out how a feature degrades user experience to make

business decisions.

So we need to behave differently:

“ I want to release the smallest amount of code, using the smallest number of people, with the least amount of ceremony possible, as frequently as possible.” Source: Erik Kastner, Etsy.com

6

Fast & Fast Feedback

DevOps

7

What Exactly Is DevOps? Wikipedia

“ a software development method that stresses communication, collaboration, integration, automation, and measurement of cooperation between software developers and other information-technology (IT) professionals.” https://en.wikipedia.org/wiki/DevOps

8

Adam Jacob’s DevOps Kung fu “ A cultural and professional movement, focused on how we build and operate high velocity organizations, born from the experiences of its practitioners.” https://github.com/chef/devops-kungfu

Cloud Technology Partners “ DevOps: A cultural shift or movement that encourages great collaboration (aka teamwork) to foster building better quality software more quickly with more reliability.” http://www.cloudtp.com/2014/05/22/devops-organizational-change-agent/

Jez Humble “ a cross-functional community of practice dedicated to the study of building, evolving, and operating rapidly changing, secure, resilient systems at scale.” https://www.youtube.com/watch?v=L1w2_AY82WY

DevOps is A Holistic Systems View

9

Idea Application Code

Running Application

Business Development Operations

Agile Development DevOps fixes this fixes this

Business Process

Source: http://dev2ops.org/2010/02/what-is-devops/

DevOps Has Many Non-technical Challenges

10

Change Organization

VP of Operations

VP of Development

Layers of Middle

Management

Layers of Middle

Management

Sys Admin Developer

VP of Product

Layers of Middle

Management

Sys Admin Developer

CIO CIO

Incentivized to innovate and release

Report to same manager. Incentivized to work together to develop and release

Build Trust

Empower People to

Take Action

Update Roles and

Responsibilities

Application Architecture & Platforms

11

Application Design is Changing

Properties of a Microservice •  Small code base

•  Easy to scale, deploy and throw away

•  Autonomous

•  Resilient

Benefits of a Microservices Architecture •  A highly resilient, scalable and resource efficient

application

•  Enables smaller development teams

•  Teams free to use the right languages and tools for the job

•  Rapid application development

12

Monolithic/Layered Micro Services

PaaS = Platform-as-a-Service

13 Source: http://wikibon.com/cloud-native-application-platforms-structured-and-unstructured/

Structured -  Pre-integrated and tested solution -  Out-of-the-box functionality -  “Just works”, but may not offer specifics

you want -  Examples: Cloud Foundry, MS Azure,

Heroku, Google App Engine

Unstructured -  DIY combination of cloud-provided services

& homegrown tools -  Likely container-based -  Maximum flexibility, but can be expensive to

build

PaaS Platform - Visible to Developers

Message Bus / Queuing / Routing Service Brokers

Capacity Planning Logging Monitoring

Application Staging / Application Services

Application Scheduling Container Scheduling

Service Discovery Container Cluster Management

Container Networking

Container Runtime Container OS

Container Runtime Container OS

Physical Host (or VM) Physical Host (or VM) DevOps Tools

Container Container Container

Con

figur

atio

n M

anag

emen

t

Mar

ketp

lace

/ Im

age

Man

agem

ent

Sec

urity

Container Container Container

Two ways to implement

Structured: Cloud Foundry •  An open source cloud computing platform-

as-a-service

•  Started at VMware in 2010 •  Pivotal took it over in 2013

•  Cloud Foundry Foundation formed in 2014

•  Many CF-based offerings: –  Pivotal CF –  IBM BlueMix –  CenturyLink Cloud –  ActiveState –  HP Helion

14

Browser Mobile IoT Devices

Customer Applications

Internal Applications

Mobile Applications

End Users

Elastic Runtime

Services

Operations

Core Services (MySQL / RiakCS)

Provider-Specific Services

User Provided Service

Instances

Logging Scaling Platform Deployment

Health Monitoring

AWS OpenStack Vmware vSphere Other Infrastructure

Hardware

OS Kernel

OS File system

Use

rspa

ce

Container

App

pro

cess

App

pro

cess

App

pro

cess

App

pro

cess

App

pro

cess

Container

App

pro

cess

App

pro

cess

Unstructured: Linux Containers

15 15

OS-level Isolation •  Isolation at individual kernel subsystem

level (e.g. filesystem, process table, etc) •  User-level process (LXC, libcontainer)

orchestrates these subsystems to create a container

Existed for Many Years •  Solaris Zones, FreeBSD Jails, OpenVZ

Why? •  Process isolation

•  Reproducible environment •  Enables management at scale

is a “Shipping Container” for Code

•  Fric%onlessdeploymentandmaximumportability

Ondeveloperlaptop:

Thenonserver:

That’sit!!

16

Developersbecause…

~#dockerbuildmy_app~#dockerpushmy_app ~#

~#dockerpullmy_app~#dockerrunmy_app ~#

•  Anaturalfitfor3rdPla:orm,12factor,microservices

•  ItmakesDevOpsmuchmucheasier

Growing Ecosystem for Unstructured

17

VMware Cloud-Native Applications

18

Our Goal: Enable Businesses to Focus on Building Application Logic

19

Time spent on application

logic Time spent on

application logic

Time spent getting app ready to run

in production

Time spent getting app ready to run

in production

VMware Cloud Native Product Overview

20

Photon OS Photon OS

vSphere SDDC

Photon

Platform

vSphere Integrated Containers

IT Ops Team

Existing IT Environments Greenfield Cloud Native

Custom or 3rd-Party tooling

Line of Business (Developers, DevOps, etc.)

PaaS: Cloud Foundry,

OpenShift

Container Orchestration:

Kubernetes, Marathon, Swarm

Databases: EnterpriseDB,

MongoDB

Data Analytics: Hadoop, Spark

Middleware: Kafka, RabbitMQ

Integrating Docker Containers Deeply into vSphere

Basic VM Approach vSphere Integrated Containers

Container Engine

Linux

Developers + Operators use the same abstraction

vSphere Integrated Containers Demo

22

vSphere Integrated Containers Architecture – Starting a Docker Container

23

When Creating a Container: •  Receives “docker run” API request. •  Download any new image layers to datastore. •  Select container VM IP, set up any network

mappings for exposed ports. •  Use Boot or Clone to create “child” PhotonOS-

Pico container VM on an available ESX host. •  Creates VMDKs representing container image

(layers) and volumes, attach to the container VM. •  Start the VM •  Container VM executes the “entrypoint” command

for the container image. •  Handles further API requests (e.g., “docker stop,

docker start, docker rm) with corresponding VM life-cycle operations.

VCH: Virtual Container Host

Docker API

vCenter

VMware ESX

PhotonOS VMware ESX

PhotonOS VMware ESX

PhotonOS

Shared Datastores

C1

Layer1

Layer2

Layer3

Image VMDK

VM create/clone

docker run

Boot / Clone

VM restart, shutdown, delete

docker stop docker rm

Net Map 8080 -> 172.16.0.3:8080

/go/bin/app

VM start

VMware Cloud Native Product Overview

24

Photon OS Photon OS

vSphere SDDC

Photon

Platform

vSphere Integrated Containers

IT Ops Team

Existing IT Environments Greenfield Cloud Native

Custom or 3rd-Party tooling

Line of Business (Developers, DevOps, etc.)

PaaS: Cloud Foundry,

OpenShift

Container Orchestration:

Kubernetes, Marathon, Swarm

Databases: EnterpriseDB,

MongoDB

Data Analytics: Hadoop, Spark

Middleware: Kafka, RabbitMQ

Specialized Infrastructure Purely for Cloud Native

25

Unified Platform: Carries Passengers + Cargo Specialized Platform: Cargo-only

•  Core technologies: engines, frame/skin, cockpit technology, etc. •  Core skills: pilot, maintenance, airport + air-traffic personnel.

Common Foundation

vSphere Platform

ESX, NSX, vRealize,

VSAN

Photon Platform

Photon Platform: A Clean-Slate Approach, Optimized for DevOps

26 CONFIDENTIAL

Optimized Feature-set Purpose-built for cloud native, it provides just the features needed to provide a secure and SLA-capable infrastructure for next-gen apps.

API-first Model Built on clean, devops-friendly APIs, enabling consumption and operations to automate heavily to handle massive scale.

Scale-out Control Plane A scale-out control plane optimizes for the creation of 1000s of simultaneous new workloads while delivering active availability of system APIs.

New Economics / Open Source Open source control plane with subscription-based pricing models. Optimized for use with VMware storage, and networking technology.

Photon Platform High-Level Architecture

ESXi / PhotonOS ESX Storage / Virtual SAN NSX Best-of-breed virtualization infrastructure, capable of using off-the-shelf hardware.

Multi-tenant API-driven fabric optimized for scale, churn and high-availability.

Photon Controller

vROPS Photon Platform Mgmt Tools

Simple and automated operations and management optimized for datacenter scale.

Log Insight 3rd-party / Custom Mgmt & Ops

Diverse developer-centric “consumption surfaces” from VMware, 3rd-parties, customers.

Pivotal Cloud

Foundry Custom

CI / CD

VMware Cell Manager SaaS OSS / Partner-built Customer-built

CoreOS Tectonic

Cloudera Director

Docker Machine

Cassandra

Kubernetes Hadoop

MongoDB

Photon Platform Architecture

28

VMware ESX

PhotonOS VMware ESX

PhotonOS VMware ESX

PhotonOS

Photon Controller #1

Photon API

Photon Controller: Clustered design delivers massive scale and high-

availability.

Cloud Foundry Cluster Kubernetes

Cluster

Combination of local and/or shared

ESX datastores.

Photon Controller #2

Photon Controller #3

Photon Machine: Combination of core ESX with PhotonOS

Cloud Foundry API Kubernetes API

Create CF cluster Create Kubernetes cluster

cf push cf scale kubectl create

kubectl get pods

Photon Platform Demo

29

VMware Cloud Native Product Overview

30

Photon OS Photon OS

vSphere SDDC

Photon

Platform

vSphere Integrated Containers

IT Ops Team

Existing IT Environments Greenfield Cloud Native

Custom or 3rd-Party tooling

Line of Business (Developers, DevOps, etc.)

PaaS: Cloud Foundry,

OpenShift

Container Orchestration:

Kubernetes, Marathon, Swarm

Databases: EnterpriseDB,

MongoDB

Data Analytics: Hadoop, Spark

Middleware: Kafka, RabbitMQ

@cloudnativeapps #vmwcna

vmware.github.io

Thank You!

[email protected]

blogs.vmware.com/cloudnative