Agile Development using
IBM Bluemix DevOps Services
Hands-on workshop – DevConnect Toronto, June 15th, 2016
Herman Singh Badwal
Twitter: @hermansinghb
Full Stack Developer & Developer Outreach
IBM Bluemix DevOps Services
Agenda
• Putting Bluemix & DevOps in Perspective
• Bluemix registration & overview
• Bluemix Hands-on exercises & labs
1
“Two guys in a Starbucks
now have access to the
same computing power as
a Fortune 500 company.”
Jim Deters
Founder, Galvanize
Cloud computing has shifted where innovation is being done
What is Bluemix?
IBM’s cloud platform. Includes services at
the Infrastructure level, the Platform level
to the Software as a Service level all
provisioned under one consistent
experience.
Virtualization
Servers
Storage
Networking
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Runtime
Middleware
OS
Virtualization
Servers
Storage
Networking
Mobile
Integrated DevOps
Analytics
API Economy
New Biz Models
Cognitive
Internet of Things
Flexible Deployment
Not Just
Infrastructure
as a Service
Not Just
Platform
as a Service
ApplicationDevelopment,Orchestration,Integration
Security,Management,Governance
Management & Security
InnovationAgility
Agility
Agility
Flexible Compute Options to Run Apps / Services
Instant Runtimes Containers Virtual Machines
Platform Deployment Options that Meet Your Workload Requirements
Bluemix
Public
Bluemix
Dedicated
Bluemix
Local
DevOps
Tooling Your Own Hosted Apps / Services
Integration &
API Mgmt
Powered by IBM SoftLayer In Your Data Center
+ +
Catalog of Services that Extend Apps’ Functionality
Web Data Mobile AnalyticsCognitive IoT Security Yours
+
Events
How is Bluemix different?
 Access to Watson
 Choice of deployment
options (with
consistency)
 Most compute options
 Huge catalog of services
 Great DevOps Services
 Integration.
 Ease of Deployment
