become a bluemix architect in 45 minutes

28
Become a Bluemix Architect in an hour 45 minutes (a.k.a. learn my job in 2,700 seconds) (perhaps not quite) Andrew Ferrier Bluemix Solution Architect, IBM Bluemix Garage [email protected]

Upload: andrew-ferrier

Post on 05-Apr-2017

37 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Become a Bluemix Architect in 45 Minutes

BecomeaBluemix Architectinanhour 45minutes

(a.k.a.learnmyjobin2,700seconds)(perhapsnotquite)

AndrewFerrierBluemix SolutionArchitect, IBMBluemix Garage

[email protected]

Page 2: Become a Bluemix Architect in 45 Minutes

Agenda

• WhatisBluemix (andwhywouldIuseit)?• MajorComponents– ComputeModels

• Anaside:Microservices

• MajorComponents– Services• NFRs– Security,Performance,Integration• FurtherInformation

Page 3: Become a Bluemix Architect in 45 Minutes

WhatisBluemix (andwhywhould Iuseit)?

Page 4: Become a Bluemix Architect in 45 Minutes

ThirdParty

IBM

YourOwn

OpenSource

What is Bluemix?

Amanaged platformtodevelop,deployandrunenterpriseapplications

Page 5: Become a Bluemix Architect in 45 Minutes

?

Page 6: Become a Bluemix Architect in 45 Minutes

Why?• Developinthecloud– reduce

infrastructurehassles

• FastDevelopmentusingDevOps

• Standards-based–NodeJS,Java,CloudFoundry,Dockerarejustsomeofthemanyopentechnologies

• Diversesetofservices• Analytics, cognition• Mobile, location• Internet of Things• Social engagement • Identity • Reviews• Travel• Messaging• Weather …• Your company private APIs and services

Page 7: Become a Bluemix Architect in 45 Minutes

MajorComponents– ComputeModels

Page 8: Become a Bluemix Architect in 45 Minutes

Virtual Servers

“Abstraction”

“Control”

Bare Metal

Dedicated Compute

High Memory

Intensive Disk I/O

Isolation

Familiar

Full OperatingSystem Control

Containers

Portable

Flexible

Light-weight

CF Apps

Speed

Manage code,not infrastructure

OpenWhiskStateless

Event-Driven

Short-lived

…m

eets

you

r dev

elop

er n

eeds

PaaSCaaSIaaS

Bluemix Compute Models

Page 9: Become a Bluemix Architect in 45 Minutes

AnAside:Microservices

Page 10: Become a Bluemix Architect in 45 Minutes

Microservicesarchitecture

Amicroservice isagranular,decoupledcomponentwithinabroaderapplication

Monolithicapplication

Silo

Microservicesapplication

Microservice(component)

Microservice(component)

Microservice(component)

• Agility• Scalability• Resilience

Simplistically,microservicesarchitectureisaboutbreakingdownlargesiloapplicationsintomoremanageable,fullydecoupledpieces

Page 11: Become a Bluemix Architect in 45 Minutes

Sampleapplicationthatusesmicroservices• Airlinereservationapplication

• Bookflights• Timetable lookup• Calculate fare• Allocate seats• Managerewards• Updatecustomer• Adjustinventory

bookFlights

calculateFare

allocateSeats

manageRewards

timetableLookup

adjustInventory

updateCustomer

Page 12: Become a Bluemix Architect in 45 Minutes

Keytenetsofamicroservicesarchitecture1. Largemonolithsarebrokendownintomanysmall

services• Eachservice runsinitsownprocess

2. Servicesareoptimizedforasinglebusinessfunction3. CommunicationviaRESTAPIormessagebrokers4. Per-servicecontinuousintegrationandcontinuous

deployment(CI/CD)5. Per-servicehighavailability(HA)andclusteringdecisions

• Onesizeorscaling policyisnotappropriateforall

Page 13: Become a Bluemix Architect in 45 Minutes

Backtothosecomputemodels…

Page 14: Become a Bluemix Architect in 45 Minutes

What is Docker?• OpenSoftware,LaunchedMarch2013,contributors includeIBM,RedHat,Google,Microsoft,VMware,AWS,Rackspace,…

• Automatesdeployment ofapplications insoftwarecontainers

• Applicationsarewrappedinacompletefilesystemthat includesCode,runtime,systemtools,andsystemlibraries

• Willalwaysrunthesameway,independent oftheenvironment

• Merelythemostpopular implementationofageneralconceptofcontainers

• DockerisLinux-only

ProcessPID

IPC

=Namespaces forisolation

CPUMemory

=Controlgroupsfor resourceconstraint

Page 15: Become a Bluemix Architect in 45 Minutes

IBM Bluemix Container ServiceDocker-basedcontainerruntime,plus:• ManageanddistributeDockerimagesinprivateimageregistries

• Built-inelasticityandauto-recovery• Built-inloggingandmonitoring• Vulnerabilityscannertodetectissuesandproposeresolution

