Upload
vivek-p-s
View
72
Download
0
Embed Size (px)
Citation preview
Cloud Computing Vivek.P.S
http://vivekcek.wordpress.com
Agenda
• Cloud Computing Fundamentals
• Microsoft Azure
What is the Cloud?
• "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. This cloud model promotes availability.
Characteristics
Top five advantages of cloud computing: •Pay only for what you use •Easy/fast deployment to end users •Monthly payments •Encourages standard systems •Requires less in-house staff, costs
Chief Objections to the Cloud
• Compliance Issues
• Security
• Control
Cloud Evolution
Defining the Cloud
Service Models Deployment Models
Infrastructure as a Service
(IaaS)
Platform as a Service
PaaS
Software as a Service
SaaS
Private Cloud
Public Cloud
Hybrid Cloud
Cloud Computing Terms
Cloud Terminology
• Infrastructure as a Service (IaaS): basic compute and storage resources
– On-demand servers
– Amazon EC2, VMWare vCloud
• Platform as a Service (PaaS): cloud application infrastructure
– On-demand application-hosting environment
– E.g. Google AppEngine, Salesforce.com, Windows Azure
• Software as a Service (SaaS): cloud applications
– On-demand applications
– E.g. Office 365, GMail, Microsoft Office Web Companions
Cloud Computing Taxonomy
Higher Cost & More Control Lower Cost & Higher Agility
2) Choose image, then create and configure VM(s) for
application
1) Choose image, then create VM for DBMS and
configure DBMS
Library
VM Images
IaaS Developer
Application Data
Load Balancer
5) Configure load balance
r
6) Manage VMs and DBMS (e.g.,
deploying new OS images in VMs)
3) Provision database, then create tables and add data
4) Install
application
PaaS Developer
Application Data
Load Balancer
2) Deploy applicatio
n
1) Provision database, then
create tables and add data
Microsoft Azure Platform
Windows Azure Networking
“Red Dog” Front End (RDFE)
Azure Architecture
Cloud Services
Typical Azure Compute
The Windows Azure Service Model
• A Windows Azure application is called a “service” – Definition information
– Configuration information
– At least one “role”
• Roles are like DLLs in the service “process” – Collection of code with an entry point that runs in its own
virtual machine
• Windows Azure compute SLA requires two instances of each role – 99.95% for connectivity to two instances
– Achieved with update and fault domains
Windows Azure Storage Fundamentals
• Storage characteristics
– Durable – replicated three times
– Scalable (capacity and throughput)
– Highly available
• Simple and familiar programming interfaces
– REST (HTTP and HTTPS)
– .NET accessible
Blobs
Provide a simple interface for storing named files along with metadata for the file
Tables
Provide lightly structured storage with a set of entities that contain a set of properties
Queues
Provide reliable storage and delivery of messages
Storage Objects
Storage Account and Blob Containers
• Storage account – An account can have many blob containers
• Container – A container is a set of blobs
– Sharing policies are set at the container level • Public READ or Private
– Associate metadata with container • Metadata is <name, value> pairs
• Up to 8KB per container
– List the blobs in a container
Blob Storage Concepts
Blob Container Account
sally
pictures
IMG001.JPG
IMG002.JPG
movies MOV1.AVI
Table Data Model
• Table – A storage account can create many tables – .NET classes and LINQ
• A table is a set of entities (rows) – An entity is a set of properties (columns) – Billions of entities and TBs of data
• Two “key” properties that together are the unique ID of the entity in the table – PartitionKey – enables scalability – RowKey – uniquely identifies the entity within the
partition
Table Storage Concepts
Entity Table Account
sally
users
Name =…
Email = …
Name =…
Email = …
photo index
Photo ID =…
Date =…
Photo ID =…
Date =…
Windows Azure Queues
• Provide reliable message delivery – Simple, asynchronous work dispatch – Programming semantics ensure that a message can be
processed at least once
• Queues are highly available, durable and performance efficient – Maximum size is 64K – FIFO in general, but not guaranteed
• Pulling an item from the queue doesn’t delete it – It becomes invisible for a visibility timeout – Item must be deleted before timeout or else it becomes
visible
Queue Storage Concepts
Message Queue Account
sally
thumbnail jobs
128x128, http://…
256x256, http://…
photo processing jobs
http://…
http://…
Account
Container Blobs
Table Entities
Queue Messages
Windows Azure Data Storage Concepts
http://<account>.blob.core.windows.net/<container>
http://<account>.table.core.windows.net/<table>
http://<account>.queue.core.windows.net/<queue>
SQL Database
SQL Database Details
• Cloud relational database based on SQL Server engine
• Use same tools, data access frameworks, T-SQL based language
• Global datacenters
• High Availability and Redundancy
– Reads are completed at the primary
– Writes are replicated to a quorum of secondaries
SQL Database vs SQL Server Horizontal Scaling
SQL Server Authentication Only
Not all T-SQL Commands Supported
No SSIS
SQL Azure Requires Clustered Indexes
SQL Azure Lacks Access to System Tables
SQL Azure Requires SQL Server Management Studio 2008 R2
SQL Azure Doesn't Support Database Mirroring or Failover Clustering
No SQL Azure Support for Analysis Services, Replication, Reporting Services, or
SQL Server Service Broker
SQL Azure Offers No SQL CLR Support
SQL Azure Doesn't Support Backup and Restore