Top Banner
Alexander Lomov Cloud Foundry Engineer github: @allomov twitter: @code1n Alan Moran Cloud Foundry Architect github: @bonzofenix twitter: @bonzofenix
51

Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Jul 25, 2015

Download

Technology

Pivotal
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 Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Alexander LomovCloud Foundry Engineer

github: @allomovtwitter: @code1n

Alan MoranCloud Foundry Architect

github: @bonzofenixtwitter: @bonzofenix

Page 2: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

*WHAT WE DO

Popular!Popular!

Page 3: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

*

Buenos Aires

Oslo

London

Zurich

Sunnyvale, CA

Copenhagen

Minsk

Santa Fe

Boston

30%Female

70%Male

+5Join us on an

average month

FACTS ON ALTOROS

Altoros offices

Altoros’s delivery partner in APAC

Singapore

SingaporeTokyo256+Full Time EnablersDevOps Software Engineers

Page 4: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

How this story begun...

Page 5: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

How this story begun...

Page 6: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Why Multi Cloud

Deployments?

Page 7: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Be close to your clients

Page 8: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Redundancy brings fault tolerance

Page 9: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

What about Cloud Foundry on Multi Cloud?

Page 10: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

There are various limitation...

Page 11: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

UAA and CC needs consistent datastore

Page 12: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

NATS is not designed for multi-cluster work

NATS cluster at work

Page 13: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Timeouts

Page 14: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

● Replicate the same Cloud Foundry installation.

The solution

● Distribute load though GeoDNS.

● Deploy apps on All CF Clusters.

Page 15: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

One bosh to rule them all

Page 16: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

HOW?

Page 17: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Bosh supporting single cloud

Page 18: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

BOSH supporting multiple clouds

Page 19: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

BOSH Cloud Specific Inputs

Page 20: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Cloud Configs

Page 21: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Cloud Config Example

networks:

- name: my-net

type: vip

resource_pools:

- name: my-vms

network: my-net

compilation:

workers: 5

network: my-net

iaas.yml

Page 22: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Cloud Configs

# saves cloud config to the Director

$ bosh update cloud-config ./iaas.yml

# outputs saved config to stdout

$ bosh cloud-config

Page 23: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Multiple Cloud Deployment Inputs

Page 24: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Stemcell Upload

Page 25: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Stemcell Upload

Page 26: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Stemcell Upload

Page 27: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

bosh upload stemcell --cloud dc-0 openstack-stemcell.tgz

bosh upload stemcell --cloud dc-1 vsphere-stemcell.tgz

Stemcell Upload

bosh update cloud-config openstack.yml

bosh upload stemcell openstack-stemcell.tgz

bosh update cloud-config vsphere.yml

bosh upload stemcell vsphere-stemcell.tgz

or

Page 28: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Ready to deploy

Page 29: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

● Binding Deployment● Creating a Plan● Package Compilation● Creating Jobs/VMs

Page 30: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Binding Process

Page 31: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Build-in multiple cloud deployment to a binding process

Problem

Page 32: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Binding Multi-Cloud Deployment

Page 33: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

● Binding Deployment● Creating a Plan● Package Compilation● Creating Jobs/VMs

Page 34: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Compilation Process

Page 35: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Compilation Process

Page 36: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Provide an access to a blobstore to all bosh-agents

Problem

Page 37: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Use separate blobstore for each cloud and sync them

Solution

Use separate blobstore and compile packages on each cloud

Page 38: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Use external blobstore which is accessible to all clouds

Solution

Use DAV blobstore and share it using VPN

Page 39: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

● Binding Deployment● Creating a Plan● Package Compilation● Creating Jobs/VMs

Page 40: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Creating Jobs

Page 41: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Creating Jobs

Page 42: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Creating Jobs

Page 43: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Creating Jobs

Page 44: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Creating Jobs

Page 45: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Provide an access to a NATS cluster to all bosh-agents

Problem

Page 46: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Make some NATS servers public or share them using VPN

Solution

Use “https messaging bus” mode

Page 47: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Solution

Page 48: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

One bosh to rule them all

Page 49: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Alexander LomovCloud Foundry Engineer

github: @allomovtwitter: @code1n

Alan MoranCloud Foundry Architect

github: @bonzofenixtwitter: @bonzofenix

Page 50: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment
Page 51: Cloud Foundry Summit 2015: Managing Multiple Cloud with a Single BOSH Deployment

Alexander LomovCloud Foundry Engineer

github: @allomovtwitter: @code1n

Alan MoranCloud Foundry Architect

github: @bonzofenixtwitter: @bonzofenix