Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

17
ROME 27-28 march 2015 Lab Hands-on: Sviluppo di un sistema a Microservizi con IBM Bluemix [email protected] – IBM @gjuljo Giulio Santoli ibm.biz/Bluemix2015

Transcript of Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

Page 1: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015

Lab Hands-on: Sviluppo di un sistema a Microservizi con IBM Bluemix

[email protected] – IBM@gjuljo

Giulio Santoli

ibm.biz/Bluemix2015

Page 2: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Microservices, a definition

“Microservices are tiny apps talking with uniform interface installed as well-behaved OS services.”

lightweight, small footprint, follow Single Responsibility Pattern

RESTful. decoupled, scalable, discoverable. self-contained, run with a single

one-liner command

Eduards Sizovs (www.slideshare.net/eduardsi)

Page 3: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Siloed teams lead to siloed architectures

http://martinfowler.com/articles/microservices.html

Page 4: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Conway’s Law

Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.

- Conway, Melvin E. (April 1968)

Page 5: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Cross-functional teams lead tocapability-oriented architectures

http://martinfowler.com/articles/microservices.html

Page 6: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Microservices v.s. MonolithicScalability Scenarios

http://martinfowler.com/articles/microservices.html

Page 7: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Microservices v.s. MonolithicDatabase usage

http://martinfowler.com/articles/microservices.html

Page 8: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Bluemix is an open-standards, cloud-based platform for building, running, and managing applications.

IBM DevOps ServicesManage the software lifecycle, from planning to production

Internet of ThingsIntegrate your apps with the physical world

Watson ServicesLeverage the power of Cognitive Computing in your apps

Dallas (now)

London (now)

Bluemix Public LocationSoftLayer Data Center

What is Bluemix?

Page 9: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Bluemix is more than PaaS

*Bluemix Local coming Summer 2015

Customer Managed

Service Provider Managed

Infrastructure as a Service

Platform as a Service

Traditional on-premises

Page 10: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Bluemix DevOps Services

CloudFoundry

DockerContainers

Open StackVMs

AgilePlanning

Web IDE(Orion)

DeliveryPipeline

GitHosting

BETABETA

Bluemix & DevOps Services

Bluemix is an application run-time environment, DevOps Services handles the software lifecycle, from project to delivery.

BETABETA

Page 11: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

DevOps Services: microservices in action

Page 12: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

References

Page 13: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

UI Composition Pattern Example

NGINX

APP1

REDIS

CLIENT

APP2 APPN

Bluemix

FACEBOOK

Web IDE(Orion)

DeliveryPipeline

GIT

DevOps Services

Page 14: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Get the lab instructions at the following link:http://www.slideshare.net/gjuljo/codemotion-rome-2015-bluemix-lab-tutorial

Page 15: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

More references and docs

- BLUEMIX DOCShttps://www.ng.bluemix.net/docshttps://developer.ibm.com/bluemix

- PREREQUISITES AND DOWNLOADhttps://developer.ibm.com/bluemix/support/#prereqshttps://www.ng.bluemix.net/docs/#starters/BuildingWeb.html#building_web

- COMMAND LINE AND VCAP_SERVICES ENVIRONMENT VARIABLEhttps://www.ng.bluemix.net/docs/#cli/index.html#clihttp://docs.cloudfoundry.org/devguide/deploy-apps/environment-variable.html

- MANIFEST GUIDE (manifest.yml)http://docs.cloudfoundry.org/devguide/deploy-apps/manifest.html

- BUILDPACK FROM CLOUD FOUNDRY COMMUNITYhttps://github.com/cloudfoundry-community/cf-docs-contrib/wiki/Buildpacks

Page 16: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Tutorials

- BUILD YOUR FIRST NODE.JS WEB SITE https://www.youtube.com/watch?v=GRQnwVhYeWUhttp://www.ibm.com/developerworks/library/wa-simplenode1-app/index.html

- EXAMPLE HYBRID MOBILE APP AND PUSH NOTIFICATIONhttp://www.ibm.com/developerworks/mobile/library/mo-push-apache-cordova-app

- EXAMPLE JAVA EE AND CLOUDANThttps://developer.ibm.com/bluemix/2014/07/08/cloudant_on_bluemix

- EXAMPLE MEAN STACK (MongoDB, Express, AngularJS, Node.js)http://www.ibm.com/developerworks/web/library/wa-nodejs-polling-app/index.html

- EXAMPLE NODE-RED, TWITTER AND WATSON Q&Ahttp://www.ibm.com/developerworks/cloud/library/cl-twitterbot-watson-bluemix-app/index.html

- GETTING STARTED WITH DOCKERhttps://developer.ibm.com/bluemix/2014/12/04/ibm-containers-beta-docker

Page 17: Codemotion Rome 2015 - Microservices with IBM Bluemix and DevOps Services

ROME 27-28 march 2015 - Giulio Santoli

Leave your feedback on Joind.in!https://joind.in/event/view/3347