SlideShare a Scribd company logo
Achieving Developer Nirvana With
Codename: BlueMix
By: Ryan Baxter
@ryanjbaxter
http://ryanjbaxter.com
Not The Band
1
Definition
nirvana
/nərˈvänə,nir-/
In the Buddhist tradition, nirvana is described as the
extinguishing of the fires that cause suffering.
2
Does This Sound Like Dev Nirvana?
 Install runtime, container, and all libraries
 Install needed services (databases, mobile, etc)
 Bind the services to the application, ports/ips/firewalls
 Setup dynamic routing and load-balancer
 Setup four layers of built-in High-Availability
 Setup streaming logging aggregation
 Setup application performance monitoring
 Scale the application up to X instances
 Then repeat for dev, test, and production
3
What Is BlueMix?
 A platform for running virtually any application in the cloud
without having to worry about the hardware, software, and
networking needed to do so.
 This definition is usually what we refer to as a platform-as-
a-service or PaaS
 BlueMix is similar to other platforms you may have heard
of
 Heroku, Google App Engine, OpenShift, Pivotal One
4
How Everything Fits Together
 A PaaS is software that is
usually running on top of an
IaaS and abstracts the
complexities of the IaaS away
 BlueMix runs on top of Softlayer
 Your app runs on top of
BlueMix and has no knowledge
of the IaaS layer
5
IaaS (Softlayer)
PaaS (BlueMix)
Your App
Why Not Just Use IaaS?
 It might be just as easy to get started at the IaaS layer if
you use a prebuild image
 Over time though the maintenance of this image
increases the cost
 OS updates, security updates, new versions of libraries, DNS and
networking changes, configuration and maintenance of other
services like DBs, etc
 At the PaaS layer all of this cost disappears! The platform
takes care of it for you!
6
Benefits Of Using BlueMix
 Save time by just worrying about the code and not the
infrastructure
 Quickly get your app in the hands of your users –
deploying your app is a matter of running a single
command
 Easily add functionality to your application using IBM and
partner provided services
 Use the languages, runtimes, and frameworks that you
are most familiar with
 SoftLayer
7
BlueMix Open Beta
 BlueMix is currently in open
beta, you need to register to get
going
 During the beta you get 8GB of
memory to use across as many
apps as you want and can
provision up to 20 services
 Register at bluemix.net, you need
an IBM ID
8
Lets Deploy An App!
App to enable anyone to ask questions for a session…but
we can make it even easier.
9
Cloud Foundry And BlueMix
 BlueMix is built upon an open
source project called Cloud Foundry
 IBM contributes to the project and is a
founding member of the Cloud Foundry
Foundation
 All tools, documentation, and
samples for Cloud Foundry are
relevant and can be used with
BlueMix
 Buildpacks, Services, CLI, Scaling,
etc are Cloud Foundry concepts
10
Runtimes And Buildpacks
 One of the benefits of BlueMix is that it supports virtually
any runtime you may want to use
 This is accomplished a psuedo-standard called
buildpacks
 BlueMix has 4 built in buildpacks
 Java Liberty, Node.js, Sinatra, and Ruby On Rails
 If you are pushing an application using one of these languages
you do not need to specify a buildpack to use, BlueMix installs it
for you
 Other runtimes are supported via community buildpacks
11
You Choose The Runtime!
12
Buildpack Anatomy
13
Runtime
Container Libraries
Application
Buildpack
BlueMix Services
 Services allow you to add
functionality to your application
with minimal cost and effort
 Select service and plan, then bind
to your application
 Once a service is bound to your
application information to use
the service is available in an
environment variable called
VCAP_SERVICES
14
The Cloud Foundry Command Line (CLI)
 The command line will most likely be your tool of choice
when doing anything with BlueMix
 Anything you will want to do in BlueMix can be accomplished
using the CLI
 Pushing An Application, stopping, starting, restarting,
deleting
 Create, bind, and unbind services
 View and tail application logs
 Documentation:
http://docs.cloudfoundry.org/devguide/installcf/whats-new-
15
Pushing An Application
 You can push an application
