cloud computing by luqman

63
Cloud Computing Mohammed Luqman Shareef Software Development Advisor [email protected]

Upload: luqman-shareef

Post on 22-Mar-2017

2.653 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Cloud computing by Luqman

Cloud Computing

Mohammed Luqman ShareefSoftware Development Advisor

[email protected]

Page 2: Cloud computing by Luqman

Agenda• Cloud Popularity• What is Cloud Computing?• Why Cloud Computing• Technology Drivers• Top Cloud Providers• Cloud Services• Cloud Types• Challenges• Realworld Case Studies

• Google AppEngine• Amazon Web Services• Demo• Cloud APIs• Security in Cloud• Products to Build Cloud• Cloud Computing Myths• Q & As

Page 3: Cloud computing by Luqman

Cloud Computing?

• Is it Just a Hype?

• Is it a new technology?

Page 4: Cloud computing by Luqman

Cloud popularity• Google Trends

• Gartner’s Analysis– Cloud Computing is listed in top 10 strategic Technologies by Gartner for the year 2010,

2011 and 2012 consecutively.

Page 5: Cloud computing by Luqman

Gartner's top 10 technologies

Page 6: Cloud computing by Luqman

Gartner's top 10 technologiesfor 2012

Top 10 Strategic Technologies Areas for 2012

1. Cloud Computing2. Extreme Low-Energy Servers3. In-Memory Computing4. Big Data5. Next-Generation Analytics6. App Stores and Marketplaces7. Internet of Things8. Social and contextual user experience9. Mobile-centric applications and

interfaces10. Media tablets and beyond

Page 7: Cloud computing by Luqman

What is Cloud Computing?

• Cloud is NOT a new technology.

• It is a new way of consuming and delivering technology.

• It is a natural evolution of traditional data centers. It is distinguished by exposing resources (computation, storage, applications etc.) as services where consumers are charged based on utilization.

• Term cloud is used as a metaphor for internet.

Page 8: Cloud computing by Luqman

Defining Cloud• Cloud computing is Internet-based

computing, whereby shared resources, software and information are provided to computers and other devices on-demand, like electricity.

• Computing in which resources such as infrastructure, storage, software are provided as a service over the Internet.

• On-demand self-service Internet infrastructure where you pay-as-you-go and use only what you need.

There are many views

Page 9: Cloud computing by Luqman

Classical Vs. Cloud Computing

Classical Computing Cloud Computing

• Buy and Own• Install, Configure, Test• Use …• Maintain• Upgrade

• Subscribe• Use … … …• Pay per use

Page 10: Cloud computing by Luqman

Cloud Computing Benefits• Eliminate the need to install and run the

application on the customer's own computer

• Faster deployment

• Lower cost / No Cap-Ex (Capital Expense)

• Reduced IT maintenance

• Elastic and unlimited scalability

• Better resource utilization

Page 11: Cloud computing by Luqman

How does it work?

Virtualization

Middleware

Physical Resources

Middle ware

Virtualization

Billing Reporting

Resource Management

Service Management

Virtualization Management

Cloud users

Page 12: Cloud computing by Luqman

Technology Drivers

• SOA:A way of designing, developing, deploying, and managing systems characterized by re-usable services.A cloud infrastructure could be built on top of a SOA infrastructure by adding a layer of virtualization and self-provisioning.

• Virtualization:A method of partitioning one physical server into multiple “virtual” servers, giving each the appearance and capabilities of running on its own dedicated machine. Each virtual server functions as a full-fledged server and can be independently rebooted.

Convergence of Technologies

Page 13: Cloud computing by Luqman

Virtualization Functions & Benefits

• Sharing– Create multiple images of a resource within a physical resource.Eg., Virtual Memory, Logical Partitions, VM, VLANs

•Aggregation– Pool multiple separate “distributed” resources so they appear as a single resource from the

user point of view.– Eg., Virtual Disks

