Professional Documents
Culture Documents
Windows Azure Computing
Windows Azure Computing
Topics to be covered
1. Environmental Features of windows azure
2. What is Cloud Computing
3. Roles in Cloud Computing
4. Benefits of Cloud Computing
5. Optimal Cloud workload Pattern
6. Service Delivery Models
7. Azure Architecture (Intro)
1. .Net in Windows Azure
2. PHP in Windows Azure
3. JAVA and Tomcat in Windows Azure
Maintenance OS Guest VM 3
Guest VM 2
Guest VM 1 Guest VM 1 The Fabric Controller communicates with every server
Host VM Host VM Host VM
within the Fabric. It manages Windows Azure, monitors
every application, decides where new applications should
run – optimizing hardware utilization.
Cloud Computing
• Windows Azure compute provides developers a platform to host and manage applications in Microsoft’s
data centers across the globe.
• Worker Role - A Worker can run anything but is most commonly used to host background processing
behind a web role.
• VM Role - A VM role is a special type of role that enables you to define the configuration and updates
of the operating system for the virtual machine. While a web role and a worker role run in a virtual
machine, the VM role is the virtual machine, which gives you full control of operations. When you have
long and complicated installations in the operating system or special setup issues, you should use this
role. This role is especially suited for migrating existing applications to run as hosted services in
Windows Azure. This VHD is created using an on-premises Windows Server machine and then uploaded
to Windows Azure.
• More on VM
Windows Azure Web and Worker roles enable developers to deploy and manage applications services as a
whole as opposed to individual Virtual Machines (VMs). It’s common for an application to interact with users
through a Web role, then hand tasks off to a Worker role for processing.
.NET in Windows Azure
Web Role and Worker Role
Service Instance
default.aspx
RoleEntry
IIS Point
Web Role Worker Role
http://instance:x
SQL
Database
Service Access
Bus Control
Since the Windows Azure Web role is pre-configured with IIS7, it’s easy to create applications using ASP.NET,
Windows Communication Foundation (WCF) or other web technologies. Developers can also create
applications using languages such as PHP and Java.
Presentation
• ASP.NET C#, WCF, PHP, Java
• Distributed in-memory cache
Services
• .NET C#, Java, native code
• Distributed in-memory cache
• Asynchronous processes
• Distributed parallel processes
• Transient file storage
Benefits of Cloud computing
• Focus on the application, not the operational constraints
The automated service management provided by Windows Azure offers customers the benefits of:
Administration: Windows Azure automatically takes care of things such as load balancing and failover
thereby reducing the effort and cost of administering the application environment.
Availability: Windows Azure is designed to let developers build applications that are continuously available,
even in the face of software upgrades and hardware failures.
Scalability: Windows Azure enables developers to build scalable applications that run in Microsoft’s global
data centers. It also allows developers to scale down applications when necessary, letting them use just the
resources they need.
Optimal Cloud Workload Patterns
“On and Off “ “Growing Fast“
Compute
Compute
Inactivity
Period
Average Usage
Average Usage
Time Time
• On and off workloads (e.g. batch job) • Successful services needs to grow/scale
• Over provisioned capacity is wasted • Keeping up w/growth is big IT challenge
• Time to market can be cumbersome • Complex lead time for deployment
Compute
Average Usage Average Usage
Time Time
The role instances in a hosted service communicate through internal and external connections that vary
depending on the type of communication that is needed. Role instances can make these connections by
using HTTP, HTTPS and Microsoft .NET APIs for TCP/IP sockets. An external connection is called an input
endpoint, and an internal connection is called an internal endpoint. Endpoints are associated with ports,
where the external endpoint is associated to a port that you define, and the internal endpoints are
dynamically assigned ports by Windows Azure.
• Start tasks before role instances start
You can use startup tasks to perform operations before the role instances start. Operations that you might
want to perform include installing a component, registering COM components, setting registry keys, or
starting a long running process. You add startup tasks to the role by defining the tasks in the
ServiceDefinition.csdef file.
Benefits of Cloud computing
• Flexible instances sizes to meet your application needs
Each Windows Azure compute instance represents a virtual server. Although many resources are dedicated
to a particular instance, some resources associated to I/O performance are shared among the compute
instances on the same physical host.
Compute instance sizes with a high I/O performance indicator as noted in the table will have a larger
allocation of the shared resources. Having a larger allocation of the shared resource will also result in more
consistent I/O performance.
Compute Instance
Size CPU Memory Instance Storage I/O Performance Cost Per Hour
• Reliable service
Reduced • SLAs
Reliability • Security
Risk • Global data centers
Service Delivery Models
You manage
Applications Applications Applications Applications
You manage
Managed by vendor
Middleware Middleware Middleware Middleware
You manage
Managed by vendor
O/S O/S Managed by vendor O/S O/S
Service Instance
php
-cgi
index.php
FastCGI
IIS
Web Role
http://instance:x
SQL
Database
Service Access
Bus Control
Service Instance
listen port(x)
new Process()
http://instance:x
SQL
Database
Service Access
Bus Control