using the cf push command
 What you push depends on the
runtime you will use, for Java you
may push a war or jar, for Node.js
you will push the app directory
 cf push will push everything in
the current directory unless you
specify the –p option
16
Manifest Files
 cf push commands can become very verbose
 cf push appName –p myapp.war –b
https://github.com/ryanjbaxter/mybuildpack -i 5
–m 512M --no-start
 To avoid having to type this you can use a manifest file
 When using a manifest file you just execute cf push and the CLI
will look for manifest.mf in the current directory
 Manifest Generator: http://cfmanigen.ng.bluemix.net
17
Sample Manifest File
 Command Line
cf push appName –p myapp.war –b
https://github.com/ryanjbaxter/mybuildpack -i 5 –m
512M --no-start
 manifest.mf File
---
applications:
- name: appName
memory: 513M
instances: 5
buildpack: https://github.com/ryanjbaxter/mybuildpack
services:
- todo-mongo-db
18
Logging
 Logging is the first step in figuring out what is wrong
 You application’s logs will be written to stderr.log and
stdout.log
 Logs can be viewed in the BlueMix UI by selecting your
applications runtime
 Logs can be tailed from the command line – very useful!
 cf logs appName
 cf logs appName --recent – shows you the most recent
logs
19
Scaling
 BlueMix allows you to scale
your application horizontally
and vertically within minutes
 If the load on your application
increases/decreases you may
want to adjust the number of
instances to handle the load
 If you find the resources
available to your app is tight
you can increase the memory
20
Dev Ops Services
21
• DevOps Solution in the cloud for building
mobile and cloud applications
• Optimized for use with BlueMix
• Integrated task tracking, agile planning,
source control with auto deploy
• Use your favorite tools or work from the
Web IDE
• Hosted Jazz SCM or Git or link to GitHub
• Public and private projects
• Continuous Integration and Deployment
with Jenkins
• Mobile quality and application
performance monitoring (coming)
Resources
 Documentation:
https://www.ng.bluemix.net/docs/index.jsp
 developerWorks: http://developer.ibm.com/bluemix
 Sample Apps & Tutorials:
https://www.ibmdw.net/bluemix/docs/articles/,
https://www.ibmdw.net/bluemix/docs/sample-code/
 Developer Forum:
https://www.ibmdw.net/answers/?community=bluemix
 Blog: https://www.ibmdw.net/bluemix/blog/
 Twitter: #BlueMix, @IBMBlueMix
23
Resources From Today
 Slides: http://www.slideshare.net/RyanBaxter/dev-
nirvanabluemix
 Code: https://github.com/CodenameBlueMix/session-
questions
24
Thank you.
Join the beta at: www.bluemix.net
Backup
Creating Apps In The BlueMix UI
 You can create an
application in the
BlueMix UI by going to
the catalog and
choosing a boilerplate
or runtime
 Boilerplate = code +
service
 Runtime = code
27
Using The Dashboard
 You will be brought to
the dashboard which
will now have a tile for
your app
 Click the tile to see
additional details
about your app
28
View The Guide To Download The Source
29
Updating The Source
 Downloading the source code may be good for learning
but you are most likely not going to use any of it
 In fact it is not even necessary to create an app in the UI first
 You will want to download and install the Cloud Foundry
Command Line tool in order to upload / create your
application
 Follow the documentation here:
http://www.ng.bluemix.net/docs/BuildingWeb.jsp#install-cf
30

More Related Content

PPTX
Boston Cloud Meetup - IBM Containers
PPTX
Boston Bluemix Meetup 5/15/14
PPTX
Give Your Java Apps “The Boot” With Spring Boot And Cloud Foundry
PPTX
IBM Bluemix Overview
ODP
JMP102 Extending Your App Arsenal With OpenSocial
ODP
JMP103 : Extending Your App Arsenal With OpenSocial
PDF
IBM Bluemix for Administrators with Focus on XPages
PDF
Ten Minutes Bluemix Pitch from Dev to Dev
Boston Cloud Meetup - IBM Containers
Boston Bluemix Meetup 5/15/14
Give Your Java Apps “The Boot” With Spring Boot And Cloud Foundry
IBM Bluemix Overview
JMP102 Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocial
IBM Bluemix for Administrators with Focus on XPages
Ten Minutes Bluemix Pitch from Dev to Dev

