IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario...

36
IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab [email protected] @_mario_kam_

Transcript of IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario...

Page 1: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM Bluemix

Digital Innovation

PlatformMario Kamburov

IBM CEE Cloud Innovation Lab

[email protected]

@_mario_kam_

Page 2: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation2

The Digital Innovation Platform

Innovation is the new currency

“Two guys in a coffee

shop can have access

to the same computing

power as a Fortune 500

company.”

Jim Deters

Founder, Galvanize

Page 3: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation3

Infrastructure as a

Service

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Platform as a

Service

Built on open

technologies

https://console.ng.bluemix.net/catalog/

IBM Bluemix Overview

With security in

mind

Page 4: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation4

Build awesome app in no time

RUN APPS

YOUR WAYCATALOG OF

SERVICES / APIs

FLEXIBLE

TOOLING

Page 5: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation5

Total cost of ownership

Comparison between Dedicated and Local.

5

Customer Managed

IBM Managed

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

Code

Data

Runtime

Middleware

OS

Virtualization

Servers

Storage

Networking

IBM Managed On-Prem Platform

Bluemix Dedicated

c o

c o

c

c

c

o

o

o

o

o

o

o

IBM Managed Single Tenant Platform

Bluemix Local

o

c

o

o

o

o

o

perational Expense

apital Expense

One Bill for

Bluemix

Bluemix

SoftwareMgmt

Expense

Your IaaS

Software

c

c

Your

Hardware

Your Ops

Staff

X / Month ~X / Month

~4X / Month**Based on 10 FTE + SoftLayer infrastructure costs

5

Page 6: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

Demo

Page 7: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

© 2015 IBM Corporation7

DEMO 2

IBM CEE iLABs

Page 8: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

© 2015 IBM Corporation8

DEMO 2

IBM CEE iLABs

Page 9: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation9

DevOps pipeline

Page 10: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

Under the hood

Page 11: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation11

What is Cloud Foundry?

An open platform-as-a-service (PaaS). The system supports multiple

frameworks, multiple application infrastructure services and

deployment to multiple clouds.

Making Multi-Cloud a Reality

Page 12: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation12

Languages/Frameworks/Services

Multi-Language

Ruby, Java, Scala, Node.js, Erlang, Python, PHP..

Multi-Framework

Rails, Sinatra, Spring, Grails, Express, Lift

Multi-Services

MySQL, Postgres, MongoDB, Redis, RabbitMQ

Multi-Cloud, Multi-IaaS

Public Cloud, MicroCloud, Private Cloud

Page 13: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation13

Cloud Foundry Goals & Principles

• No single point of failure

• Distributed state

• Self healing

• Horizontally scalable

• Loose coupling

• Event-driven

• Asynchronous

• Idempotent

• Language independent communication

https://www.youtube.com/watch?v=Me2_-FIIYec

Page 14: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation14

Bluemix High Level Architecture

Page 15: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation15

Cloud Foundry Layers

clients

Inner shell

Outer shell (BOSH)

Infrastructure as a Service

Hardware (CPU, Storage, Memory, Network)

Page 16: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation16

Cloud Foundry deep dive architecture

http://cloudacademy.com/blog/cloud-foundry-components/

Page 17: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation17

Cloud Foundry deep dive architecture

Page 18: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation18

Cloud Foundry deep dive architecture

Page 19: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation19

Buildpacks

Defines the rules to create a fully-contained execution environment

A Droplet is a fully self-sufficient, referentially correct package that can be

executed in an isolated environment

App Buildpack Droplet

Page 20: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation20

Cloud Foundry – Application Staging

Page 21: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation21

Cloud Foundry – Application Staging

Stager

Play RailsSpring …..

Page 22: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation22

Staging process (Spring application)

.war

start

stopbuildpack

Facade

Shell script

agent

DAE

Page 23: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation23

Design of a VM

Page 24: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation24

Workflow

Page 25: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation25

CF Stacks

A stack is a prebuilt root filesystem (rootfs) which works in tandem with a buildpack and is used to support running applications.

Page 26: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

Use Cases

&

Best practises

Page 27: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation27

Solution Architecture

http://iengage.mybluemix.net/

Page 28: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation28

Hybrid cloud

Page 29: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation29

Parsing VCAP_SERVICES

Nodeif (process.env.VCAP_SERVICES) {

var env = JSON.parse(process.env.VCAP_SERVICES);

var credentials = env['mysql-5.5'][0].credentials;

}

Rubymysql_dbs = JSON.parse(ENV['VCAP_SERVICES'])["mysql-5.5"]

credentials = mysql_dbs.first["credentials"]

JavaString vcap_services = System.getenv("VCAP_SERVICES");

if (vcap_services != null && vcap_services.length() > 0) {

JsonRootNode root = new JdomParser().parse(vcap_services);

JsonNode mysqlNode = root.getNode(”mysql-5.5");

JsonNode credentials = mysqlNode.getNode(0).getNode("credentials");

}

Note Java buildpack parses VCAP_SERVICES and can auto configure bound services – see Bluemix Liberty for Java documentation

Page 30: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation30

Cloud Foundry - Services

Page 31: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation31

12 Factors for cloud development

http://12factor.net/

Page 32: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation32

9 rules for cloud applications

1. Don’t code your application directly to a specific topology

2. Don’t assume the local file system is permanent

3. Don’t keep session state in your application

4. Don’t log to the file system

5. Don’t assume any specific infrastructure dependency

6. Don’t use infrastructure APIs from within your application

7. Don’t use obscure protocols

8. Don’t rely on OS-specific features

9. Don’t manually install your application

Read the article : http://www.ibm.com/developerworks/websphere/techjournal/1404_brown/1404_brown.html

Page 33: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation33

Monolith vs. Microservices

“To make error is human. To propagate error to all server in automatic way is#devops.” –DevOps Borat.With each service being completely different

architecture wise and language it is in it would be near impossible for a central “ops” team to manage all the apps.

For example, if Dave a front-end dev wants to change the color of a button, it would require the whole app to be built, tested, and re-deployed for a tiny change.

Page 34: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation34

Microservices architecture example

http://microservices-ui-mkamburo-141.mybluemix.net/

http://microservices-catalogapi-mkamburo-142.mybluemix.net

http://microservices-ordersapi-mkamburo-141.mybluemix.net/rest/orders

Page 35: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

IBM CEE Cloud iLab © 2015 IBM Corporation35

Links

• https://www.youtube.com/watch?v=p48KslXmP7A

• http://cloudacademy.com/blog/cloud-foundry-components/

• https://developer.ibm.com/bluemix/2015/03/16/sample-application-using-microservices-bluemix/

• https://www.youtube.com/watch?v=y4zor2y-yck

• https://www.youtube.com/watch?v=oXExLtmw0q4

Page 36: IBM Bluemix Digital Innovation Platform - cvut.cz · IBM Bluemix Digital Innovation Platform Mario Kamburov IBM CEE Cloud Innovation Lab ... Bluemix Bluemix Software Mgmt Expense

Thank you!

Bluemix.netRegister at:

to get your 30 days free trial