Professional Documents
Culture Documents
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Agenda
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
What is a Cloud?
Cloud: on-demand, scalable, multi-tenant, self-
Server Provisioning
Time
Demand
Demand
Cloud Provisioning
Overprovisioned
Underprovisioned
Time
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Cloud Terminology
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Standalon
e
Servers
IaaS
PaaS
SaaS
Applications
Runtimes
Database
Operating System
Virtualization
Server
Storage
Networking
Efficiency
Control+Cost
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
IaaS
Develope
r
1) Choose
image, then
create VM for
DBMS and
configure DBMS
Library
VM
Images
2) Choose
image, then
create and
configure
VM(s) for
application
Data
DBMS
Operating
System
VM
3) Provision
database,
then create
tables and add
data
Application
5)
4)
Configu
Install re load
applicat balance
ion
r
Web
Server
6) Manage VMs
and DBMS (e.g.,
deploying new OS
images in VMs)
Load
Balancer
Operating
Operating
System
System
VM
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Develope
r
PaaS
1) Provision
database,
then create
tables and add
data
Data
DBMS
Operating
System
VM
2)
Deploy
applicat
ion
Application
Web
Server
Load
Balancer
Operating
Operating
System
System
VM
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Windows Azure
Windows Azure is an OS for the data center
Handles resource management, provisioning, and
monitoring
Manages application lifecycle
Allows developers to concentrate on business logic
Provides common building blocks for distributed
applications
connectivity
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Windows Windows
Azure Platform
Azure Applications
Windows
Azure
Middleware
Services
Windows
Azure
Data Services
AppFabric
Caching
SQL Azure
AppFabric
Access
Control
Server
Windows
Azure
Storage
AppFabric
Service Bus
Windows Azure
CDN
Windows
Azure
Compute
Fabric Controller
Windows Azure
Networking
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Multi-Tier
Cloud Application
A cloud application is typically made up of different
components
Load
Balancer
FrontEnd
FrontEnd
MiddleTier
Window
s
Azure
Storage,
SQL
Azure
Cloud Application
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
of each role
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Role Contents
Cloud Service
Definition:
Role name
Role: Front-End Role: Middle Role type
Tier
Definition
VM size (e.g. small, medium, etc.)
Type: Web
Definition
VM Size: Small
Network endpoints
Type: Worker
Code:
Web/Worker Role: Hosted DLL
and other executables
VM Role: VHD
Configuration:
Endpoints: External1
Configuration
Instances: 2
Update Domains: 2
Fault Domains: 2
Number of instances
Number of update and fault domains
VM Size: Large
Endpoints: Internal-1
Configuration
Instances: 3
Update Domains: 2
Fault Domains: 2
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Role Types
There are currently three role types:
Web Role: IIS7 and ASP.NET in Windows Azure-supplied
OS
Worker Role: arbitrary code in Windows Azure-supplied
OS
VM Role: uploaded VHD with customer-supplied OS
VM Role: is it a VM?
No, because it is stateless
Good for:
Long install (5+ minutes)
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
Manual install/config
ApponixTechnologies
ServiceDefinition.csdef
Service configuration is
in
ServiceConfiguration.cs
cfg
CSPack program Zips
service binaries and
definition into service
package file
(service.cscfg)
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Requirements:
Communication must be asynchronous
Must support concurrent violation scans for different users
Failure of any node must cause at worst a delay
r
Role
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
ApponixTechnologies
Storage Objects
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
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
Provide reliable storage and delivery of
ApponixTechnologies
ApponixTechnologies
Container
Blob
IMG001.JPG
pictures
IMG002.JPG
sally
movies
MOV1.AVI
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
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
partition
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
Table
Storage Concepts
ApponixTechnologies
Account
Table
users
sally
photo index
Entity
Name =
Email =
Name =
Email =
Photo ID =
Date =
Photo ID =
Date =
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
performance efficient
Maximum size is 64K
FIFO in general, but not guaranteed
ApponixTechnologies
Queue
thumbnail
jobs
sally
photo
processing
jobs
Message
128x128,
http://
256x256,
http://
http://
http://
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Blobs
http://<account>.blob.core.windows.net/<container>
Account
Table
Entities
http://<account>.table.core.windows.net/<table>
Queue
Messages
http://<account>.queue.core.windows.net/<queue>
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
Branding Police
brandingpolice.cloudapp.net
ApponixTechnologies
Web
Role
{-...}
Web
Role
Work
er
Role
Work
er
Role
Violations:
Working on
{--...-}-report.txt
{--...-}
#306,10thMain,46thCross,4thBlockRajajinagar,Bangalore10,Mobile:8050580888
ApponixTechnologies
Conclusion