• Emulation– Create functions and facilities which appear to be real although they do not exist within the

physical resource.Eg., Virtual Networks, Virtual Tapes etc.,

• Insulation– Insulate from the physical hardware dependencies through isolation.– Eg., Spare CPU substitution

Page 14: Cloud computing by Luqman

Top Cloud Providers• Amazon

• Verizon

• IBM

• Dell

• Salesforce.com

• Google AppEngine

• Microsoft Azure

• Rackspace

Page 15: Cloud computing by Luqman

Cloud Services• Software as a Service (SaaS)

Application-specific capabilities, e.g., Account management software, provided as a service to allow organizations to use the capabilities developed by third parties.

• Platform as a Service (PaaS)Application development platforms, e.g. containers to host Java components allow developers to leverage the resources of established organizations to create and host applications of a larger scale.

• Infrastructure as a Service (IaaS)Generic computational infrastructure available over the Internet, e.g. compute, storage, etc. Allows organizations and developers to extend their IT infrastructure on an on-demand basis.

SaaSPaaSIaaS

Cloud

Page 16: Cloud computing by Luqman

www.luqmanshareef.com 16

SaaS Examples• SalesForce.com

– An online web-based Customer Relationship Management (CRM) service .

• Google Apps– Email– Docs– Calendar– Sites

• Zoho– Mail– Meeting– Recruit– Reports– Planner

Page 17: Cloud computing by Luqman

www.luqmanshareef.com 17

PaaS Examples• Google App Engine– Provides users a complete development stack and

allows them to run their applications on Google’s infrastructure

• Force.com– Application development Platform. It provides

standard tools, libraries and resources for development and deployment.

• Microsoft Azure Services Platform– Provides users with on-demand compute and storage

services as well as a development platform based on Windows Azure

Page 18: Cloud computing by Luqman

www.luqmanshareef.com 18

IaaS Examples• Amazon Elastic Compute Cloud (EC2)– Provides users with a special virtual machine

(AMI) that can be deployed and run on the EC2 infrastructure.

• Amazon Simple Storage Solution (S3)– Provides users with access to dynamically

scalable storage resources.

• IBM Computing on Demand (CoD)– Provides users with access to highly

configurable servers plus value-added services such as data storage.

Page 19: Cloud computing by Luqman

Top IaaS Vendors

Page 20: Cloud computing by Luqman

Top PaaS Vendors

Page 21: Cloud computing by Luqman

Top SaaS Vendors

Page 22: Cloud computing by Luqman

Types of Clouds• Public Cloud

– Based on the standard cloud computing model, in which a service provider makes resources, such as applications and storage, available to the general public over the Internet and offered on a pay-per-usage model.

• Private Cloud– Private cloud (also called internal cloud or corporate cloud) is a proprietary computing

architecture that provides hosted services within the organization behind a firewall.

• Hybrid Cloud– A hybrid cloud environment consisting of multiple internal and/or external providers, will

be typical for most enterprises.

• Community Cloud– Sharing of computing infrastructure in between organizations of the same community.

For example all Government organizations may share computing infrastructure on the cloud to manage data related to citizens.

Page 23: Cloud computing by Luqman

Challenges in Cloud Computing

• Security• Privacy• Reliability• Service Management & SLAs• QoS• Integration with other apps• Vendor Locking / Interoperability• Lack of Control

Page 24: Cloud computing by Luqman

Case Studies

Page 25: Cloud computing by Luqman

Case Study #1- RedBus.in• Challenge : Operating from a traditional data center.

– Couldn’t handle processing fluctuations.– Procurement/upgrading servers was extremely time consuming.

• Solution : Amazon Web Services

• Benefit : – Overall Cost benefit is 30-40%.– By Hosting in Asia Pacific region(Singapore), latency reduced by 4x.– Ability to instantly replicate the whole setup on demand for testing.– Less time to market translates to increased profitability and success.

