Presentation is loading. Please wait.

Presentation is loading. Please wait.

Revamping your skills in the era of cloud computing

Similar presentations


Presentation on theme: "Revamping your skills in the era of cloud computing"— Presentation transcript:

1 Revamping your skills in the era of cloud computing
Ruth Willenborg or after 12/31/15 IBM Distinguished Engineer

2 Agenda Cloud computing concepts New languages
Hands-on with IBM Bluemix

3 What is Cloud Computing?
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (such as networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction

4 Service Models

5 Who does What? Standardization; OPEX savings; faster time to value
Traditional On-Premises Infrastructure as a Service Platform as a Service Software as a Service Applications Applications Applications Applications Data Data Data Data Runtime Runtime Runtime Runtime Middleware Middleware Middleware Middleware O/S O/S O/S O/S Virtualization Virtualization Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking Vendor Manages in Cloud Client Manages Standardization; OPEX savings; faster time to value

6 And Where?

7 Building an Infrastructure Cloud: OpenStack
OpenStack Mission: To produce the ubiquitous open source cloud computing platform that will meet the needs of public and private cloud providers regardless of size, by being simple to implement and massively scalable. OpenStack Mission: To produce the ubiquitous open source cloud computing platform that will meet the needs of public and private cloud providers regardless of size, by being simple to implement and massively scalable.

8 Containers: Lighter-weight Infrastructure
Run What is a Container An isolated user space within a running Linux OS Shared kernel across containers Direct device access All packages and data in an isolated run-time, saved as a filesystem. Resource management implemented with cgroups Resource isolation through namespaces App A App A’ App B App B’ App B’ App B’ Container Bins/Libs Bins/Libs Host OS Server

9 Docker Containers simplify cloud portability
A platform to build, ship, and run applications in “containers”. Developers & SysAdmins love the flexibility and standardization of Docker Standardization  Application portability Package, ship, and run applications anywhere The Docker Hub Registry has 5,000+ "Dockerized" applications Lightweight Containers are “light” users of system resources, smaller than VMs, start up much faster, and have better performance Ecosystem-friendly A new industry standard, with a vibrant ecosystem of partners community contributors; 50,000 third-party Docker projects on GitHub Containers: A lightweight isolated user space within a running Linux OS Containers share Host OS kernel services Implemented with Linux cgroups, saved as a file system With Docker: The underlying operating system is abstracted away by the Docker runtime, a “very thin layer” that sandboxes the app and makes it portable. Without the Docker layer, an app would have to be written to deal with different operating systems, different hypervisors (software that enables virtualization), different cloud platforms. You might assume that such a layer of abstraction would slow down an app’s performance, but Hykes claims it does not, in part because it uses capabilities that have existed in the Linux kernel for years. “Linux does the heavy lifting,” Hykes said. ZDNet: Docker is riding the hype cycle as fast as I can recall ever seeing an enterprise technology go…It is hotter than hot because it makes it possible to get far more apps running on the same old servers and it also makes it very easy to package and ship programs. Background: Docker 1.0 was released in June 2014, and includes the free Docker Engine (its container standard) and Docker Hub (a repository for 3rd-party services for distributed apps). Docker is open-source. User-friendly Developers build with ease and ship higher-quality applications SysAdmins deploy workloads based on business priorities and policies. "Flexibility and portability are becoming paramount in developing, deploying and managing applications in the cloud, particularly at scale and among large enterprise organizations," Jay Lyman, a senior analyst for enterprise software at 451 Research, told Linux.com.1 1Linux.com

10 Cloud Foundry – an open source Paas

11 Agenda Cloud computing concepts New languages
Hands-on with IBM Bluemix

12 Cloud and Mobile Applications
Experimental in nature Require rapid iteration Faster time to market May be decommissioned quickly Are written in multiple languages Web: JavaScript, Ruby, Java, PHP Mobile: iOS, Android, SDK Composed of Services Build using a composition model of stitching capabilities together Capabilities often require time to test in app beyond the scope of a free trial Integrate with existing systems Data is often located in multiple places (public, private, traditional data center) Existing systems may not scale at the same the level of cloud applications => this does not only have affect on the application itself but also on the developers

13 What is Polyglot programming?
Polyglot programming is the notion that the cloud opens up development to several new aspects Cloud leads to new approaches for scaling Processing big data leads to new programming models Open-source automation makes it possible to explore new possibilities Essentially it comes down to one notion – you figure out what programming task you are doing and choose the best tool for the task

14 What are these languages?
Erlang Ruby Go Node Python

15 Node Created by Ryan Dahl in 2009 at Google
Server side solution for JavaScript; Node runs standalone JavaScript programs as daemons (not in a browser). Designed for network programming and server side request/response programming for HTTP. Today’s demos both use node

16 Go Created in 2009 by Rob Griesener, Rob Pike and Ken Thompson
Designed for functional and concurrent programming with built-in memory management C-derived syntax defined by what is left out No type inheritance (interfaces only) No pointer arithmetic No method or operator overloading No Generic Programming No Assertions Some new types and concepts Slices; variable length fixed-capacity sequence of the same type – replaces C’s arrays The popular Docker packaging system is written in Go The CLI and gorouter in CloudFoundry are written in Go Lots of little network utilities (see for a list) are written in Go Go supports first class functions, higher-order functions, user-defined function types, function literals, closures, and multiple return values. So you can do functional programming in Go as well.

17 Agenda Cloud computing concepts New languages
Hands-on with IBM Bluemix

18 IBM Bluemix Sign up for free 30 day trial
Run Your Apps The developer can chose any language runtime or bring their own. Just upload your code and go. DevOps Development, monitoring, deployment and logging tools allow the developer to run the entire application APIs and Services A catalog of open source, IBM and third party APIs services allow a developer to stitch together an application in minutes. Cloud Integration Build hybrid environments. Connect to on-premises systems of record plus other public and private clouds. Expose your own APIs to your developers. Extend SaaS Apps Drop in SaaS App SDKs and extend to new use cases (e.g,. Mobile, Analytics, Web) Sign up for free 30 day trial After 30 days, there are free tiers for the runtimes and services that should cover your revamping education and experimentation needs

19 JavaScript Charting Engine
Fun example 1 Twilio SMS interface Bluemix Node.js app Cloudant Service JavaScript Charting Engine Note to instructors: Explain how the app works . Google charts is the charting Engine.

20 Fun example 2 The User Interface:
developerworksnodered.mybluemix.net/ui/ The Node-RED workflow implementing the REST Service See the IBM developerWorks article for Step by Step directions:

21 Resources First demo – from Build a cloud app over lunch
Second demo – do it yourself article Really, really easy getting started resources Build your first Node.js website (3 part article and step-by-step) Lab 1 Lab 2 Lab 3 Introductory labs on Node-RED Lab 1 Find the rest at under Node-RED/IOT Experienced developers Getting Started with IBM Bluemix, Free, On-line, self-paced course developerWorks (full of tutorials for beginner to advanced)

22 Build a website using the Bluemix platform
Do it yourself: Web browsers (from anyone, anywhere) 1. Enter URL Node.js server on the Internet (running on IBM Bluemix) 2. Node.js server processes request Node.js plus Express Server Counter resets to 0 when server stopped Express framework App.get (‘/’) accepts all requests from browsers Renders (index.ejs) to display HTML home page Passes counters from server to HTML 3. Render Index.ejs HTML source Formatted HTML Build your first Node.js website:

23 Thank You


Download ppt "Revamping your skills in the era of cloud computing"

Similar presentations


Ads by Google