What is DevOps to you?
• Means different things to different people. You ask 5 people and you’ll
get 5 different answers.
• A definition I really like:
• DevOps: A culture where people, regardless of title or background,
work together to imagine, develop, deploy and operate a system.
• Rugged Enterprise DevSecNetQAGovOps
• Not a role
Reference: http://kenmugrage.com/post/my-new-definition-of-devops
6
DevOps approach: Apply Lean principles accelerate
feedback and improve time to value
People
Process
Line-of-
business
Customer
1
3
2
1. Get ideas into production fast
2. Get people to use it
3. Get feedback
Continuously Improve:
I. Application Delivered
II. Environment Deployed
III. Application and Environment Delivery Process
Agenda
• Putting Bluemix in Perspective
• Bluemix registration & overview
• Bluemix Hands-on exercises & labs
7
Registering/Verifying registration with Bluemix
1. Go to https://hub.jazz.net
2. Click “Sign up” at the top left (if you already have an IBM id, test it out
by clicking “Log in”).
3. After Signing up, check the email you registered with and verify it
4. Try to “Log in” to https://hub.jazz.net once your email is verified
5. Pick an alias to use on Bluemix DevOps Services (this alias will be
part of the URL of any projects you create there and also be the
basis of your profile there).
6. Done! You are now set to start the lab exercises.
(These instructions are also available @ https://github.com/hermansb/bluemix-labs )
8
Bluemix catalog – Live demo
Live demo at https://console.ng.bluemix.net/
Agenda
• Putting Bluemix in Perspective
• Bluemix registration & overview
• Bluemix Hands-on exercises & labs
10
What will we be using?
11
Pushes/deploys
Commit
triggers build
Hosted on & provisions
resources on
Provisions
instances of
Uses
buildpackhosts
Edit/push code
fork
Hands-on Lab Exercises
Note: you can find all the links below and more at
https://github.com/hermansb/bluemix-labs
Choose your own adventure (instructions are in the
Readmes of the projects below):
• Deploy a Starfighter game to Bluemix:
https://github.com/cttttt/starfighter
• Deploy a Personality Insights App to Bluemix (requires Twitter account):
https://github.com/watson-developer-cloud/personality-insights-nodejs
• Lots of workshop links: http://bluelabs.mybluemix.net/workshops/
• Bluemix DevOps Services docs & tutorials: https://hub.jazz.net/docs
Good job!
13
14
Resources:
 IBM DevOps Page: http://ibm.com/DevOps
 DevOps For Dummies Book: http://ibm.co/devopsfordummies
 Release and Deploy For Dummies Book: http://ibm.co/1bplaQV
 IBM DevOps YouTube Playlist: http://bit.ly/1fiDOtl
15
DevOps for the Enterprise
A DevOps case study:
• Defining the problem
• Transitioning to DevOps
• Aligning with the Business
Live Demo/Teaser – Bluemix DevOps Services v2
• https://new-console.ng.bluemix.net/devops
• “Toolchains” tab at top.
16
17
Thank You
Extra - See how an app is put together – Text to speech
app using Watson APIs
Walk through the stages of this app
http://watsonttslab.mybluemix.net/
***SMEs may also choose to explore the Internet of Things boilerplate prior to starting this lab (they can use the existing flow in Node-
RED with a virtual IOT device ibm.biz/iotsensor to show how the boilerplate works)
typos on page 4 for watson tts lab:
1. Drag a tan HTTP Request In node onto the workspace. Set the method to GET and the URL to /audio.
- the Tan HTTP Request In node is the HTTP node under "Input" nodes in Node-RED
2. Drag a format node onto the workspace. Double-click the function node to edit it and add the following code.
- Should be "Drag a template node onto the workspace. Double-click the template node to edit it and add the following code."
3. Drag an HTTP Request Out node onto the workspace.
- the Tan HTTP Request In node is the HTTP node under "Input" nodes in Node-RED
SMEs can provide an iteration for this lab in which they may choose to add other Watson services or functionality to the app
i.e.- Add Watson Translation services to convert the input string from English to French prior before converting into speech
- Use the Twitter output node (it's the last node under Social nodes) to tweet out whatever message is being converted by the app
- Use the Twilio node (requires account sign up on Twilio) to send out text messages of the message being converted by the app

Bluemix DevOps Services

  • 1.
    Agile Development using IBMBluemix DevOps Services Hands-on workshop – DevConnect Toronto, June 15th, 2016 Herman Singh Badwal Twitter: @hermansinghb Full Stack Developer & Developer Outreach IBM Bluemix DevOps Services
  • 2.
    Agenda • Putting Bluemix& DevOps in Perspective • Bluemix registration & overview • Bluemix Hands-on exercises & labs 1
  • 3.
    “Two guys ina Starbucks now have access to the same computing power as a Fortune 500 company.” Jim Deters Founder, Galvanize Cloud computing has shifted where innovation is being done
  • 4.
    What is Bluemix? IBM’scloud platform. Includes services at the Infrastructure level, the Platform level to the Software as a Service level all provisioned under one consistent experience. Virtualization Servers Storage Networking Runtime Middleware OS Virtualization Servers Storage Networking Runtime Middleware OS Virtualization Servers Storage Networking Mobile Integrated DevOps Analytics API Economy New Biz Models Cognitive Internet of Things Flexible Deployment Not Just Infrastructure as a Service Not Just Platform as a Service ApplicationDevelopment,Orchestration,Integration Security,Management,Governance Management & Security InnovationAgility Agility Agility
  • 5.
    Flexible Compute Optionsto Run Apps / Services Instant Runtimes Containers Virtual Machines Platform Deployment Options that Meet Your Workload Requirements Bluemix Public Bluemix Dedicated Bluemix Local DevOps Tooling Your Own Hosted Apps / Services Integration & API Mgmt Powered by IBM SoftLayer In Your Data Center + + Catalog of Services that Extend Apps’ Functionality Web Data Mobile AnalyticsCognitive IoT Security Yours + Events How is Bluemix different?  Access to Watson  Choice of deployment options (with consistency)  Most compute options  Huge catalog of services  Great DevOps Services  Integration.  Ease of Deployment
  • 6.
    What is DevOpsto you? • Means different things to different people. You ask 5 people and you’ll get 5 different answers. • A definition I really like: • DevOps: A culture where people, regardless of title or background, work together to imagine, develop, deploy and operate a system. • Rugged Enterprise DevSecNetQAGovOps • Not a role Reference: http://kenmugrage.com/post/my-new-definition-of-devops
  • 7.
    6 DevOps approach: ApplyLean principles accelerate feedback and improve time to value People Process Line-of- business Customer 1 3 2 1. Get ideas into production fast 2. Get people to use it 3. Get feedback Continuously Improve: I. Application Delivered II. Environment Deployed III. Application and Environment Delivery Process
  • 8.
    Agenda • Putting Bluemixin Perspective • Bluemix registration & overview • Bluemix Hands-on exercises & labs 7
  • 9.
    Registering/Verifying registration withBluemix 1. Go to https://hub.jazz.net 2. Click “Sign up” at the top left (if you already have an IBM id, test it out by clicking “Log in”). 3. After Signing up, check the email you registered with and verify it 4. Try to “Log in” to https://hub.jazz.net once your email is verified 5. Pick an alias to use on Bluemix DevOps Services (this alias will be part of the URL of any projects you create there and also be the basis of your profile there). 6. Done! You are now set to start the lab exercises. (These instructions are also available @ https://github.com/hermansb/bluemix-labs ) 8
  • 10.
    Bluemix catalog –Live demo Live demo at https://console.ng.bluemix.net/
  • 11.
    Agenda • Putting Bluemixin Perspective • Bluemix registration & overview • Bluemix Hands-on exercises & labs 10
  • 12.
    What will webe using? 11 Pushes/deploys Commit triggers build Hosted on & provisions resources on Provisions instances of Uses buildpackhosts Edit/push code fork
  • 13.
    Hands-on Lab Exercises Note:you can find all the links below and more at https://github.com/hermansb/bluemix-labs Choose your own adventure (instructions are in the Readmes of the projects below): • Deploy a Starfighter game to Bluemix: https://github.com/cttttt/starfighter • Deploy a Personality Insights App to Bluemix (requires Twitter account): https://github.com/watson-developer-cloud/personality-insights-nodejs • Lots of workshop links: http://bluelabs.mybluemix.net/workshops/ • Bluemix DevOps Services docs & tutorials: https://hub.jazz.net/docs
  • 14.
  • 15.
    14 Resources:  IBM DevOpsPage: http://ibm.com/DevOps  DevOps For Dummies Book: http://ibm.co/devopsfordummies  Release and Deploy For Dummies Book: http://ibm.co/1bplaQV  IBM DevOps YouTube Playlist: http://bit.ly/1fiDOtl
  • 16.
    15 DevOps for theEnterprise A DevOps case study: • Defining the problem • Transitioning to DevOps • Aligning with the Business
  • 17.
    Live Demo/Teaser –Bluemix DevOps Services v2 • https://new-console.ng.bluemix.net/devops • “Toolchains” tab at top. 16
  • 18.
  • 19.
    Extra - Seehow an app is put together – Text to speech app using Watson APIs Walk through the stages of this app http://watsonttslab.mybluemix.net/ ***SMEs may also choose to explore the Internet of Things boilerplate prior to starting this lab (they can use the existing flow in Node- RED with a virtual IOT device ibm.biz/iotsensor to show how the boilerplate works) typos on page 4 for watson tts lab: 1. Drag a tan HTTP Request In node onto the workspace. Set the method to GET and the URL to /audio. - the Tan HTTP Request In node is the HTTP node under "Input" nodes in Node-RED 2. Drag a format node onto the workspace. Double-click the function node to edit it and add the following code. - Should be "Drag a template node onto the workspace. Double-click the template node to edit it and add the following code." 3. Drag an HTTP Request Out node onto the workspace. - the Tan HTTP Request In node is the HTTP node under "Input" nodes in Node-RED SMEs can provide an iteration for this lab in which they may choose to add other Watson services or functionality to the app i.e.- Add Watson Translation services to convert the input string from English to French prior before converting into speech - Use the Twitter output node (it's the last node under Social nodes) to tweet out whatever message is being converted by the app - Use the Twilio node (requires account sign up on Twilio) to send out text messages of the message being converted by the app

Editor's Notes

  • #4 At one time, only large enterprises could afford enterprise software. Cloud has changed all of that. Now you don’t have to buy software and compute power. You can rent it. This has changed the economics of computing and empowered a whole generation of new entrants.
  • #5 That is what Bluemix delivers: a platform for RAPID INNOVATION but also MANAGEMENT and SECURITY. It is a cloud based solution. It provides all you would want from and IaaS (like Amazon Web Services), as well as a PaaS (like Microsoft Azure). But Bluemix goes well beyond that. It is a platform for innovation.
  • #6 So let’s start with a reminder of what Bluemix is. Bluemix is the Digital Innovation Platform that allows you to quickly develop applications using Open Technologies like Cloud Foundry, Docker Containers, Virtual Images for OpenStack.   These compute types allow you to build applications in virtually any programming language you like. Java, NodeJS, Go, PHP, Python, Ruby and many more. These applications can reuse the growing number of IBM, Thirdparty and community services in the Bluemix Catalog The include web, mobile, cognitive and many other services I will demonstrate today. You can use your own DevOps tools or those services provide by Bluemix. Bluemix is available three way. Public, Dedicated and Local in your own premise datacenter. .
  • #11 Log in, go to the dashboard and show the different ways of deploying: CF, Containers and VMs. Go through an app creation. Key Services: Watson – Personality Insights, Watson Dialogue (Q&A). Text to speech, tone analyzer IOT – Management tools for IOT devices Mobile – push notifications, mobile quality assurance Data and Analytics (Data Sources) –Twitter, Weather Company, Namara (open data) Bluemix Labs – what’s coming Integration Services – how to integrate on premise with public cloud
  • #13 Before we get started with the exercises here’s a few of the tools, services and infrastructure you will be using while going through the labs. At the top we have dev-time tools, on the left of Bluemix we have services you use during runtime, on the right we have our deployment mechanism and the buildpack used and on the bottom we have the infrastructure that all of this is running on. Questions: Who uses source control? Which? Who has used Bluemix DevOps Services before? Who has used Bluemix before? Has anyone here used Softlayer (VMs)?
  • #16 14