Page 26: Cloud computing by Luqman

Case Study #2- Eli Lilly• Challenge : Traditional Infrastructure

• Solution : Multiple Cloud providers

• Benefit : Reduced provisioning cycle time– New server: 7.5 weeks to 3 minutes– New collaboration environment: 8 weeks to 5 minutes– 64-node Linux cluster: 12 weeks to 5 minutes

Ref : Gartner

Page 27: Cloud computing by Luqman

Case Study #3 - Japan Ministry of Economy, Trade and Industry - Consumer Site

• Problem : Need an application – To support a new government program targeting Japanese consumers in a short

time. – Must be available to public via the Web and – Support potentially large and highly volatile transaction volumes.

• Solution : Built a consumer exchange Web application on Force.com and salesforce.com sites.

• Benefit : Built in only 3 weeks.– 40 million consumers expected to access site at peak times– Expected to support more than 20 million transactions …510,000 transactions

first monthRef : Gartner

Page 28: Cloud computing by Luqman

Case Study #4 - Razorfish• Problem: Needed to improve

– Their ability to respond quickly to customer demands– To support highly visible web campaigns. – Support high volume short run campaigns more cost effectively.

• Solution: Using Rackspace as a cloud infrastructure platform.

• Benefit : From 4-6 weeks and cost of tens of thousands of dollars to – set up to 24 to 48 hours – and 3K-5K – on an average 25% of cost.

Ref : Gartner

Page 29: Cloud computing by Luqman

Google AppEngine

Page 30: Cloud computing by Luqman

What is Google App Engine?• With App Engine, you can build web applications using

standard Java/Python technologies and run them on Google's scalable infrastructure.

• The Java environment provides – a Java 6 JVM– a Java Servlets interface, – support for standard interfaces to the App Engine – scalable datastore and – services such as

• JDO, JPA, JavaMail, and Jcache etc.

Page 31: Cloud computing by Luqman

Sandbox• The JVM runs in a secured "sandbox" environment

– to isolate your application for service and security.

• The sandbox ensures that apps can only perform actions that do not interfere with the performance and scalability of other apps.

– Cannot spawn threads,

– Cannot write data to the local file system

– Cannot make arbitrary network connections

– Cannot use JNI or other native code

Page 32: Cloud computing by Luqman

Datastore

• App Engine offers two different data storage options.

– The High Replication data store• This is default for new applications.• Highly Available and Highly Reliable.• Data is replicated across data centers.

– The Master/Slave data store• Asynchronously replicates data to other data centers as you write.• May be temporarily unavailable during data center issues or

planned downtime.

Page 33: Cloud computing by Luqman

Google’s data centers

Page 34: Cloud computing by Luqman

Servlet Environment

• App Engine determines that an incoming request is intended for your application using the domain name of the request.

• A request whose domain name is app_id.appspot.com is routed to the application whose ID is app_id.

• Every application gets an appspot.com domain name for free.

Page 35: Cloud computing by Luqman

Creating an Application• Create a Google Account

• Add App Engine to the account– http://appengine.google.com– It sends an SMS to your phone to activate

• Download Google App Engine SDK

• Uploading an application via command line– ./appengine-java-sdk/bin/appcfg.cmd update myapp/war

• Eclipse plugin– Download and install eclipse– Help -> Install New Software

• Update site URL : http://dl.google.com/eclipse/plugin/3.7

Page 36: Cloud computing by Luqman

Java Service APIs• Blobstore (Experimental)

• Capabilities

• Channel

• Images

• Mail

• Multitenancy

• OAuth

• Task Queues

• URL Fetch

• Users

• Memcache

Page 37: Cloud computing by Luqman

Time to Demo

Page 38: Cloud computing by Luqman

Amazon Web Services

Page 39: Cloud computing by Luqman

Amazon Products and Services• Compute

– EC2– MapReduce– AutoScaling

• Database– Simple DB– RDS

