cloud computing by luqman

Post on 22-Mar-2017

2.650 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Cloud Computing

Mohammed Luqman ShareefSoftware Development Advisor

mohammed_shareef_luq@dell.com

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

Cloud Computing?

• Is it Just a Hype?

• Is it a new technology?

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.

Gartner's top 10 technologies

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

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.

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

Classical Vs. Cloud Computing

Classical Computing Cloud Computing

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

• Subscribe• Use … … …• Pay per use

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

How does it work?

Virtualization

Middleware

Physical Resources

Middle ware

Virtualization

Billing Reporting

Resource Management

Service Management

Virtualization Management

Cloud users

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

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

Top Cloud Providers• Amazon

• Verizon

• IBM

• Dell

• Salesforce.com

• Google AppEngine

• Microsoft Azure

• Rackspace

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

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

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

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.

Top IaaS Vendors

Top PaaS Vendors

Top SaaS Vendors

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.

Challenges in Cloud Computing

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

Case Studies

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.

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

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

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

Google AppEngine

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.

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

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.

Google’s data centers

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.

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

Java Service APIs• Blobstore (Experimental)

• Capabilities

• Channel

• Images

• Mail

• Multitenancy

• OAuth

• Task Queues

• URL Fetch

• Users

• Memcache

Time to Demo

Amazon Web Services

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

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/

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).

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

Time to Demo

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

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)

Cloud APIs

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

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

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

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.

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.

Security in Cloud

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?

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.

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, …

Building your own cloud

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.

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.

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

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)

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.

Questions/Feedback

Thank YouLuqman Shareefwww.luqmanshareef.com

top related