• IntegrationwithDevOpstoolstosupportbuildingofimages

• NewbetabasedonKubernetes(containerorchestrator)asofMarch20th,bringing:

• Declarativetopologyofcontainers• Automatic deployment ofcontainerstoresources

• Self-healing abilities• Integratedservicediscovery• Abilitytodorichsecret andconfigurationmanagement

Page 16: Become a Bluemix Architect in 45 Minutes

CloudFoundry(akaInstantRuntimes)

• Buildpack-basedruntimes• Bluemix provideshostedopen-sourceCloudFoundry,pluscustombuildpacks:

• LibertyforJava• Node.js• Swift• AccesstoBluemix ServiceCatalog

OperatingSystem

AppServer/Runtime

YourCode

Buildpack

Page 17: Become a Bluemix Architect in 45 Minutes

OpenWhisk

• Serverless applicationhosting,event-drivenexecution

• Programmingmodel• Rule:=Triggerà Action(s)

• Triggers• EventsfromREST,Cloudant,Watson,Weather,etc.

• Actionprogrammingmodel• Ideallyamicroservice,short-running• CloudFoundryapplication• Dockercontainer• ActionscanuseBluemix servicecatalog

Pool of actions

Swift DockerJS

Trigger

1

Running action

Running action

Running action

3

Deploy action within millisecs,run it, free up resources

OpenWhisk Engine

2

Page 18: Become a Bluemix Architect in 45 Minutes

Bare Metal ContainersVirtual Servers Cloud Foundry OpenWhisk

Actions: Code (single function)

Triggers: Events/Messages

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

Code

Data

OS

Virtualization

Servers

Storage

Networking

Runtime

Middleware

Customer ManagedService Provider Managed

Actions & Triggers

Levels of Responsibility

Page 19: Become a Bluemix Architect in 45 Minutes

MajorComponents– ServiceCatalog

Page 20: Become a Bluemix Architect in 45 Minutes
Page 21: Become a Bluemix Architect in 45 Minutes

(Very)SelectedHighlights

Cloudant – NoSQLDatabase

APIConnect– APIs/Integrationfor2017

WebSphereonCloud– MigrationPath

WatsonServices(Conversation,NaturalLanguage,VisualRecognition,etc.)

Page 22: Become a Bluemix Architect in 45 Minutes

NFRs(theDifficultBits)

Page 23: Become a Bluemix Architect in 45 Minutes

Integration(Networking)

• Bluemix Public• Partofthepublicinternet• Internetworkingwithon-prem:

1. UseServiceGatewayand/orVPNOR2. ExposeAPIsfromexistingon-premise

• Bluemix Dedicated• Bydefault,networkispartofcustomer’snetwork• Canbeopenedtopublicinternetalso

• Bluemix Local• Alwaysnetworkedtobepartofcustomer’sinfrastructure

Page 24: Become a Bluemix Architect in 45 Minutes

Integration(Functional)

• APIConnectforGreenfield

• IIBisalsoanoption:

Page 25: Become a Bluemix Architect in 45 Minutes

Security

• Bluemix Public• MakeeverythingrunoverHTTPS• AllCFruntimes areexposedpublically;Docker(inparticularwithKubernetes)willprovidemorecapability

• Thinkaboutdataresidency– CFservices canbeprovisionedanywhere

• Bluemix Dedicated• Dataresides outside yourdatacenter

• Bluemix Local• Dataresides locallyas longasyouusealocalservice• Ifyouuseafederatedservice, youareusingPublic

Page 26: Become a Bluemix Architect in 45 Minutes

Performance

• Thinkhorizontalscalingi.e.scalingisprettymuchconstantagainstnumberofinstances

• Impliesstateless architectures(nomoresessions)

• Thisisthe12-factorconcurrencyprinciple:https://12factor.net/concurrency

Page 27: Become a Bluemix Architect in 45 Minutes

• Best-of-breed industrytoolchains• Customizable toolchaintemplates,oneclicksetup

• Buildpipelines forCloudFoundry,Containers,etc.

DevOps– Toolchains+Pipelines

Page 28: Become a Bluemix Architect in 45 Minutes

Links• TryBluemixPublicfreefor30days:

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

• IBMCloudArchitectureCenter:https://www.ibm.com/devops/method/category/architectures/

• The12-factorapp:https://12factor.net/

• Microservices fromTheorytoPractice:https://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg248275.html?OpenDocument

• Bluemix Blog:https://www.ibm.com/blogs/bluemix/

• WatsonDeveloperCloud:

https://www.ibm.com/watson/developercloud/

• CreatingEffectiveMobileApplicationswithBluemix:http://ibm.biz/mobile-bluemix

• UnderstandingDockerandIBMBluemix ContainerService:http://ibm.biz/docker-bluemix

• Needsomehelp?– IBMBluemix Garage:http://ibm.biz/bluemix-garage