• Deployment and Management– Elastic Beanstalk

• Messaging– SQS– SNS– SES

• Networking– Route 53– VPC– Elastic Load Balancing

• Storage– S3– EBS– Import/Export

• Web Traffic– Alexa Web Information Service– Alexa Top sites

• Monitoring– Cloud Watch

Page 40: Cloud computing by Luqman

Getting started

• Create an AWS account– http://aws.amazon.com

• Provide credit card details

• Identity Verification thru phone

• Login to AWS Management console– http://aws.amazon.com/console/

Page 41: Cloud computing by Luqman

Amazon Machine Image• An Amazon Machine Image (AMI) is a special type of pre-configured

operating system and virtual application software which is used to create a virtual machine within the Amazon Elastic Compute Cloud (EC2). It serves as the basic unit of deployment for services delivered using EC2.

• You can select among a range of public AMIs (preconfigured, template images) or build your own custom/private AMI.

• Paid AMIs can be created by ISVs and stored on Amazon Simple Storage Service (S3).

Page 42: Cloud computing by Luqman

Accessing AWS• Download SDK.

• Create access key– http://aws.amazon.com/security-credentials

• Put the credentials in properties file

• Create a client object

• Invoke the operations

Page 43: Cloud computing by Luqman

Time to Demo

Page 44: Cloud computing by Luqman

Lessons Learned• Today's Cloud Computing Environment is Best For– Applications that do not have much interaction with back-end systems.– Applications where demand varies dramatically over a cycle (periodic

peaks).– Short-term use (Ad campaigns).– Rapid ramp up required (minutes/hours vs. days/weeks).

• Issues Remain– Security– Data location, privacy, potential loss– Management/governance– Vendors

Page 45: Cloud computing by Luqman

Standardization Activities• Open Grid Forum (OGF)

• Cloud Computing Interoperability Forum (CCIF)

• Distributed Management Task Force (DMTF)

• Open Cloud Consortium (OCC)

• Cloud Security Alliance (CSA)

• OASIS

• Object Management Group (OMG)

Page 46: Cloud computing by Luqman

Cloud APIs

Page 47: Cloud computing by Luqman

Cloud APIs• Why a standard cloud API?

• Pros & Cons– Not tightly coupled with a vendor.– Standards always focus on Lowest common denominator, and

thus slow down the innovation.

• Standard Cloud APIs today– Simple Cloud API– VMWare’s vCloud– Delta Cloud

Page 48: Cloud computing by Luqman

Simple Cloud API• Zend Technologies, the PHP Company, launched a project called “Simple API for

Cloud Application Services”, a new open source initiative that allows developers to use common application services in the cloud.

• Invited the open source community and software vendors to participate.

• The project aims to facilitate the development of cloud applications that can access services on all major cloud platforms

• Contributors– IBM, – Microsoft, – Rackspace, – Nirvanix, and – GoGrid

Page 49: Cloud computing by Luqman

Simple Cloud API• The Simple Cloud API is designed to provide a single, simple, interoperable

API for multiple cloud services and multiple cloud providers.

• Operations defined in the Simple Cloud API are supported by many cloud services.

• The ultimate goal is that the code written to work with one cloud service should work with all similar cloud services.

• The Simple Cloud API is defined for three types of cloud services:– File storage– Document storage– Simple queues

Page 50: Cloud computing by Luqman

Delta Cloud API• An API that abstracts differences between clouds.

• REST API, Supports Major Cloud service providers.

• Started by RedHat and moved to Apache incubator

• Provides drivers for popular clouds, which handles set of standard operations.

• Some of the drivers also support a number of optional operations to expose the features of specific clouds more closely.

Page 51: Cloud computing by Luqman

vCloud API

• VMware has developed vCloud API which offers service providers a means of improving their connection to private clouds.

• It is aimed at bridging the gap between public and private clouds.

• It allows cloud interoperability.

