introduction into cloud foundry and bosh describing architecture, deployment, app staging and cloud...

Post on 20-Jun-2015

405 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introduction into Cloud Foundry and Bosh describing architecture, deployment, app staging and Cloud Foundry & Bosh self-healing capabilities.

TRANSCRIPT

Cloud Foundry & Bosh A Cloud Love

In this talk you will

• discover the anynines stack

• get known to Cloud Foundry

• learn how Bosh deploys Cloud Foundry

Introduction

100% European

30+ employees

The anynines Stack

Built on approved Open Source

Software

Hardware

OpenStack

Cloud Foundry

VMware

We migrated from a Rented VMware to a

self-hosted OpenStack.

< 30 min downtime.

Read more: http://rh.gd/a9vmw2sos

Cloud Foundry

• open source software, Apache 2 license

• developed by Pivotal, ~$500 mio. funding

• mostly written in Ruby & Go

CF Architecture

Anynines Elastic Runtime MongoDB Service

MongoDB Service Broker

MongoDB Bosh

MongoDB Service Clusters

Load Balancer & SSL Broker

Application Router

Cloud Controller Health Manager

UAA Login Service

NATS Messaging Bus

DEA Pool

DEA VM 1 DEA VM 2 DEA VM n

App Container 1

App Container 2

App Container 3

App Container 4

App Container 5 App Container n

Blob Store

Bosh

Bosh Director

Bosh Health Manager

Bosh Workers Bosh Resurrector

Bosh Task Queue Bosh DNS Server

Deploying an App

Anynines Elastic Runtime

Blob Store Cloud Controller

DEADEA DEA

= Droplet = Your runnable app

App ContainerApp Container

Application Deployment

cf push{meta: data}

Health Manager

Staging an App

Anynines Elastic Runtime

Blob Store Cloud Controller

DEADEA DEA

= Droplet = Your runnable app

App Container

Application Staging

Global Buildpacks

+ =

Anynines Elastic Runtime

Blob Store Cloud Controller

DEADEA DEA

= Droplet = Your runnable app

App Container

Application Staging

Global Buildpacks

+ =App Container

Scaling an App

cf scale myapp -i 2

Anynines Elastic Runtime

Blob Store Cloud Controller Health Manager

NATS Message Bus

DEADEA DEA

App Container

= Droplet = Your runnable app

App Container

Application Scale-Out

Cloud Foundry Elastic Runtime

Summary

• Application server grid on steroids

• Generic buildpack support

• SCM agnostic deployments

Services

cf create-service mongodb cluster-med mydb1

Create Service Instance

Anynines Elastic Runtime

Blob Store Cloud Controller

Health Manager

DEA

App Container App Container

MongoDB Service

Service Broker

Example: MongoDB - Could be any other service

Mongo Cluster 1DEA

VM VM VM

Mongo Cluster 2

VM VM VM

Service Bosh

Service Provisioner Inception VM

cf bind-service mongodb mydb1

Anynines Elastic Runtime MongoDB Service

Create Service Instance

Blob Store Cloud Controller

Health Manager

DEA

App Container App Container

Service Broker

Example: MongoDB - Could be any other service

Mongo Cluster 1DEA

VM VM VM

Mongo Cluster 2

VM VM VM

Service Bosh

Service Provisioner Inception VM

{user: john, password: doe}

Back to the big picture

Read more http://rh.gd/1E41ZqZ

Anynines Elastic Runtime MongoDB Service

MongoDB Service Broker

MongoDB Bosh

MongoDB Service Clusters

Load Balancer & SSL Broker

Application Router

Cloud Controller Health Manager

UAA Login Service

NATS Messaging Bus

DEA Pool

DEA VM 1 DEA VM 2 DEA VM n

App Container 1

App Container 2

App Container 3

App Container 4

App Container 5 App Container n

Blob Store

Bosh

Bosh Director

Bosh Health Manager

Bosh Workers Bosh Resurrector

Bosh Task Queue Bosh DNS Server

How to deploy this multitude of services?

Bosh

• IaaS agnostic

• Turnkey deployments for large distributed systems

• VM orchestration

• Installation automation

Anynines Operations Manager (Bosh) Anynines IaaS (OpenStack)

CF Health Manager (Process)

Bosh Agent

VIR

TU

AL

MA

CH

INE

Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Bosh Health Monitor

Bosh Director

NATS Message Bus

Infrastructure Level Self-Healing

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Bosh CLI

Bosh Blobstore

DNS Server

Bosh CPI

Registry

Resurrector

Task Queue

Task Workers

VM

VM

VM

VM

VM

VM

VM

VM

Bosh CPI -

Cloud Provider Interface

Bosh CPI# Stemcell create_stemcell(image, cloud_properties) delete_stemcell(stemcell_id) !# VM create_vm(agent_id, stemcell_id, resource_pool, networks, disk_locality, env) delete_vm(vm_id) reboot_vm(vm_id) configure_networks(vm_id, networks) !# Disk create_disk(size, vm_locality) delete_disk(disk_id) attach_disk(vm_id, disk_id) detach_disk(vm_id, disk_id)

OpenStack CPI http://rh.gd/1oDezng

Four Layers of HA

1. Application Failure⇒ Reboot in new Container ✔

2. Rack Failure⇒ Availability Zones ✔

3. PaaS Process Failure⇒ Reboot component in a new VM ✔

4. PaaS VM Failure⇒ VM Monitor ⇒ Recreate VM ✔

Application Failure

Anynines Elastic Runtime

Blob Store Cloud Controller Health Manager

NATS Message Bus

DEADEA DEA

App Container

= Droplet = Your runnable app

App Container App Container

Application Level Self-Healing

Availability Zone Failure (e.g. Rack Failure)

Anynines Elastic Runtime

IaaS Availability Zone 1 IaaS Availability Zone 2 IaaS Availability Zone 3

DEAs DEAs DEAs

Application Container

Application Container

Application Container

Application Container

Application Container

Application Container

Application Container

Application Container

Application Level Self-Healing

PaaS Process Failure

Anynines Operations Manager (Bosh) Anynines IaaS (OpenStack)

CF Health Manager (Process)

Bosh Agent

VIR

TU

AL

MA

CH

INE

Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Bosh Health Monitor

Bosh Director

NATS Message Bus

Infrastructure Level Self-Healing

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

CF DEA (Process)

Process Monitor

PaaS VM Failure

Anynines Operations Manager (Bosh) Anynines IaaS (OpenStack)

CF Health Manager (Process)

Bosh Agent

VIR

TU

AL

MA

CH

INE

Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Bosh Health Monitor

Bosh Director

NATS Message Bus

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Infrastructure Level Self-Healing

Anynines Operations Manager (Bosh) Anynines IaaS (OpenStack)

CF Health Manager (Process)

Bosh Agent

VIR

TU

AL

MA

CH

INE

Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

Bosh Health Monitor

Bosh Director

NATS Message Bus

Infrastructure Level Self-Healing

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process Monitor

CF DEA (Process)

VIR

TU

AL

MA

CH

INE

Bosh Agent Process MonitorBosh Agent

Summary

• Cloud Foundry is a free, production ready Heroku-like PaaS

• Awesome app runtime

• Service orchestration

• Transparent due to open source

• No vendor-lock in

• Bosh is a cloud-ready orchestration tool

• Describe a distributed-system blueprint⇒ Bosh will build it for you. Ready to use.

Which part(s) should be presented in the next talk?

Thank you!

top related