What's hot (20)

PDF
Exploring the Open Source Linux Ecosystem
 
PPT
Boston Cloud Foundry Meetup 5-22-14
PDF
Platform as a Service - Cloud Foundry and IBM Bluemix
PDF
An introduction to Cloud Foundry
PDF
12 FACTOR APP WITH DOCKER
PDF
Beyond 12 Factor - Developing Cloud Native Applications
PDF
The Twelve-Factor App
PPTX
Open stack + Cloud Foundry: Palo Alto Meetup February 2015
PPTX
Domain-driven Design
PPTX
12 factor app an introduction
PDF
12 factor app
PPTX
CF Summit North America 2017 - Technical Keynote
PPTX
C# Production Debugging Made Easy
PPTX
CF Days 2017 - NYC - Keynote
PPT
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
PDF
Upgrade your InfoSec, Ops and Dev teams with PCF 1.12
PDF
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
PPTX
Cloud Foundry a Developer's Perspective
PDF
Cloud Foundry Introduction and Overview
PPTX
How to build the Cloud Native applications the way you want – not the way the...
Exploring the Open Source Linux Ecosystem
 
Boston Cloud Foundry Meetup 5-22-14
Platform as a Service - Cloud Foundry and IBM Bluemix
An introduction to Cloud Foundry
12 FACTOR APP WITH DOCKER
Beyond 12 Factor - Developing Cloud Native Applications
The Twelve-Factor App
Open stack + Cloud Foundry: Palo Alto Meetup February 2015
Domain-driven Design
12 factor app an introduction
12 factor app
CF Summit North America 2017 - Technical Keynote
C# Production Debugging Made Easy
CF Days 2017 - NYC - Keynote
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
Upgrade your InfoSec, Ops and Dev teams with PCF 1.12
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry a Developer's Perspective
Cloud Foundry Introduction and Overview
How to build the Cloud Native applications the way you want – not the way the...
Ad

Similar to Achieving Developer Nirvana With Codename: BlueMix (20)

PPTX
Developer Nirvana with IBM Bluemix™
 
PDF
Get over the Cloud with Bluemix
PPTX
Bluemix - Overview & Benefits
PPTX
How does IBM Bluemix work?
PPTX
Bluemixoverview
PPT
Bluemix and DevOps workshop lab
PDF
Introduction to Bluemix and Watson
PDF
What is IBM Bluemix , Une nouvelle façon de coder , dans le cloud
PPT
IBM Bluemix Talk at University College Cork (UCC)
PDF
Ibm bluemix paris_techtalks 2015
PPT
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
PPTX
FIU cloud-hackathon-lec1
PPT
The new developer experience
PDF
135 . Haga el deploy de su aplicación en minutos y en cualquier lenguaje con ...
PPTX
fiu-cloud-hackathon-lec1-v6
PPSX
Bluemix Introduction
PDF
Getting Started with Cloud Foundry on Bluemix
PDF
Getting Started with Cloud Foundry on Bluemix
PDF
Getting Started with Cloud Foundry on Bluemix
PDF
IBM Bluemix hands on
Developer Nirvana with IBM Bluemix™
 