Page 52: Cloud computing by Luqman

Security in Cloud

Page 53: Cloud computing by Luqman

Security concerns in cloud• Confidentiality / Privacy

– Sensitive data stored on client. Will it not leak?

• Integrity– Did cloud provide really stored my data without tampering with it?

• Availability– What in case of Denial Of Service attack?– What if cloud provider goes out of business?

• Auditability– Data stored out side the organization. Can we audit it the way we want?

• Compliance– Who will be responsible for complying with regulations?– What if cloud provider sub-contracts to third party?

Page 54: Cloud computing by Luqman

Security Best Practices• Data encryption

• Proper contract between different parties involved in the Cloud– Regulatory restrictions for data location and cross-border data transfers– Continuity assurance and recovery guarantees– Compensation and service termination clauses– Roles and responsibilities of all partners involved

• Transparency in how the Cloud provider addresses the security and privacy requirements

• Involve ‘Trusted Third Parties’ wherever needed.

Page 55: Cloud computing by Luqman

Cloud Security Alliance• CSA (https://cloudsecurityalliance.org) is a non profit organization.

• Mission is to promote the use of best practices for providing security assurance within Cloud Computing.

• Provides “Security Guidance for Critical Areas of Focus in Cloud Computing”.

• Members– IBM, Oracle, SalesForce, RSA, Novell, – Microsoft, Dell, CA, CISCO, …

Page 56: Cloud computing by Luqman

Building your own cloud

Page 57: Cloud computing by Luqman

Products to build cloud• Eucalyptus (www.eucalyptus.com)– It is an Open Source software that enables the creation of on-premise

private clouds.

– It uses existing infrastructure to create scalable and secure AWS-compatible cloud resources for compute, network and storage

– It implements an IaaS (Infrastructure as a Service) private cloud that is accessible via an API compatible with Amazon EC2 and Amazon S3.

– Case Study: India's National Informatics Centre Builds e-Governance Cloud Project on Eucalyptus Cloud Software.

Page 58: Cloud computing by Luqman

Products to build cloud• Apache Hadoop (http://hadoop.apache.org)– Hadoop is an open source project by Apache, using the Java programming

language. Yahoo! has been the largest contributor to the project, and uses Hadoop extensively across its businesses.

– It enables applications to work with thousands of nodes and petabytes of data.

– Hadoop was inspired by Google's MapReduce and Google File System (GFS).

– Hadoop was created by Doug Cutting, who named it after his son's toy elephant.

Page 59: Cloud computing by Luqman

Products to build cloud

• OpenStack (http://www.openstack.org)

– An open source software for building private and public clouds.

– Founded by Rackspace Hosting and NASA.

– It has 3 components• Compute• Storage• Image service

Page 60: Cloud computing by Luqman

Moving to public cloud

• Steps/Guidelines– Choose the right provider– Understand the SLAs– Evaluate ROI– Check how your security concerns are handled– Plan the migration (may be in phases)

Page 61: Cloud computing by Luqman

Cloud Computing Myths• There is one Single CLOUD to server all your needs.– There are different forms of Cloud (IaaS/PaaS/SaaS) and you may need to choose one or more cloud

services based on your need.

• Cloud always saves you money.

• Cloud reduces your workload.– My be true in long run, but to get started you need to analyze your need and match with the right cloud

provider, may need to migrate your apps/data and configure/customize it.

• You can quickly get started. All you need is your credit card.

• You can seamlessly Blend your data centers with public Cloud Provider.– For complex multi-tier applications it is not that easy. Needs lot of reconfiguration and engineering.

• If you running VMs, you are doing Cloud Computing.– Additionally Cloud gives Elasticity, Pay-per-Use model, Self service capability to allow users to provision

servers or storage themselves.

Page 62: Cloud computing by Luqman

Questions/Feedback

Page 63: Cloud computing by Luqman

Thank YouLuqman Shareefwww.luqmanshareef.com