Speeding up Development with Cloud Foundry

39
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . History . . . Why CloudFoundry matters? . . . . . How to work with it? . . . Development with PaaS Workflow Cloud Foundry Architecture . . Speeding up development with CloudFoundry Alexander Borovsky Altoros [email protected]

description

This presentation will introduce you to Cloud Foundry, an open source PaaS solution that can run on private clouds. It includes a brief overview of the history, architecture, and benefits of Cloud Foundry, as well as some practical advice on deployment, workflows, etc.

Transcript of Speeding up Development with Cloud Foundry

Page 1: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

.

......Speeding up development with CloudFoundry

Alexander Borovsky

Altoros

[email protected]

Page 2: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Overview

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 3: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 4: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

History

Bare servers

Shared hosting

2006 Hardware virtualization in cheap hardware

2008 Heroku

2011 CloudFoundry

Page 5: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

History

Bare servers

Shared hosting

2006 Hardware virtualization in cheap hardware

2008 Heroku

2011 CloudFoundry

Page 6: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

History

Bare servers

Shared hosting

2006 Hardware virtualization in cheap hardware

2008 Heroku

2011 CloudFoundry

Page 7: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

History

Bare servers

Shared hosting

2006 Hardware virtualization in cheap hardware

2008 Heroku

2011 CloudFoundry

Page 8: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

History

Bare servers

Shared hosting

2006 Hardware virtualization in cheap hardware

2008 Heroku

2011 CloudFoundry

Page 9: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 10: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Publish application

.Ruby........$ cf push

.Java........$ cf push

.Other type........$ cf push

Page 11: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Publish application

.Ruby........$ cf push

.Java........$ cf push

.Other type........$ cf push

Page 12: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Publish application

.Ruby........$ cf push

.Java........$ cf push

.Other type........$ cf push

Page 13: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Speed ups deployment

Creating new environment is easy

No deployment scripts required

All developers can have they own production-like environment

Page 14: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Reduces cost

Easier infrastructure creation

Automated cluster monitoring

Less people required to support infrastructure

Page 15: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Reduces cost

Easier infrastructure creation

Automated cluster monitoring

Less people required to support infrastructure

Page 16: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Reduces cost

Easier infrastructure creation

Automated cluster monitoring

Less people required to support infrastructure

Page 17: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 18: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Deployment

cf push

Page 19: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Using buildpacks

.Definition........Buildpack prepares application to run in CloudFoundry

cf push --buildpack <git repo>

.Example..

......

cf push --buildpack \

https://github.com/heroku/heroku-buildpack-php

Page 20: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Using buildpacks

.Definition........Buildpack prepares application to run in CloudFoundry

cf push --buildpack <git repo>

.Example..

......

cf push --buildpack \

https://github.com/heroku/heroku-buildpack-php

Page 21: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Using buildpacks

.Definition........Buildpack prepares application to run in CloudFoundry

cf push --buildpack <git repo>

.Example..

......

cf push --buildpack \

https://github.com/heroku/heroku-buildpack-php

Page 22: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Using subfolder for deploy

cf push --path <path>

Page 23: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Application Scaling

cf scale

Page 24: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Service

.Definition........Service is persistence level in CloudFoundry

.Service creation........cf create-service

.Service binding........cf bind-service

Page 25: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Service

.Definition........Service is persistence level in CloudFoundry

.Service creation........cf create-service

.Service binding........cf bind-service

Page 26: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Service

.Definition........Service is persistence level in CloudFoundry

.Service creation........cf create-service

.Service binding........cf bind-service

Page 27: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Development with PaaS Workflow

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 28: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for Developer

...1 Each developer have production-like environment

...2 Require small changes in application architecture

.Details..

......

No local storage

Share-nothing nodes

Page 29: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for Developer

...1 Each developer have production-like environment

...2 Require small changes in application architecture

.Details..

......

No local storage

Share-nothing nodes

Page 30: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for Developer

...1 Each developer have production-like environment

...2 Require small changes in application architecture

.Details..

......

No local storage

Share-nothing nodes

Page 31: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for DevOps

...1 Easy creation of environments

...2 Easy scaling

...3 Easy environment duplication

Page 32: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for DevOps

...1 Easy creation of environments

...2 Easy scaling

...3 Easy environment duplication

Page 33: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for DevOps

...1 Easy creation of environments

...2 Easy scaling

...3 Easy environment duplication

Page 34: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for System Administrators

...1 Control used resources

...2 Faster notification and recover after disasters

...3 Better hardware usage

Page 35: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for System Administrators

...1 Control used resources

...2 Faster notification and recover after disasters

...3 Better hardware usage

Page 36: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Changes for System Administrators

...1 Control used resources

...2 Faster notification and recover after disasters

...3 Better hardware usage

Page 37: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Cloud Foundry Architecture

...1 History

...2 Why CloudFoundry matters?The same tool to do all thingsSpeed ups deploymentReduces cost

...3 How to work with it?DeploymentApplication ScalingServices

...4 Development with PaaS WorkflowFor DevelopersFor DevOpsFor System Administrators

...5 Cloud Foundry Architecture

Page 38: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Cloud Foundry Architecture

Page 39: Speeding up Development with Cloud Foundry

..........

.....

.....................................................................

.....

......

.....

.....

.

History. . .Why CloudFoundry matters?

. . . . .How to work with it?

. . .Development with PaaS Workflow Cloud Foundry Architecture

Questions?