Get over the Cloud with Bluemix
Bluemix - Overview & Benefits
How does IBM Bluemix work?
Bluemixoverview
Bluemix and DevOps workshop lab
Introduction to Bluemix and Watson
What is IBM Bluemix , Une nouvelle façon de coder , dans le cloud
IBM Bluemix Talk at University College Cork (UCC)
Ibm bluemix paris_techtalks 2015
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
FIU cloud-hackathon-lec1
The new developer experience
135 . Haga el deploy de su aplicación en minutos y en cualquier lenguaje con ...
fiu-cloud-hackathon-lec1-v6
Bluemix Introduction
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
IBM Bluemix hands on
Ad

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
A Presentation on Artificial Intelligence
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPT
Teaching material agriculture food technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Cloud computing and distributed systems.
PDF
KodekX | Application Modernization Development
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Modernizing your data center with Dell and AMD
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Spectral efficient network and resource selection model in 5G networks
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Review of recent advances in non-invasive hemoglobin estimation
NewMind AI Monthly Chronicles - July 2025
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
A Presentation on Artificial Intelligence
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Teaching material agriculture food technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Cloud computing and distributed systems.
KodekX | Application Modernization Development
The Rise and Fall of 3GPP – Time for a Sabbatical?
20250228 LYD VKU AI Blended-Learning.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Modernizing your data center with Dell and AMD
Digital-Transformation-Roadmap-for-Companies.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
MYSQL Presentation for SQL database connectivity
Encapsulation_ Review paper, used for researhc scholars
Spectral efficient network and resource selection model in 5G networks

