In my previous article I have explained some basics about Cloud computing, In this article I am going share more in detail.
1. Evolution of Cloud Computing
2. In Perspective
3. Cloud Platforms
4. WindowsAzure – A Brief Introduction
Evolution of Cloud Computing
Mainframes and Terminals:
Users did individual work by connecting to central computer
Personal Computers:
Then came the PCs Users did individual work on their desktops
Network of PCs
Then the PCs got Tied Together, Users could talk to each other’s PCs
World Wide Web:
Then came the Web, Users did individual work by connecting to Web Servers
Cluster of PCs:
Then the Web got Big Servers had to become cluster of PCs
Data Center:
Then the Web got REALLY Big and really Important
Microsoft Data Center, Dublin. 27,000 sq.mts, 22 MW of electricity, 0.5 Billion US Dollars
High Affordability
• Need lots of electric power
• Long lead time to build
• Inflexible investment of capital
• Need specialized skills (security, failover, loadbalancing etc.)
• Takes time away from core competencies
• Hard for all but largest companies to own/run
The Solution
OUTSOURCING has become solution to overcome all this.
Benefits of Outsourcing
• Shorter Lead Times
• Lower Capital Requirements
• Organizations can concentrate on
• Core Competencies
• Can reap economies of scale, in turn can afford
• Specialized skills
• Computing power becomes a COMMODITY
Cloud Computing in Perspective
Defining Cloud Computing:
“Cloud computing is a model for enabling 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.
Courtesy – NIST (National Institute of Standards and Technology, USA)
Characteristics:
• On Demand Self Service
• Network Access from anywhere
• Shared Resource Pooling
• Easy Scalability
• Pay per Use Service
Service Models – 1
Service Models – 2
Service Models – 3
Service Models – 4
Deployment Models – 1
4 Types of Deployment Models
1. Public Cloud
– Available to general Public
– Outside the Firewall
– Services & Infrastructure are Provided off-site over Internet
– IaaS, PaaS & SaaS are present
Examples :
• Google App Engine
• Microsoft Windows Azure
• IBM Smart Cloud
• Amazon EC2
2. Private Cloud
– Operated solely for an Organization
– PaaS and IaaS within the network boundary of the business.
– Services & Infrastructure maintained on a private network
– 2 Types. On-site/On-Premise & Externally Hosted/Outsourced
Examples :
• Amazon VPC (Virtual Private Cloud)
• VMware Cloud Infrastructure Suite
• Microsoft ECI data center.
• Ubuntu Enterprise Cloud – UEC (powered by Eucalyptus)
3. Community Cloud
– Shared by several organizations from a specific community that has shared concerns. Ex : Jurisdiction, Security , Policy and compliance considerations etc.
– 2 Types. On-site & Outsourced
Examples :
• Google Apps for Government
• Microsoft Government Community Cloud
Deployment Models – 4
Hybrid Cloud
– Composition of two or more Clouds (private, community, or public)
– Services are being presented from inside the firewall and some from outside.
– Need to keep track of multiple different security platforms
Examples :
• Windows Azure (capable of Hybrid Cloud)
• VMware vCloud (Hybrid Cloud Services)
Advantages & Challenges
Advantages
– Shifting public data to a external cloud reduces the Exposure of the internal sensitive data
– Cloud homogeneity makes security auditing/testing simpler
– Clouds enable automated security management
– Redundancy / Disaster Recovery
Challenges
– Trusting vendor’s security model
– To be compliant with regulatory obligations
– Obtaining support for investigations
– Loss of physical control
Cloud Platforms
Amazon Web Service
– Found in 2002 (http://www.aws.amazon.com)
– Provides Elastic Cloud Computing EC2 Service (IaaS)
– Languages Supported: Java, Python, Ruby & .Net
Google App Engine
– Released in 2008 (http://code.google.com/appengine/)
– Provides SaaS and PaaS
– Languages Supported : Java & Python
Microsoft Azure
– Released in 2010 (http://www.microsoft.com/windowsazure/)
– Provides PaaS & SaaS (Microsoft Online Services).
– Languages Supported : .Net, Java, Ruby & PHP
Windows Azure – A brief Introduction
Azure Overview
– Cloud OS from Microsoft. A Platform for running applications and storing data in the cloud.
– Helps developers quickly and easily create, deploy and manage Web services on the Internet.
– Serves as the development, service hosting and service management environment for the Azure Services Platform.
– Provides developers with on-demand compute and storage to create, host and manage scalable and available Web applications in datacenters offered by Microsoft Corp.
Azure Services Platform
Azure Services Platform – Explained
– Azure Services Platform can be used both by applications running in the cloud and by applications running on local systems.
– Provides a Windows-based environment for running applications and storing data on servers in Microsoft data centers
– Microsoft .NET Services: Offers distributed infrastructure services to cloud-based and local applications.
– Microsoft SQL Services: Provides data services in the cloud based on SQL Server.
– Live Services: Through the Live Framework, provides access to data from Microsoft’s Live applications and others. The Live Framework also allows synchronizing this data across desktops and devices, finding and downloading applications, and more.
Azure Advantage
– Get started quickly using your existing skills
– Maintain application control, minimize costs
– Open platform creates an easy, flexible coding environment
– Provides flexible azure storage with blobs, tables and queues
– Provides Model Driven Life Cycle Management
– Windows Azure Manages Services too and not Just Servers