introduction to cloud computing (new)
DESCRIPTION
TRANSCRIPT
![Page 1: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/1.jpg)
Cloud Computing Python Based Scalable Cloud Application Development
(GAE/ Amazon EC2/ Windows Azure)
By Chathuranga Bandara & Kalanamith Mannapperuma
99X Technology
![Page 2: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/2.jpg)
![Page 3: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/3.jpg)
Introduction to Cloud Computing
> “ Cloud computing is a model for enabling ubiquitous,
convenient, on-demand network access to a shared pool
of configurable computing resources (e.g., networks,
servers, storage, applications, and services) that can be
rapidly provisioned and released with minimal
management effort or service provider interaction“ - NIST
![Page 4: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/4.jpg)
> on-demand network
> shared pool of configurable computing resources
> rapidly provisioned and released with minimal management
![Page 5: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/5.jpg)
Myths & Facts
> Myths
> Cloud Computing will eliminate the need for IT Infrastructure
personnel
> Cloud Computing will eliminate IT expense
>
![Page 6: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/6.jpg)
Myths & Facts (cont..)
> Facts
> This technology should not be ignored
> Cloud technology is real
> This presentation will assist you in understanding “The Cloud”
:P
![Page 7: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/7.jpg)
Real Facts
> It is not Network Computing –
> Application and Data are not confined to any specific
Company’s Server
> Encompasses multiple companies, multiple servers and
multiple networks
> It is not Traditional Outsourcing
> Not a contract to host data by 3rdparty Hosting Business
![Page 8: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/8.jpg)
Features?
> Scalability
> Performance
> Reliability
> Uptime
> Security
> Maintenance
> Service Based Model
![Page 9: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/9.jpg)
![Page 10: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/10.jpg)
![Page 11: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/11.jpg)
Three Types?
> IaaS – (Infrastructure as a Service) – the consumer uses "fundamental resources" such as processing power, storage, networking components or middleware. The consumer can control the operating system, storage, applications and possibly networking
> PaaS – (Platform as a Service) - the consumer uses a hosting environment for their applications and has control over the applications (and some control over the hosting environment), but does not control the infrastructure on which they are running
> SaaS – (Software as a Service) - the consumer uses an application, but does not control the infrastructure on which it's running (OS, hardware)
![Page 12: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/12.jpg)
12
BaaS (Not the Mason!)
> Backend as a Service
> Although similar to other cloud-computing developer tools,
such as software as a service (SaaS), infrastructure as a
service (IaaS), and platform as a service (PaaS), BaaS is
distinct from these other services in that it specifically
addresses the cloud-computing needs of web and mobile
app developers by providing a unified means of connecting
their apps to cloud services
![Page 13: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/13.jpg)
13
BaaS (Cont..)
> Among the most common services provided are push
notifications, file storage and sharing, integration with
social networks such as Facebook and Twitter, location
services, messaging and chat functions, user
management, running business logic, and usage
analysis tools
> Popular BaaS:
> Built.io - Free since its Beta (with 1mil API Calls)
> Kinvey - Free plan available
> Backendless - Free plan available
![Page 14: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/14.jpg)
Different Providers for each?
> IaaS –
> PaaS –
> SaaS -
![Page 15: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/15.jpg)
Other Type Definitions?
> Public Cloud: a public cloud consists of a service or set of services that are purchased by a business or organization and delivered via the Internet by a third-party provider. These services use storage capacity and processor power that is not owned by the business itself. Instead, this capacity (in the form of servers and data centers) can be owned either by the primary vendor (e.g. an online storage/backup company) or by a cloud infrastructure vendor.
> Private Cloud: A private cloud is essentially an extension of an enterprise's traditional datacenter that is optimized to provide storage capacity and processor power for a variety of functions. “Private” refers more to the fact that this type of platform is a non-shared resource than to any security advantage
![Page 16: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/16.jpg)
Benefit Public Private
Illusion of infinite
resources on-demand
Yes
Unlikely
Elimination of up-front
commitment by users
Yes
No
True pay-as-you-go on
short-term basis
Yes
No
Economy of scale
Yes
No
Better utilization &
simplified operations
through virtualization
Yes
Yes
![Page 17: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/17.jpg)
Private + Public = Hybrid
> A hybrid cloud is a composition of at least one private cloud and at least one public cloud. A hybrid cloud is typically offered in one of two ways: a vendor has a private cloud and forms a partnership with a public cloud provider, or a public cloud provider forms a partnership with a vendor that provides private cloud platforms.
> Ex: For example, an organization might use a public cloud service, such as Amazon Simple Storage Service (Amazon S3) for archived data but continue to maintain in-house storage for operational customer data.
> Ideally, the hybrid approach allows a business to take advantage of the scalability and cost-effectiveness that a public cloud computing environment offers without exposing mission-critical applications and data to third-party vulnerabilities.
![Page 18: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/18.jpg)
![Page 19: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/19.jpg)
When to Use Cloud Computing?
> On-demand
> Scalability
> Performance
> High multi tenancy
> Vendor Specific Features
![Page 20: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/20.jpg)
Examples
> Provide data management and analytical capabilities to
public
> Provision on-demand IT infrastructure for new projects
> Provide agile high capacity computing
> Provide on-demand online productivity tools
> Provide secure and pre-certified software deployment
platforms
![Page 21: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/21.jpg)
Things to keep in mind when Cloud Computing
> Always try to give all most all the client side doable stuff to be done in the client side
> Do your database design very well. Make sure to eliminate data redundancy
> Always use Open Standards (REST)
> Always keep up-to date and try to take advantage of technologies like NoSQL /MapReduce
> Think of Backup plans (Multi Region Instances, Regular Backups, Vendor specific backup solutions)
> Think Like an Engineer/ Software Architect or at least hire one!!
![Page 22: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/22.jpg)
Concerns in Cloud Computing
![Page 23: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/23.jpg)
Security, Security and Security!
> Why Security an Issue?
> Shared Resources
> Your data at their premises
> Not everyone is ethical
> What we can do?
> Read the cloud vendor’s Privacy Policy and Terms &
Conditions
> Go for IaaS when ever its possible
> There will be a Risk in Cloud Computing anyways.
![Page 24: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/24.jpg)
Windows Azure
PaaS
![Page 25: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/25.jpg)
![Page 26: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/26.jpg)
![Page 27: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/27.jpg)
Amazon Web Services
IaaS
![Page 28: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/28.jpg)
![Page 29: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/29.jpg)
Amazon EC2 Features
> Amazon Elastic Block store
> Multiple Locations
> Amazon Cloud Watch
> Auto scaling
> Elastic Load Balancing
![Page 30: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/30.jpg)
Amazon EC2 Usage
> Create Machine Image
> Build application on top of the EC2 instance
> Create multiple instances
>
![Page 31: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/31.jpg)
![Page 32: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/32.jpg)
Google Apps
SaaS
![Page 33: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/33.jpg)
33
![Page 34: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/34.jpg)
34
Different APIs available
> Application APIs
> Calendar API, Gmail API, Drive API, Sites API, Spreadsheets
API
> Auth APIs
> OpenID API
> Domain Admin APIs
> Audit APIs
> Email Settings API
> Reporting API
![Page 35: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/35.jpg)
Google App Engine
PaaS
![Page 36: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/36.jpg)
36
![Page 37: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/37.jpg)
Development Google App Engine
> Write your web program in Python or VM based technologies including JAVA/ PHP and GO and submit to Google. It will take care of the rest (is that good or bad?)
> How to use?
> Download App Engine SDK
> Develop your program locally > A set of python programs, input = requested url, output = return
message
> Debug locally
> Register for an application id
> Submit your application to Google
![Page 38: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/38.jpg)
38
Datastore
> Based on BigTable, distributed column-store
• Entities and multi-valued properties
• Entities have unique key & a type (kind)
• Flexible schema
• Queries by GQL
![Page 39: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/39.jpg)
39
AppScale
> Platform that allows users to host their own Google App
Engine application in their own host (ex: Amazon EC2)
> Supports Python, Java, Go (no PHP support yet)
> https://github.com/AppScale/appscale
![Page 40: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/40.jpg)
40
Mobile Backends
> Recently App Engine has Introduced Mobile Backends
> Currently Supports for Android
> Looking forward to IOS
![Page 41: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/41.jpg)
41
Creating Mobile Backend in GAE
![Page 42: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/42.jpg)
42
Cont..
![Page 43: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/43.jpg)
43
Back-end configuration in GAE
backends:
- name: memdb
class: B8
instances: 5
- name: crawler
instances: 10
start: crawler.app
- name: worker
options: failfast
- name: cmdline
options: dynamic
![Page 44: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/44.jpg)
Demo – Python/ Google App Engine
Using Linux based machine (Windows is easier)
![Page 45: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/45.jpg)
Demo Agenda
> Part One - “Hello World” in GAE
> Part Two - Application development in GAE
![Page 46: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/46.jpg)
Which App you think Most Suitable for the Cloud?
> Engine where any List (integers/ strings) will be given by the
client and the server (cloud application) will compute and
send back the sorted List
> Guestbook which millions of people going to use and will
grow, where it will keep the comments of each guest, either
as Anonymous or Email Verified user
> Web based system which will display the list of Items/
Inventory to the client computer. This will only serve one or
two clients in the business.
![Page 47: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/47.jpg)
Lets do some coding..
![Page 48: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/48.jpg)
Q & A*
* Refer Google for any Question we fail to answer!
![Page 49: Introduction to Cloud Computing (New)](https://reader034.vdocuments.net/reader034/viewer/2022050815/54852ea2b47959f60c8b4dd2/html5/thumbnails/49.jpg)
www.99xtechnology.com
Thank You!