Achieving Developer Nirvana With Codename: BlueMix

  • 1. Achieving Developer Nirvana With Codename: BlueMix By: Ryan Baxter @ryanjbaxter http://ryanjbaxter.com
  • 3. Definition nirvana /nərˈvänə,nir-/ In the Buddhist tradition, nirvana is described as the extinguishing of the fires that cause suffering. 2
  • 4. Does This Sound Like Dev Nirvana?  Install runtime, container, and all libraries  Install needed services (databases, mobile, etc)  Bind the services to the application, ports/ips/firewalls  Setup dynamic routing and load-balancer  Setup four layers of built-in High-Availability  Setup streaming logging aggregation  Setup application performance monitoring  Scale the application up to X instances  Then repeat for dev, test, and production 3
  • 5. What Is BlueMix?  A platform for running virtually any application in the cloud without having to worry about the hardware, software, and networking needed to do so.  This definition is usually what we refer to as a platform-as- a-service or PaaS  BlueMix is similar to other platforms you may have heard of  Heroku, Google App Engine, OpenShift, Pivotal One 4
  • 6. How Everything Fits Together  A PaaS is software that is usually running on top of an IaaS and abstracts the complexities of the IaaS away  BlueMix runs on top of Softlayer  Your app runs on top of BlueMix and has no knowledge of the IaaS layer 5 IaaS (Softlayer) PaaS (BlueMix) Your App
  • 7. Why Not Just Use IaaS?  It might be just as easy to get started at the IaaS layer if you use a prebuild image  Over time though the maintenance of this image increases the cost  OS updates, security updates, new versions of libraries, DNS and networking changes, configuration and maintenance of other services like DBs, etc  At the PaaS layer all of this cost disappears! The platform takes care of it for you! 6
  • 8. Benefits Of Using BlueMix  Save time by just worrying about the code and not the infrastructure  Quickly get your app in the hands of your users – deploying your app is a matter of running a single command  Easily add functionality to your application using IBM and partner provided services  Use the languages, runtimes, and frameworks that you are most familiar with  SoftLayer 7
  • 9. BlueMix Open Beta  BlueMix is currently in open beta, you need to register to get going  During the beta you get 8GB of memory to use across as many apps as you want and can provision up to 20 services  Register at bluemix.net, you need an IBM ID 8
  • 10. Lets Deploy An App! App to enable anyone to ask questions for a session…but we can make it even easier. 9
  • 11. Cloud Foundry And BlueMix  BlueMix is built upon an open source project called Cloud Foundry  IBM contributes to the project and is a founding member of the Cloud Foundry Foundation  All tools, documentation, and samples for Cloud Foundry are relevant and can be used with BlueMix  Buildpacks, Services, CLI, Scaling, etc are Cloud Foundry concepts 10
  • 12. Runtimes And Buildpacks  One of the benefits of BlueMix is that it supports virtually any runtime you may want to use  This is accomplished a psuedo-standard called buildpacks  BlueMix has 4 built in buildpacks  Java Liberty, Node.js, Sinatra, and Ruby On Rails  If you are pushing an application using one of these languages you do not need to specify a buildpack to use, BlueMix installs it for you  Other runtimes are supported via community buildpacks 11
  • 13. You Choose The Runtime! 12
  • 15. BlueMix Services  Services allow you to add functionality to your application with minimal cost and effort  Select service and plan, then bind to your application  Once a service is bound to your application information to use the service is available in an environment variable called VCAP_SERVICES 14
  • 16. The Cloud Foundry Command Line (CLI)  The command line will most likely be your tool of choice when doing anything with BlueMix  Anything you will want to do in BlueMix can be accomplished using the CLI  Pushing An Application, stopping, starting, restarting, deleting  Create, bind, and unbind services  View and tail application logs  Documentation: http://docs.cloudfoundry.org/devguide/installcf/whats-new- 15
  • 17. Pushing An Application  You can push an application using the cf push command  What you push depends on the runtime you will use, for Java you may push a war or jar, for Node.js you will push the app directory  cf push will push everything in the current directory unless you specify the –p option 16
  • 18. Manifest Files  cf push commands can become very verbose  cf push appName –p myapp.war –b https://github.com/ryanjbaxter/mybuildpack -i 5 –m 512M --no-start  To avoid having to type this you can use a manifest file  When using a manifest file you just execute cf push and the CLI will look for manifest.mf in the current directory  Manifest Generator: http://cfmanigen.ng.bluemix.net 17
  • 19. Sample Manifest File  Command Line cf push appName –p myapp.war –b https://github.com/ryanjbaxter/mybuildpack -i 5 –m 512M --no-start  manifest.mf File --- applications: - name: appName memory: 513M instances: 5 buildpack: https://github.com/ryanjbaxter/mybuildpack services: - todo-mongo-db 18
  • 20. Logging  Logging is the first step in figuring out what is wrong  You application’s logs will be written to stderr.log and stdout.log  Logs can be viewed in the BlueMix UI by selecting your applications runtime  Logs can be tailed from the command line – very useful!  cf logs appName  cf logs appName --recent – shows you the most recent logs 19
  • 21. Scaling  BlueMix allows you to scale your application horizontally and vertically within minutes  If the load on your application increases/decreases you may want to adjust the number of instances to handle the load  If you find the resources available to your app is tight you can increase the memory 20
  • 22. Dev Ops Services 21 • DevOps Solution in the cloud for building mobile and cloud applications • Optimized for use with BlueMix • Integrated task tracking, agile planning, source control with auto deploy • Use your favorite tools or work from the Web IDE • Hosted Jazz SCM or Git or link to GitHub • Public and private projects • Continuous Integration and Deployment with Jenkins • Mobile quality and application performance monitoring (coming)
  • 23. Resources  Documentation: https://www.ng.bluemix.net/docs/index.jsp  developerWorks: http://developer.ibm.com/bluemix  Sample Apps & Tutorials: https://www.ibmdw.net/bluemix/docs/articles/, https://www.ibmdw.net/bluemix/docs/sample-code/  Developer Forum: https://www.ibmdw.net/answers/?community=bluemix  Blog: https://www.ibmdw.net/bluemix/blog/  Twitter: #BlueMix, @IBMBlueMix 23
  • 24. Resources From Today  Slides: http://www.slideshare.net/RyanBaxter/dev- nirvanabluemix  Code: https://github.com/CodenameBlueMix/session- questions 24
  • 25. Thank you. Join the beta at: www.bluemix.net
  • 27. Creating Apps In The BlueMix UI  You can create an application in the BlueMix UI by going to the catalog and choosing a boilerplate or runtime  Boilerplate = code + service  Runtime = code 27
  • 28. Using The Dashboard  You will be brought to the dashboard which will now have a tile for your app  Click the tile to see additional details about your app 28
  • 29. View The Guide To Download The Source 29
  • 30. Updating The Source  Downloading the source code may be good for learning but you are most likely not going to use any of it  In fact it is not even necessary to create an app in the UI first  You will want to download and install the Cloud Foundry Command Line tool in order to upload / create your application  Follow the documentation here: http://www.ng.bluemix.net/docs/BuildingWeb.jsp#install-cf 30