36
Ravi Ranjan S. Karn

Introduction to Windows Azure

Embed Size (px)

DESCRIPTION

This document is gives a very basic idea regarding windows azure and many other services offered by it.

Citation preview

Ravi Ranjan S. Karn

Topics

● Basic concepts.● Windows Azure.● Azure Storage Service.● SQL Azure.● Azure AppFabric● Migrating an Asp.Net application on Azure.● Q & A.

Basic Concepts

What is Operating System ?

● Is a collection of software that manages computer hardware resources and provides common services for computer programs.

What is distributed Operating System ?

● A distributed operating system is the logical aggregation of operating system software over a collection of independent, networked, communicating, and physically separate computational nodes.

What is distributed System ? [contd.]

● A distributed operating system is the logical aggregation of operating system software over a collection of independent, networked, communicating, and physically separate computational nodes.

Conclusion

AbstractionIn all the system discussed now, every one of it involves abstraction of underlying system to hide the detail from the user using it.

What is cloud computing ?

● Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet) .

● There are many types of public cloud computing :● Infrastructure as a service (IaaS)

● Platform as a service (PaaS)

● Software as a service (SaaS)

● Storage as a service (STaaS)

● Test environment as a service (TEaaS)

● Desktop as a service (DaaS)

● API as a service (AaaS)

Windows Azure

Introduction to Windows Azure...

• An operating system for the cloud

• Reduce the complexity of internet scale applications.

• Designed to be scalable & available.

• A service running Microsoft datacenters.

Where Windows Azure stands ?

● Windows Azure is a Microsoft cloud computing platform used to build, deploy and manage applications through a global network of Microsoft-managed datacenters.

● It offers

● Infrastructure as a service (IaaS)

● Platform as a service (PaaS)

● Software as a service (SaaS)

● Storage as a service (STaaS)

Terminologies

Web Roles

A web role is an ASP.NET Web application accessible via an HTTP or HTTPS endpoint and is commonly the front-end for an application.

Worker Roles

Worker roles are background-processing applications and are typically found in the back-end.

Role Instance

Role instances can be added or removed based on demand and allow applications to quickly and economically scale-up or down when the need arises.

Note : Windows Azure services may be comprised of one or both types of roles and can run multiple instances of each type.

Windows Azure Architecture

Compute Service

Compute Service [contd.]

• A Web role instance can accept incoming HTTP or HTTPS requests

• By running multiple instances of an application, Windows Azure helps to scale application.

• Web role instances are stateless.

• Worker role instances can’t accept requests from the outside world. Their VMs don’t run IIS, and a Worker application can’t accept any incoming network connections.

• Instead, a Worker role instance initiates its own requests for input.

• It can read messages from a queue and it can open connections with the outside world.

Interaction of Web-role and worker role.

Demo

Azure Storage Service

Azure Storage Service

• Tables – Provide structured storage. A Table is a set of entities, which contain a set of properties.

• Queues – Provide reliable storage and delivery of messages for an application.

• Blobs – Provide a simple interface for storing named files along with metadata for the file.

• Drives – Provides durable NTFS volumes for Windows Azure applications to use.

Azure Storage Service

• Blobs, Drives, Tables, Queues

• Designed for the cloud

• 3 replicas

• Guaranteed consistency

• Accessible directly from the internet via REST API

• .NET Client library supported

• Does not require compute

• Storage account drives unique URL, e.g.:

• https://<youraccount>.blob.core.windows.net

Table Service

Blob Service

Queue Service

• An account can create many queues

• Queue Name is scoped by the account

• A Queue contains messages

• No limit on number of messages stored in a queue

• Set a limit for message expiration

• Messages

• Message size <= 8 KB

• To store larger data, store data in blob/entity storage, and the blob/entity name in the message

• Message now has dequeue count

Azure Drive (X-Drive)• Access to a Local Drive in Azure

• Enables existing applications using NTFS to easily migrate to the cloud

• Essentially a Page Blob formatted as NTFS

• Remote Access via Page Blob Interface

• Durable NTFS volume [upto 1TB] for Windows Azure Applications

• Drives in the Cloud are only mountable by VMs within Cloud

• Mounted by one VM at a time for read/write

• A VM can dynamically mount up to 16 drives

THE FABRIC

The FABRIC

● The Windows Azure Fabric consists of a (large) group of machines, all of

which are managed by software called the fabric controller.

● It can communicate with a fabric agent on every computer, it’s also aware

of every Windows Azure application in this fabric.

● It monitors all running applications and also manages operating systems,

taking care of things like patching the version of Windows Server 2008 that

runs in Windows Azure VMs.

● The fabric controller depends on a XML-based configuration file that is

uploaded with each Windows Azure application to manage the number of

VM's required by the application.

SQL Database (SQL Azure)

SQL Azure● SQL Azure Database provides a cloud-based database management

system (DBMS). This technology lets on-premises and cloud applications

store relational data on Microsoft servers in Microsoft datacenters.

● SQL Azure Reporting is a version of SQL Server Reporting Services

(SSRS) that runs in the cloud. Intended primarily for use with SQL Azure

Database, it allows creating and publishing standard SSRS reports on cloud

data.

● SQL Azure Data Sync allows synchronizing data between SQL Azure

Database and on-premises SQL Server databases. It can also be used to

synchronize data across different SQL Azure databases in different Microsoft

data centers.

● Note : SQL Azure has many limitations as compared to SQL-Server 2008

R2.

Restrictions with SQL Azure

Some points while migration of Asp.net Application to Cloud.

● Please be careful if you are using session and application variable.

● Minimize the usage of session variables.

● Use CDN (content-delivery-network) for jquery and other such library.

● Configure HTTP compression in your application.

● Optimize the code processing.

● Take care database restrictions.

Why Caching is required

● One of the reasons why we require caching is because the session data and application variable is non-persistent across web-role VM's.

● Due to this there is no way to predict on which VM the client request is made.

● Types of Caching

● Shared Cache.● Window Azure Cache preview.

Windows Azure AppFabric

Service Bus

● Exposing an application’s services on the Internet is harder than it

might seem.

● The goal of Service Bus is to make this simpler by letting an

application expose endpoints in the cloud that can be accessed by

other applications, whether on-premises or in the cloud.

● Each exposed endpoint is assigned a URI, which clients can use to

locate and access the service.

● Service Bus also handles the challenges of dealing with network

address translation and getting through firewalls without opening new

ports for exposed applications.

Access Control● The options is used if we want to include Active

Directory, Windows Live ID, Google Accounts,

Facebook, and more for our authentication purpose

like many modern application .

● Access Control simplifies this by providing built-in

support for all of them (and more).

● It also provides a single place for defining rules to

control what each user is allowed to access.

Q & A

Thank you for attending...

Have a nice day ahead !