36
Tweet 15 Discover more resources for these services: Websites ﴾/en‐us/documentation/services/websites/﴿ Virtual Machines ﴾/en‐us/documentation/services/virtual‐machines/﴿ Mobile Services ﴾/en‐us/develop/mobile/﴿ Cloud Services ﴾/en‐us/documentation/services/cloud‐services/﴿ Discover more resources: .NET ﴾/en‐us/develop/net/﴿ Introducing Microsoft Azure Microsoft Azure is Microsoft's application platform for the public cloud. The goal of this article is to give you a foundation for understanding the fundamentals of Azure, even if you don't know anything about cloud computing. How to read this article Azure is growing all the time so it's easy to get overloaded. The basic services are listed earlier in the paper. Start with just those, then go through the additional services. That doesn't mean you can't use just the additional services by themselves, but the basic services make up the core of an application running in Azure. Give feedback Your feedback is important. This article should give you an effective overview of Azure. If it does not, tell us in the comments section at the bottom of the page. Give some detail on what you expected to see and how to improve the article. Table of Contents Basic Services The Components of Azure Management Portal Compute Data Management Networking Developer Services Additional Services Identity and Access Mobile Backup Messaging and Integration Compute Assistance Performance Big Compute and Data Media Commerce Getting Started The Components of Azure Azure groups services into categories in the Management Portal and on various visual aids like the What Is Windows Azure Infographic ﴾http://azure.microsoft.com/en‐us/documentation/infographics/azure/﴿. The Management Portal is what you use to manage most ﴾but not all﴿ services in Azure. This paper will use a different organization to talk about services based on similar function, and to call out important sub‐services that are part of larger ones. 17 Like

Intro to Azure - Azure Fundamentals

Embed Size (px)

DESCRIPTION

Intro to Azure - Azure Fundamentals

Citation preview

Page 1: Intro to Azure - Azure Fundamentals

Tweet 15

Discover more resources for these services: Websites ﴾/en‐us/documentation/services/websites/﴿ Virtual Machines ﴾/en‐us/documentation/services/virtual‐machines/﴿ Mobile Services ﴾/en‐us/develop/mobile/﴿ Cloud Services ﴾/en‐us/documentation/services/cloud‐services/﴿

Discover more resources: .NET ﴾/en‐us/develop/net/﴿

Introducing Microsoft AzureMicrosoft Azure is Microsoft's application platform for the public cloud. The goal of this article is to give you a foundation for understanding thefundamentals of Azure, even if you don't know anything about cloud computing.

How to read this article

Azure is growing all the time so it's easy to get overloaded. The basic services are listed earlier in the paper. Start with just those, then go through theadditional services. That doesn't mean you can't use just the additional services by themselves, but the basic services make up the core of an applicationrunning in Azure.

Give feedback

Your feedback is important. This article should give you an effective overview of Azure. If it does not, tell us in the comments section at the bottom of thepage. Give some detail on what you expected to see and how to improve the article.

Table of ContentsBasic Services ‐ The Components of Azure ‐ Management Portal ‐ Compute ‐ Data Management ‐ Networking ‐ Developer Services

Additional Services ‐ Identity and Access ‐ Mobile ‐ Backup ‐ Messaging and Integration ‐ Compute Assistance ‐ Performance ‐ Big Compute and Data ‐Media ‐ Commerce

Getting Started

The Components of AzureAzure groups services into categories in the Management Portal and on various visual aids like the What Is Windows Azure Infographic﴾http://azure.microsoft.com/en‐us/documentation/infographics/azure/﴿. The Management Portal is what you use to manage most ﴾but not all﴿ services inAzure.

This paper will use a different organization to talk about services based on similar function, and to call out important sub‐services that are part of largerones.

17Like

Page 2: Intro to Azure - Azure Fundamentals

Figure: Azure provides Internet‐accessible application services running in Azure datacenters.

Management PortalAzure has a web interface called the Management Portal ﴾http://manage.windowsazure.com﴿ that allows administrators to access and administer most, butnot all Azure features. Microsoft typically releases the newer UI portal in beta before retiring an older one. The newer one is called the "Azure PreviewPortal" ﴾https://portal.azure.com/﴿.

Page 3: Intro to Azure - Azure Fundamentals

There is typically a long overlap when both portals are active. While core services will appear in both portals, not all functionality may be available in both.Newer services may show up in the newer portal first and older services and functionality may only exist in the older one. The message here is that if youdon't find something in the older portal, check the newer one and vice‐versa.

ComputeOne of the most basic things a cloud platform does is execute applications. Azure provides these options:

1. Virtual Machines gives you control over your own virtual machine, including the operating system.

2. Websites offers a range of applications, frameworks, and templates for you to build large, scalable web applications and presence websites quickly, andthen efficiently manage development, test, and operations.

3. Cloud Services is a platform‐as‐a‐service ﴾PaaS﴿ option tuned to create highly scalable and fault resistant applications, but with more flexibility thanWebsites.

Each of the Azure execution models has its own role to play.

You can use these technologies separately or combine them as needed to create the right foundation for your application. The approach you choosedepends on what problems you're trying to solve.

Figure: Azure Virtual Machines gives you full control over virtual machine instances in the cloud.

Azure Virtual Machines

VirtualXP
Highlight
Page 4: Intro to Azure - Azure Fundamentals

The ability to create a virtual machine on demand, whether from a standard image or from one you supply, can be very useful. This approach, commonlyknown as Infrastructure as a Service ﴾IaaS﴿, is what Azure Virtual Machines provides. Figure 2 shows a combination of how an Virtual Machine ﴾VM﴿ runs andhow to create one from a VHD.

To create a VM, you specify which VHD to use and the VM's size. You then pay for the time that the VM is running. You pay by the minute and only whileit's running, though there is a minimal storage charge for keeping the VHD available. Azure offers a gallery of stock VHDs ﴾called "images"﴿ that contain abootable operating system to start from. These include Microsoft and partner options, such as Windows Server and Linux, SQL Server, Oracle and manymore. You're free to create VHDs and images, and then upload them yourself. You can even upload VHDs that contain only data and then access themfrom your running VMs.

Wherever the VHD comes from, you can persistently store any changes made while a VM is running. The next time you create a VM from that VHD, thingspick up where you left off. The VHDs that back the Virtual Machines are stored in Azure Storage blobs, which we talk about later. That means you getredundancy to ensure your VMs won’t disappear due to hardware and disk failures. It's also possible to copy the changed VHD out of Azure, then run itlocally.

Your application runs within one or more Virtual Machines, depending on how you created it before or decide to create it from scratch now.

This quite general approach to cloud computing can be used to address many different problems.

Virtual Machine Scenarios

1. Dev/Test ‐ You might use them to create an inexpensive development and test platform that you can shut down when you've finished using it. Youmight also create and run applications that use whatever languages and libraries you like. Those applications can use any of the data managementoptions that Azure provides, and you can also choose to use SQL Server or another DBMS running in one or more virtual machines.

2. Move Applications to Azure ﴾Lift‐and‐shift﴿ ‐ "Lift‐and‐shift" refers to moving you application much like you'd use a forklift to move a large object.You "lift" the VHD from your local datacenter, and "shift" it to Azure and run it there. You will typically have to do some work to remove dependencieson other systems. If there are too many, you may choose option 3 instead.

3. Extend your Datacenter ‐ Use Azure VMs as an extension of your on‐premises datacenter, running SharePoint or other applications. To support this,it's possible to create Windows domains in the cloud by running Active Directory in Azure VMs. You can use Azure Virtual Network ﴾mentioned later﴿ totie you local network and your network in Azure together.

Websites

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 5: Intro to Azure - Azure Fundamentals

Figure: Azure Websites runs a website application in the cloud without having to manage the underlying web server.

One of the most common things that people do in the cloud is run websites and web applications. Azure Virtual Machines allows this, but it still leaves youwith the responsibility of administering one or more VMs and the underlying operating systems. Cloud services web roles can do this, but deploying andmaintaining them still takes administrative work. What if you just want a website where somebody else takes care of the administrative work for you?

This is exactly what Azure Websites provides. This compute model offers a managed web environment using the Azure Management portal as well as APIs.You can move an existing website application into Azure Websites unchanged, or you can create a new one directly in the cloud. Once a website is running,you can add or remove instances dynamically, relying on Azure Websites to load balance requests across them. Azure Websites offers both a shared option,where your website runs in a virtual machine with other sites, and a standard option that allows a site to run in its own VM. The standard option also letsyou increase the size ﴾computing power﴿ of your instances if needed.

For development, Websites supports .NET, PHP, Node.js, Java and Python along with SQL Database and MySQL ﴾from ClearDB, a Microsoft partner﴿ forrelational storage. It also provides built‐in support for several popular applications, including WordPress, Joomla, and Drupal. The goal is to provide a low‐cost, scalable, and broadly useful platform for creating websites and web applications in the public cloud.

WebSite Scenarios

Websites is intended to be useful for corporations, developers, and web design agencies. For corporations, it's an easy‐to‐manage, scalable, highly secure,and highly available solution for running presence websites. When you need to set up a Website, it’s best to start with Azure Websites and proceed toCloud Services once you need a feature that’s not available in Websites. See the end of the "Compute" section for more links that can help you to choosebetween the options.

Cloud Services

FREE TRIAL

﴾/en‐us/pricing/free‐trial/﴿

SALES 0‐800‐022‐9265 MY ACCOUNT ﴾/EN‐US/ACCOUNT/﴿ PORTAL ﴾HTTPS://MANAGE.WINDOWSAZURE.COM﴿ Search

Features Pricing ﴾/en‐us/pricing/﴿ Documentation ﴾/en‐us/documentation/﴿ Downloads ﴾/en‐us/downloads/﴿

Marketplace ﴾/en‐us/marketplace/﴿ Blog ﴾/blog/﴿ Community Support

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 6: Intro to Azure - Azure Fundamentals

Figure: Azure Cloud Services provides a place to run highly scalable custom code on a Platform as a Service ﴾PaaS﴿ environment

Suppose you want to build a cloud application that can support lots of simultaneous users, doesn't require much administration, and never goes down. Youmight be an established software vendor, for example, that's decided to embrace Software as a Service ﴾SaaS﴿ by building a version of one of yourapplications in the cloud. Or you might be a start‐up creating a consumer application that you expect will grow fast. If you're building on Azure, whichexecution model should you use?

Azure Websites allows creating this kind of web application, but there are some constraints. You don't have administrative access, for example, whichmeans that you can't install arbitrary software. Azure Virtual Machines gives you lots of flexibility, including administrative access, and you certainly can useit to build a very scalable application, but you'll have to handle many aspects of reliability and administration yourself. What you'd like is an option thatgives you the control you need but also handles most of the work required for reliability and administration.

This is exactly what's provided by Azure Cloud Services. This technology is designed expressly to support scalable, reliable, and low‐admin applications, andit's an example of what's commonly called Platform as a Service ﴾PaaS﴿. To use it, you create an application using the technology you choose, such as C#,Java, PHP, Python, Node.js, or something else. Your code then executes in virtual machines ﴾referred to as instances﴿ running a version of Windows Server.

But these VMs are distinct from the ones you create with Azure Virtual Machines. For one thing, Azure itself manages them, doing things like installingoperating system patches and automatically rolling out new patched images. This implies that your application shouldn't maintain state in web or workerrole instances; it should instead be kept in one of the Azure data management options described in the next section. Azure also monitors these VMs,restarting any that fail. You can set cloud services to automatically create more or fewer instances in response to demand. This allows you to handleincreased usage, and then scale back so you aren’t paying as much when there is less usage.

You have two roles to choose from when you create an instance, both based on Windows Server. The main difference between the two is that an instanceof a web role runs IIS, while an instance of a worker role does not. Both are managed in the same way, however, and it's common for an application to useboth. For example, a web role instance might accept requests from users, then pass them to a worker role instance for processing. To scale your applicationup or down, you can request that Azure create more instances of either role or shut down existing instances. And similar to Azure Virtual Machines, you'recharged only for the time that each web or worker role instance is running.

Cloud Services Scenarios

Cloud Services are ideal to support massive scale out when you need more control over the platform than provided by Azure Websites but don’t needcontrol over the underlying operating system.

Choosing a Compute Model

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 7: Intro to Azure - Azure Fundamentals

The page Azure Websites, Cloud Services and Virtual Machines comparison ﴾http://azure.microsoft.com/en‐us/documentation/articles/choose‐web‐site‐cloud‐service‐vm/ ﴿ provides more detailed information on how to choose a Compute model.

Data ManagementApplications need data, and different kinds of applications need different kinds of data. Because of this, Azure provides several different ways to store andmanage data. Azure provides many storage options, but all are designed for very durable storage. With any of these options, there are always 3 copies ofyour data kept in sync across and Azure datacenter ‐‐ 6 if you allow Azure to use geo‐redundancy to back up to another datacenter at least 300 miles away.

The ability to run SQL Server or another DBMS in a VM created with Azure Virtual Machines has already been mentioned. Realize that this option isn'tlimited to relational systems; you're also free to run NoSQL technologies such as MongoDB and Cassandra. Running your own database system isstraightforward‐it replicates what we're used to in our own datacenters‐but it also requires handling the administration of that DBMS. In other options,Azure handles more or all of the administration for you.

Again, the state of the Virtual Machine and any additional data disk you create or upload are backed by blob storage ﴾which we talk about later﴿.

Figure: Azure SQL Database provides a managed relational database service in the cloud.

For relational storage, Azure provides the feature SQL Database. Don't let the naming fool you. This is different than an typical SQL Database provided bySQL Server running on top of Windows Server.

Formerly called SQL Azure, Azure SQL Database provides all of the key features of a relational database management system, including atomic transactions,concurrent data access by multiple users with data integrity, ANSI SQL queries, and a familiar programming model. Like SQL Server, SQL Database can beaccessed using Entity Framework, ADO.NET, JDBC, and other familiar data access technologies. It also supports most of the T‐SQL language, along with SQLServer tools such as SQL Server Management Studio. For anybody familiar with SQL Server ﴾or another relational database﴿, using SQL Database isstraightforward.

But SQL Database isn't just a DBMS in the cloud‐it's a PaaS service. You still control your data and who can access it, but SQL Database takes care of theadministrative grunt work, such as managing the hardware infrastructure and automatically keeping the database and operating system software up todate. SQL Database also provides high availability, automatic backups, point‐in‐time restore capabilities, and can replicate copies across geographicalregions.

There is also a Premium option that you can pay a little more for so you can have your own dedicated server underneath. With the Standard option, thedatabase runs on shared hardware, which can throttle your database queries if you happen to be on a particularly busy server.

Scenarios for SQL Database

If you're creating an Azure application ﴾using any of the compute models﴿ that needs relational storage, SQL Database can be a good option. Applicationsrunning outside the cloud can also use this service, though, so there are plenty of other scenarios. For instance, data stored in SQL Database can beaccessed from different client systems, including desktops, laptops, tablets, and phones. And because it provides built‐in high availability throughreplication, using SQL Database can help minimize downtime.

In Virtual Machines

Azure SQL Database

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 8: Intro to Azure - Azure Fundamentals

Figure: Azure Tables provides a flat NoSQL way to store data.

This feature is sometimes called different terms as it's part of a larger feature called "Azure Storage". If you see "tables", "Azure tables" or "storage tables",it's all the same thing.

And don't be confused by the name: this technology doesn't provide relational storage. In fact, it's an example of a NoSQL approach called a key/valuestore. Azure Tables let an application store properties of various types, such as strings, integers, and dates. An application can then retrieve a group ofproperties by providing a unique key for that group. While complex operations like joins aren't supported, tables offer fast access to typed data. They'realso very scalable, with a single table able to hold as much as a terabyte of data. And matching their simplicity, tables are usually less expensive to use thanSQL Database's relational storage.

Scenarios for Tables

Suppose you want to create an Azure application that needs fast access to typed data, maybe lots of it, but doesn't need to perform complex SQL querieson this data. For example, imagine you're creating a consumer application that needs to store customer profile information for each user. Your app is goingto be very popular, so you need to allow for lots of data, but you won't do much with this data beyond storing it, then retrieving it in simple ways. This isexactly the kind of scenario where Azure Tables makes sense.

Figure: Azure Blobs provides unstructured binary data.

Tables

Blobs

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 9: Intro to Azure - Azure Fundamentals

Azure Blobs ﴾again "Blob Storage" and just "Storage Blobs" are the same thing﴿ is designed to store unstructured binary data. Like Tables, Blobs providesinexpensive storage, and a single blob can be as large as 1TB ﴾one terabyte﴿. Azure applications can also use Azure drives, which let blobs provide persistentstorage for a Windows file system mounted in an Azure instance. The application sees ordinary Windows files, but the contents are actually stored in a blob.

Blob storage is used by many other Azure features ﴾including Virtual Machines﴿, so it can certainly handle your workloads too.

Scenarios for Blobs

An application that stores video, massive files, or other binary information can use blobs for simple, cheap storage. Blobs are also commonly used inconjunction with other services like Content Delivery Network, which we will talk about later.

Figure: Azure Import / Export provides the ability to ship a physical hard drive to or from Azure for faster and cheaper bulk data import or export.

Sometimes you want to move a lot of data into Azure. That would take a long time, perhaps days, and use a lot of bandwidth. In these cases you can useAzure Import/Export, which allows you to ship Bitlocker‐encrypted 3.5" SATA hard drives directly to Azure data centers, where Microsoft will transfer thedata into blob storage for you. After the upload is completed, Microsoft ships the drives back to you. You can also request that large amounts of data fromBlob Storage be exported onto hard drives and sent back to you via mail.

Scenarios for Import / Export

Large Data Migration ‐ Anytime you have large amounts of data ﴾Terabytes﴿ that you want to upload to Azure, the Import/Export service is often muchfaster and perhaps cheaper than transferring it over the internet. Once the data is in blobs, you can process it into other forms such as Table storage oran SQL Database.

Archived Data Recovery ‐ You can use Import/Export to have Microsoft transfer large amounts of data stored in Azure Blob Storage to a storage devicethat you send and then have that device delivered back to a location you desire. Because this will take some time, it's not a good option for disasterrecovery. It's best for archived data that you don't need quick access to.

Import / Export

Azure File Service

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 10: Intro to Azure - Azure Fundamentals

Figure: Azure File Services provides SMB \\server\share paths for applications running in the cloud.

On‐premises, it’s common to use have large amounts of file storage accessible through the Server Message Block ﴾SMB﴿ protocol using a \\Server\shareformat. Azure now has a service that allows you to use this protocol in the cloud. Applications running in Azure can use it to share files between VMs usingfamiliar file system APIs like ReadFile and WriteFile. In addition, the files can also be accessed at the same time via a REST interface, which allows you toaccess the shares from on‐premises when you also set up a virtual network. Azure Files is built on top of the blob service, so it inherits the same availability,durability, scalability, and geo‐redundancy built into Azure Storage.

Scenarios for Azure Files

Migrating existing apps to the cloud ‐ Its easier to migrate on‐premises applications to the cloud that use file shares to share data between parts of theapplication. Each VM connects to the file share and then it can read and write files just like it would against an on‐premises file share.

Shared Application Settings ‐ A common pattern for distributed applications is to have configuration files in a centralized location where they can beaccessed from many different virtual machines. These configuration files can be stored in an Azure File share, and read by all application instances. Thesettings can also be managed via the REST interface, which allows worldwide access to the configuration files.

Diagnostic Share ‐ You can share can save and share diagnostic files like logs, metrics, and crash dumps. Having these files available through both theSMB and REST interface allows applications to use a variety of analysis tools for processing and analyzing the diagnostic data.

Dev/Test/Debug ‐ When developers or administrators are working on virtual machines in the cloud, they often need a set of tools or utilities. Installingand distributing these utilities on each virtual machine is time consuming. With Azure Files, a developer or administrator can store their favorite tools ona file share and connect to them from any virtual machine.

NetworkingAzure runs today in many datacenters spread across the world. When you run an application or store data, you can select one or more of these datacentersto use. You can also connect to these datacenters in various ways using the services below.

Virtual Network

VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
VirtualXP
Highlight
Page 11: Intro to Azure - Azure Fundamentals

Figure: Virtual Networks provides a private network in the cloud so different services can talk to each other, or to on‐premises resources if you set up aVPN connection.a cross‐premises connection.

One useful way to use a public cloud is to treat it as an extension of your own datacenter.

Because you can create VMs on demand, then remove them ﴾and stop paying﴿ when they're no longer needed, you can have computing power only whenyou want it. And since Azure Virtual Machines lets you create VMs running SharePoint, Active Directory, and other familiar on‐premises software, thisapproach can work with the applications you already have.

To make this really useful, though, your users ought to be able to treat these applications as if they were running in your own datacenter. This is exactlywhat Azure Virtual Network allows. Using a VPN gateway device, an administrator can set up a virtual private network ﴾VPN﴿ between your local networkand your VMs that are deployed to a virtual network in Azure. Because you assign your own IP v4 addresses to the cloud VMs, they appear to be on yourown network. Users in your organization can access the applications those VMs contain as if they were running locally.

For more information about planning and creating a virtual network that works for you, see Virtual Network﴾http://msdn.microsoft.com/library/azure/jj156007.aspx﴿.

Express Route

VirtualXP
Highlight
VirtualXP
Highlight
Page 12: Intro to Azure - Azure Fundamentals

Figure: ExpressRoute uses an Azure Virtual Network, but routes connections through faster dedicated lines instead of the public Internet.

If you need more bandwidth or security than an Azure Virtual Network connection can provide, you can look into ExpressRoute. In some cases,ExpressRoute can also save you money. You’ll still need a virtual network in Azure, but the link between Azure and your site uses a dedicated connectionthat does not go over the public Internet. In order to use this service, you’ll need to have an agreement with either a network service provider, or anexchange provider.

Setting it up an ExpressRoute connection requires more time and planning, so you might want to start with a site‐to‐site VPN, then migrate to anExpressRoute connection.

For more information about ExpressRoute, see ExpressRoute Technical Overview ﴾http://msdn.microsoft.com/en‐us/library/azure/dn606309.aspx﴿.

Traffic Manager

Page 13: Intro to Azure - Azure Fundamentals

Figure : Azure Traffic Manager allows you to route global traffic to your service based on intelligent rules.

If your Azure application is running in multiple datacenters, you can use Azure Traffic Manager to route requests from users intelligently across instances ofthe application. You can also route traffic to services not running in Azure as long as they are accessible from the internet.

An Azure application with users in just a single part of the world might run in only one Azure datacenter. An application with users scattered around theworld, however, is more likely to run in multiple datacenters, maybe even all of them. In this second situation, you face a problem: How do you intelligentlydirect users to application instances? Most of the time, you probably want each user to access the datacenter closest to her, since it will likely give her thebest response time. But what if that instance of the application is overloaded or unavailable? In this case, it would be nice to direct her requestautomatically to another datacenter. This is exactly what's done by Azure Traffic Manager.

The owner of an application defines rules that specify how requests from users should be directed to datacenters, then relies on Traffic Manager to carryout these rules. For example, users might normally be directed to the closest Azure datacenter, but get sent to another one when the response time fromtheir default datacenter exceeds the response time from other datacenters. For globally distributed applications with many users, having a built‐in serviceto handle problems like these is useful.

Traffic manager uses Directory Name Service ﴾DNS﴿ to route users to service endpoints, but further traffic does not go through Traffic Manager once thatconnection is made. This keeps Traffic Manager from being a bottleneck that might slow down your service communications.

Developer ServicesAzure offers a number of tools to help developers and IT Professional create and maintain applications in the cloud.

Back in 2008, the very first pre‐release version of Azure supported only .NET development. Today, however, you can create Azure applications in prettymuch any language. Microsoft currently provides language‐specific SDKs for .NET, Java, PHP, Node.js, Ruby, and Python. There's also a general Azure SDKthat provides basic support for any language, such as C++.

These SDKs help you build, deploy, and manage Azure applications. They're available either from www.microsoftazure.com ﴾http://azure.microsoft.com/en‐us/downloads/﴿ or GitHub, and they can be used with Visual Studio and Eclipse. Azure also offers command line tools that developers can use with anyeditor or development environment, including tools for deploying applications to Azure from Linux and Macintosh systems.

Azure SDK

VirtualXP
Highlight
Kidz
Highlight
Kidz
Highlight
Page 14: Intro to Azure - Azure Fundamentals

Along with helping you build Azure applications, these SDKs also provide client libraries that help you create software that uses Azure services. Forexample, you might build an application that reads and writes Azure blobs, or create a tool that deploys Azure applications through the Azure managementinterface.

Visual Studio Online is an marketing name covering a number services which help to develop applications in the Azure.

To avoid confusion ‐ It does not provide a hosted or Web‐based version of Visual Studio. You still need your local running copy of Visual Studio. But itprovides many other tools which can be very helpful.

It does include a hosted source control system called Team Foundation Service, which offers version control and work item tracking. You can even use Gitfor version control if you prefer that. And you can vary the source control system you use by project. You can create unlimited private team projectsaccessible from anywhere in the world.

Visual Studio Online provides a load testing service. You can execute load tests created in Visual Studio on VMs in the cloud. You specify the total numberof users you want to load test with, and Visual Studio Online will automatically determine how many agents are needed, spin up the required virtualmachines and execute your load tests. If you're an MSDN subscriber, you get thousands of free user‐minutes of load testing each month.

Visual Studio Online also offers a service called Application Insights, which gives you an analysis of your entire application. It provides stats on performanceand how your application is being used. If you are already using System Center Operations Manager, it can also hook to it and raise alerts when issues arise.

Additionally, there is support for agile development with features like continuous integration builds, Kanban boards and virtual team rooms.

Visual Studio Online Scenarios

Visual Studio Online is a good option for companies that need to collaborate worldwide and don't already have the infrastructure in place to do so. You canget setup in minutes, choose a source control system and start writing code and building that day. The team tools provide a place for coordination andcollaboration and the additional tools provide the analysis needed to test and tune your application quickly.

But organizations that already have an on‐premises system can test new projects on Visual Studio Online to see if it's more efficient.

No one likes to waste time doing the same manual processes over and over. Azure Automation provides a way for you to create, monitor, manage, anddeploy resources in your Azure environment.

Automation uses "runbooks", which uses Windows PowerShell workflows ﴾vs. just regular PowerShell﴿ under the covers. Runbooks are meant to beexecuted without user interaction. PowerShell workflows allows the state of a script to be saved at checkpoints along the way. Then if a failure occurs, youdon't have to start a script from the beginning. You can restart it at the last checkpoint. This saves you a lot of work trying to make the script handle everypossible failure.

Automation Scenarios

Azure Automation is a good choice to automate the manual, long‐running, error‐prone, and frequently repeated tasks in Azure.

Creating and publishing Application Programmer Interfaces ﴾APIs﴿ on the internet is a common way to provide services to applications. If those services areresellable ﴾for example, weather data﴿, an organization can allow other third parties to access those same services for a fee. As you scale to more partners,you'll usually need to optimize and control access. Some partners may even need the data in a different format.

Azure API Management makes it easy for organizations to publish APIs to partners, employees and third‐party developers securely and at scale. It providesa different API endpoint and acts as a proxy to call the actual endpoint whild providing services like caching, transformation, throttling, access control, andanalytics aggregation.

API Management Scenarios

Let's say your company has a set of devices that all need to call back to a central service to get data ‐‐ for example, a shipping company that has devices inevery truck on the road. Certainly the company will want to set up a system to track it's own trucks so it can reliably predict and update delivery times. Itcan know how many trucks it has and plan appropriately. Each truck will need a device that calls back to a central location with it's positioning and speeddata, and perhaps more.

Visual Studio Online

Automation

API Management

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 15: Intro to Azure - Azure Fundamentals

A customer of the shipping company would probably also benefit from getting this positioning data. The customer could use it to know how far productshave to travel, where they get stuck, how much they paying along certain routes ﴾if combined with what they paid to ship﴿. If the shipping companyaggregates this data already, many customers might pay for it. But then the shipping company needs to provide a way to give customers the data. Oncethey provide access to customers, they may not have control over how often the data is queried. They will have to provide rules about who can access whatdata. All of these rules would have to be built into their external API. This is where API Management can help.

Identity and AccessWorking with identity is part of most applications. Knowing who a user is lets an application decide how it should interact with that user. Azure providesservices to help track identity as well as integrate it with identity stores you may already be using.

Like most directory services, Azure Active Directory stores information about users and the organizations they belong to. It lets users log in, then suppliesthem with tokens they can present to applications to prove their identity. It also allows synchronizing user information with Windows Server ActiveDirectory running on premises in your local network. While the mechanisms and data formats used by Azure Active Directory aren't identical with thoseused in Windows Server Active Directory, the functions it performs are quite similar.

It's important to understand that Azure Active Directory is designed primarily for use by cloud applications. It can be used by applications running onAzure, for example, or on other cloud platforms. It's also used by Microsoft's own cloud applications, such as those in Office 365. If you want to extend yourdatacenter into the cloud using Azure Virtual Machines and Azure Virtual Network, however, Azure Active Directory isn't the right choice. Instead, you'llwant to run Windows Server Active Directory in Virtual Machnes.

To let applications access the information it contains, Azure Active Directory provides a RESTful API called Azure Active Directory Graph. This API letsapplications running on any platform access directory objects and the relationships among them. For example, an authorized application might use this APIto learn about a user, the groups he belongs to, and other information. Applications can also see relationships between users‐their social graph‐lettingthem work more intelligently with the connections among people.

Another capability of this service, Azure Active Directory Access Control, makes it easier for an application to accept identity information from Facebook,Google, Windows Live ID, and other popular identity providers. Rather than requiring the application to understand the diverse data formats and protocolsused by each of these providers, Access Control translates all of them into a single common format. It also lets an application accept logins from one ormore Active Directory domains. For example, a vendor providing a SaaS application might use Azure Active Directory Access Control to give users in eachof its customers single sign‐on to the application.

Directory services are a core underpinning of on‐premises computing. It shouldn't be surprising that they're also important in the cloud.

Active Directory

Multi‐Factor Authentication

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 16: Intro to Azure - Azure Fundamentals

Figure: Multi‐Factor Authentication provides the functionality for your application to verify more than one form of identification

Security is always important. Multi‐factor authentication ﴾MFA﴿ helps insure that only users themselves access their accounts. MFA ﴾also known as two‐factor authentication or "2FA"﴿ requires users provide two of these three methods of identity verification for user sign‐ins and transactions.

Something you know ﴾typically a password﴿

Something you have ﴾a trusted device that is not easily duplicated, like a phone﴿

Something you are ﴾biometrics﴿

So when a user signs in, you can require them to also verify their identity with a mobile app, a phone call or a text message in combination with theirpassword. By default, Azure Active Directory supports the use of passwords as its only authentication method for user sign‐ins. You can use MFA togetherwith Azure AD or with custom applications and directories by using the MFA SDK. You can also use it together with on‐premises applications by usingMulti‐Factor Authentication Server.

MFA Scenarios

Login protection on sensitive accounts such as bank logins and source code access where unauthorized entry could have a high financial or intellectualproperty cost.

MobileIf you are creating an app for a mobile device, Azure can help store data in the cloud, authenticate users, and send push notifications without you having towrite a great deal of custom code.

While you can certainly build the backend for a mobile app using Virtual Machines, Cloud Services or Websites, you can spend much less time writing theunderlying service components by using Azure's services.

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 17: Intro to Azure - Azure Fundamentals

Figure : Mobile Services provides functionality commonly required by applications which interface with mobile devices.

Mobile Services

Page 18: Intro to Azure - Azure Fundamentals

Figure : Mobile Services provides functionality commonly required by applications which interface with mobile devices.

Azure Mobile Services provides many useful functions that can save you time when building a backend for a Mobile application. It allows you to do simpleprovisioning and management of data stored in a SQL Database. With server‐side code you can easily use additional data storage options like blob storageor MongoDB. Mobile Services provides support for notifications, though in certain cases you can instead use Notification Hubs as described next. Theservice also has a REST API that your mobile application can call to get work done. Mobile Services also provides the ability to authenticate users throughMicrosoft and Active Directory as well as other well‐known identity providers like Facebook, Twitter, and Google.

You can use other Azure Services like Service Bus and worker roles, and connect to on‐premises systems. You can even consume 3rd party Add‐Ons fromthe Azure Store ﴾like SendGrid for email﴿ to provide additional functionality.

Native client libraries for Android, iOS, HTML/JavaScript, Windows Phone, and Windows Store make it easier to develop for apps on all major mobileplatforms. A REST API enables you to use Mobile Services data and authentication functionality with apps on different platforms. A single mobile servicecan back multiple client apps so you can provide a consistent user experience across devices.

Because Azure supports massive scale already, you can handle the traffic as your app becomes more popular. Monitoring and logging are supported tohelp troubleshoot issues and manage performance.

Figure : Notification Hubs provides functionality commonly required by applications which interface with mobile devices.

While you can write code to do notifications in Azure Mobile Services, Notification Hubs is optimized to broadcast millions of highly personalized pushnotifications within minutes. You don't have to worry about details like mobile carrier or device manufacturer. You can target individual or millions of userswith a single API call.

Notification Hubs

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 19: Intro to Azure - Azure Fundamentals

Notification Hubs is designed to work with any backend. You can use Azure Mobile Services, a custom backend in the cloud running on any provider or anon‐premises backend.

Notification Hub Scenarios If you were writing a mobile game where players took turns, you may need to notify player 2 that player 1 finished her turn. Ifthat's all you need to do, you could just use Mobile Services. But if you had 100,000 users player your game and you want to send a time sensitive free offerto everyone, Notification Hubs is the better choice.

You can send breaking news, sporting events, and product announcement notifications to millions of users with low latency. Enterprises can notify theiremployees about new time sensitive communications, such as sales leads, so employees don’t have to constantly check email or other applications to stayinformed. You can also send one‐time‐passwords required for multi‐factor authentication.

BackupEvery enterprise needs to backup and restore data. You can use Azure to backup and restore your application whether in the cloud or on‐premises. Azureoffers different options to help depending on the type of backup.

Azure Site Recovery ﴾formerly Hyper‐V Recovery Manager﴿ can help you protect important applications by coordinating the replication and recovery ofHyper‐V images across sites. You can back up to your own secondary site, a hoster’s site, or use Azure and avoid the expense and complexity of buildingand managing your own secondary location. Azure encrypts data and communications and you have the option enable encryption for data at‐rest too.

It monitors the health of your services continuously and helps automate the orderly recovery of services in the event of a site outage at the primarydatacenter. Virtual machines can be brought up in an orchestrated fashion to help restore service quickly, even for complex multi‐tier workloads.

Site Recovery works with existing technologies such as Hyper‐V Replica, System Center, and SQL Server AlwaysOn.

Site Recovery

Azure Backup

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 20: Intro to Azure - Azure Fundamentals

Figure: Azure Backup backs up data from on‐premises Windows Servers into the cloud.

Azure Backup backs up data from on‐premises servers running Windows Server into the cloud. You can manage your backups directly from the backuptools in Windows Server 2012, Windows Server 2012 Essentials, or System Center 2012 ‐ Data Protection Manager. Alternatively, you can use a specializedbackup agent.

Data is safer because backups are encrypted before transmission and stored encrypted in Azure and protected by a certificate that you upload. The serviceuses the same redundant and highly available data protection found in Azure Storage. You can back up files and folders on a regular schedule orimmediately, running either full or incremental backups. After data is backed up to the cloud, authorized users can easily recover backups to any server. Italso offers configurable data retention policies, data compression, and data transfer throttling so you can manage the cost to store and transfer data.

Scenarios for Azure Backup

If you already using Windows Server or System Center, Azure backup is a natural solution for backing up your servers file system, virtual machines, and SQLServer databases. It works with encrypted, sparse and compressed files. There are some limitations, so you should check the Azure Backup pre‐requisites﴾http://technet.microsoft.com/en‐us/library/dn296608.aspx﴿ first.

Messaging and IntegrationNo matter what it's doing, code frequently needs to interact with other code. In some situations, all that's needed is basic queued messaging. In othercases, more complex interactions are required. Azure provides a few different ways to solve these problems. Figure 5 illustrates the choices.

Queues

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 21: Intro to Azure - Azure Fundamentals

Figure: Queues allow loose coupling between parts of an

application and facilitate scaling.

Queuing is a simple idea: One application places a message in a queue, and that message is eventually read by another application. If your applicationneeds just this straightforward service, Azure Queues might be the best choice.

Because of the way the Azure grew over time, Azure Storage Queues and Service Bus Queues provide similar queuing services. The reasons why you wouldwant to use one over the other are covered in the fairly technical paper ﴾http://msdn.microsoft.com/library/azure/hh767287.aspx﴿. In many scenarios, eitherwill work.

Queue Scenarios

One common use of queues today is to let a web role instance communicate with a worker role instance within the same Cloud Services application.

For example, suppose you create an Azure application for video sharing. The application consists of PHP code running in a web role that lets users uploadand watch videos, together with a worker role implemented in C# that translates uploaded video into various formats.

When a web role instance gets a new video from a user, it can store the video in a blob, then send a message to a worker role via a queue telling it whereto find this new video. A worker role instance‐it doesn't matter which one‐will then read the message from the queue and carry out the required videotranslations in the background.

Structuring an application in this way allows asynchronous processing, and it also makes the application easier to scale, since the number of web roleinstances and worker role instances can be varied independently. You can also use the queue size as a trigger to scale the number of worker roles up anddown. Too high, and you add more roles. When it gets lower, you can reduce the number of running roles to save money.

You can use this same pattern between many different parts of your application even if they don't use web and worker roles. It allows you to scale the partson either side of the queue up and down as demand and processing time requires.

Whether they run in the cloud, in your data center, on a mobile device, or somewhere else, applications need to interact. The goal of Azure Service Bus is tolet applications running pretty much anywhere exchange data.

In addition to the queues ﴾one‐to‐one﴿ described earlier, Service Bus also provides to other communication methods.

Service Bus

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 22: Intro to Azure - Azure Fundamentals

Figure: Service Bus Relay allows communication between

applications on different sides of a firewall.

Service Bus allows direct communication through its relay service, providing a secure way to interact through firewalls. Service Bus relays enableapplications to communicate by exchanging messages through an endpoint hosted in the cloud, rather than locally.

Service Bus Relay Scenarios

Applications that communicate through Service Bus might be Azure applications or software running on some other cloud platform. They can also beapplications running outside the cloud, however. For example, think of an airline that implements reservation services in computers inside its owndatacenter. The airline needs to expose these services to many clients, including check‐in kiosks in airports, reservation agent terminals, and maybe evencustomers' phones. It might use Service Bus to do this, creating loosely coupled interactions among the various applications.

Figure: Service Bus Topics allows multiple apps to post messages and other applications to subscribe to receive messages that meet a specific criteria.

Kidz
Highlight
Page 23: Intro to Azure - Azure Fundamentals

Service Bus provides a Publish‐and‐subscribe mechanism called Topics and Subscriptions. With publish‐subscribe, an application can send messages to atopic, while other applications can create subscriptions to this topic. This allows one‐to‐many communication among a set of applications, letting the samemessage be read by multiple recipients.

Service Bus Relay Scenarios Anytime your are setting up where there are many messages that are all important, but various downstream systems only needto listen to differing subsets of those communications, Service Bus Topic and Subscriptions are a good option.

Figure:BizTalk Services provides the ability to transform XML messages formats in the cloud.

Sometimes you need connect systems which communicate using different messaging formats. It’s common for business to have different databaseschemas and XML messaging formats, even when a common standard is available. Rather than write a lot of custom code, you can use BizTalk Server on‐premises to integrate various systems. Azure BizTalk Services provides the same type of service, but in the cloud. You can pay for only what you use and notworry about scale like you would have to on‐premises.

BizTalk Services Scenarios Business‐to‐Business ﴾B2B﴿ interactions commonly require this type of translation. For example, an company building airplanesneeds to order parts from it's various parts suppliers. It will have many parts suppliers. Those orders should be automated to go directly from the airplanebuilders systems into the suppliers systems. Neither business wants to change their core systems and message formats, and it's very unlikely that thoseformats are the same. BizTalk Services can take messages and translate between the new formats both ways. Either the airplane supplier can do the work totranslate or the various suppliers can, depending on who wants more control and the amount of translation needed.

Compute AssistanceAzure provides assistance for services that do not need to run all the time.

BizTalk Services

Scheduler

Kidz
Highlight
Kidz
Highlight
Page 24: Intro to Azure - Azure Fundamentals

Figure: Azure Scheduler provides a way to schedule jobs at a specific time for a specific duration.

Sometimes applications only need to run at a certain time. On Azure, you can save money with this type of app instead of letting an application just keeprunning 24x7 waiting for data to process. Azure Scheduler allows you to schedule when an application should run on based on in interval of time or acalendar. It’s reliable and will verify that a process runs even if there are network, machine, and data center failures. You use the Scheduler REST API tomanage these actions.

When an scheduled alarm occurs, Scheduler sends HTTP or HTTPS messages to a specific endpoint or can put a message in a Storage Queue. So you needto have your application either have an accessible endpoint or have it monitor a storage queue. Then once it gets the message, it can perform whateveraction it's programmed to.

Scheduler Scenarios

Recurring application actions: As an example, a service may periodically get data from twitter and gather the data into a regular feed.

Daily maintenance: Log processing or pruning, performing backups and other intermittently schedule tasks.

Tasks that run at night.

Web applications tasks like daily pruning of logs, performing backups, and other maintenance tasks. An administrator may choose to backup herdatabase at 1AM every day for the next 9 months, for example.

The Scheduler API allows you to create, update, delete, view, and manage job collections and scheduled jobs programmatically.

PerformancePerformance is always important for an application. Applications tend to access the same data over and over. One way to improve performance is to keep acopy of that data closer to the application, minimizing the time needed to retrieve it. Azure provides different services for doing this.

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 25: Intro to Azure - Azure Fundamentals

Figure: An Azure application can cache data in memory and even split it up across many worker roles

Accessing data stored in any of Azure's data management services‐SQL Database, Tables, or Blobs‐is quite fast. Yet accessing data stored in memory iseven faster. Because of this, keeping an in‐memory copy of frequently accessed data can improve application performance. You can use Azure's in‐memoryCaching to do this.

A Cloud Services application can store data in this cache, then retrieve it directly without needing to access persistent storage. The cache can be maintainedinside your application's VMs or be provided by VMs dedicated solely to caching. In either case, the cache can be distributed, with the data it containsspread across multiple VMs in an Azure datacenter.

Azure has a number of different cache technologies that have shifted over time. In the order they were introduced, there is a shared, in‐role, managed andRedis cache. The shared caching is an older technology and you shouldn’t create new implementations with it. The Managed Cache has the same featuresof the In‐Role cache, but as managed service outside of the Azure Management Portal. The Redis Cache is in preview. The Redis implementation has thelargest number of features and is recommended when you write new caching code.

Azure Cache Scenarios

An application that repeatedly reads a product catalog might benefit from using this kind of caching, for example, since the data it needs will be availablemore quickly. The technology also supports locking, letting it be used with read/write as well as read‐only data. And ASP.NET applications can use theservice to store session data with just a configuration change.

Azure Caching

CDN

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 26: Intro to Azure - Azure Fundamentals

Figure:Copies of a blob can be cached at sites around the world.

Suppose you need to store blob data that will be accessed by users around the world. Maybe it's a video of the latest World Cup match, for instance, ordriver updates, or a popular e‐book. Storing a copy of the data in multiple Azure datacenters will help, but if there are lots of users, it's probably notenough. For even better performance, you can use the Azure CDN.

The CDN has dozens of sites around the world, each capable of storing copies of Azure blobs. The first time a user in some part of the world accesses aparticular blob, the information it contains is copied from an Azure datacenter into local CDN storage in that geography. After this, accesses from that partof the world will use the blob copy cached in the CDN‐they won't need to go all the way to the nearest Azure datacenter. The result is faster access tofrequently accessed data by users anywhere in the world.

CDN Scenarios

It's common to use CDN with Media Services to deliver video worldwide. Video is usually large and requires a lot of bandwidth. Media Services is talkedabout elsewhere on this page.

Big Data and Big ComputeHDInsight ﴾Hadoop﴿

Page 27: Intro to Azure - Azure Fundamentals

Figure: HDInsight helps with the bulk processing of huge amounts of data

For many years, the bulk of data analysis has been done on relational data stored in a data warehouse built with a relational DBMS. This kind of businessanalytics is still important, and it will be for a long time to come. But what if the data you want to analyze is so big that relational databases just can'thandle it? And suppose the data isn't relational? It might be server logs in a datacenter, for example, or historical event data from sensors, or somethingelse. In cases like this, you have what's known as a big data problem. You need another approach.

The dominant technology today for analyzing big data is Hadoop. An Apache open source project, this technology stores data using the HadoopDistributed File System ﴾HDFS﴿, then lets developers create MapReduce jobs to analyze that data. HDFS spreads data across multiple servers, then runschunks of the MapReduce job on each one, letting the big data be processed in parallel.

HDInsight is the name of the Azure's Apache Hadoop‐based service. HDInsight lets HDFS store data on the cluster and distribute it across multiple VMs. Italso spreads the logic of a MapReduce job across those VMs. Just as with on‐premises Hadoop, data is processed locally‐the logic and the data it works onare in the same VM‐and in parallel for better performance. HDInsight can also store data in Azure Storage Vault ﴾ASV﴿, which uses blobs. Using ASV allowsyou to save money because you can delete your HDInsight cluster when not in use, but still keep your data in the cloud.

HDinsight supports other components of the Hadoop ecosystem as well, including Hive and Pig. Microsoft has also created components that make it easierto work with data produced by HDInsight using traditional BI tools, such as the HiveODBC adapter and Data Explorer that work with Excel.

One of the most attractive ways to use a cloud platform is to run high performance computing ﴾HPC﴿ and other "Big Compute" applications. Examplesinclude specialized engineering applications built to use the industry‐standard Message Passing Interface ﴾MPI﴿ as well as so‐called embarrassingly parallelapplications, such financial risk models.

The essence of Big Compute is executing code on many machines at the same time. On Azure, this means running many virtual machines simultaneously,all working in parallel to solve some problem. Doing this requires some way to resources and to schedule applications, i.e., to distribute their work acrossthese instances. Microsoft’s free HPC Pack and other compute cluster solutions can perform well in Azure, taking advantage of Azure compute andinfrastructure services to add capacity on‐demand to an on‐premises compute cluster or run Big Compute applications entirely in the cloud.

Azure provides a range of VM instance sizes with different configurations of CPU cores, memory, disk capacity, and other characteristics to meet therequirements of different applications. The recently introduced A8 and A9 instances work well for many compute intensive workloads, and parallel MPIapplications in particular, because they have high speed, multicore CPUs and large amounts of memory. In certain configurations the instances takeadvantage of a low‐latency and high‐throughput application network in the cloud that includes remote direct memory access ﴾RDMA﴿ technology formaximum efficiency of parallel MPI applications.

High‐Performance Computing ﴾Big Compute﴿

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 28: Intro to Azure - Azure Fundamentals

Azure also offers Big Compute application developers and partners a full set of compute capabilities, services, architecture choices, and development tools.Azure supports custom Big Compute workflows involving specialized data workflows and job and task scheduling patterns that can scale to thousands ofcompute cores.

Media

Figure: Media Services is a platform for applications that provide video and other media to clients around the world.

Video makes up a large part of Internet traffic today, and that percentage will be even larger tomorrow. Yet providing video on the web isn't simple. Thereare lots of variables, such as the encoding algorithm and the display resolution of the user's screen. Video also tends to have bursts in demand, like aSaturday night spike when lots of people decide they'd like to watch an online movie.

Given its popularity, it's a safe bet that many new applications will be created that use video. Yet all of them will need to solve some of the same problems,and making each one solve those problems on its own makes no sense. A better approach is to create a platform that provides common solutions for manyapplications to use. And building this platform in the cloud has some clear advantages. It can be broadly available on a pay‐as‐you‐go basis, and it can alsohandle the variability in demand that video applications often face.

Azure Media Services addresses this problem. It provides a set of cloud components that make life easier for people creating and running applicationsusing video and other media.

As the figure shows, Media Services provides a set of components for applications that work with video and other media. For example, it includes a mediaingest component to upload video into Media Services ﴾where it's stored in Azure Blobs﴿, an encoding component that supports various video and audioformats, a content protection component that provides digital rights management, a component for inserting ads into a video stream, components for

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 29: Intro to Azure - Azure Fundamentals

streaming, and more. Microsoft partners can also provide components for the platform, then have Microsoft distribute those components and bill on theirbehalf.

Applications that use this platform can run on Azure or elsewhere. For example, a desktop application for a video production house might let its usersupload video to Media Services, then process it in various ways. Alternatively, a cloud‐based content management service running on Azure might rely onMedia Services to process and distribute video. Wherever it runs and whatever it does, each application chooses which components it needs to use,accessing them through RESTful interfaces.

To distribute what it produces, an application can use the Azure CDN, another CDN, or just send bits directly to users. However it gets there, video createdusing Media Services can be consumed by various client systems, including Windows, Macintosh, HTML 5, iOS, Android, Windows Phone, Flash, andSilverlight. The goal is to make it easier to create modern media applications.

References

For a more visual view of how Media Services works, download the Azure Media Services Poster ﴾http://azure.microsoft.com/en‐us/documentation/infographics/media‐services/﴿.

CommerceThe rise of Software as a Service is transforming how we create applications. It's also transforming how we sell applications. Since a SaaS application lives inthe cloud, it makes sense that its potential customers should look for solutions online. And this change applies to data as well as to applications. Whyshouldn't people look to the cloud for commercially available datasets? Microsoft addresses both of these concerns with Azure Marketplace﴾http://datamarket.azure.com/﴿ and Azure Store ﴾/en‐us/store/overview/﴿.

Figure: Azure Marketplace and Azure Store let you find and buy Azure applications and commercial datasets and use them as part of your Azure

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 30: Intro to Azure - Azure Fundamentals

Figure: Azure Marketplace and Azure Store let you find and buy Azure applications and commercial datasets and use them as part of your Azureapplications.

The difference between the two is that Marketplace is outside of the Azure Management Portal, but the Store can be accessed from inside the portal.Potential customers can search to find Azure applications that meet their needs.. Customers can search for commercial datasets as well, includingdemographic data, financial data, geographic data, and more. When they find something they like, they can access it either from the vendor, directlythrough the Marketplace or Store web locations or in some cases from the Management Portal. Applications can also use the Bing Search API through theMarketplace, giving them access to the results of web searches.

Commerce Scenarios

SendGrid is an application in the Azure Store that allows you to send email. It offers additional functionality like reliable delivery and statistics. You can buythis application and related services rather then try to build such an infrastructure yourself.

Getting StartedNow that you have the big‐picture, the next step is to write your first Azure application. Choose your language, get the appropriate SDK ﴾/en‐us/downloads/﴿, and go for it. Cloud computing is the new default‐‐get started now.

Contribute to this articleWant to edit or suggest changes to this content? You can edit and submit changes to this article ﴾https://github.com/Azure/azure‐content/blob/master/articles/fundamentals‐introduction‐to‐azure.md﴿ using GitHub.

Need more help using this Azure service? Go to an MSDN forum ﴾https://social.msdn.microsoft.com/forums/azure/en‐US/home?category=windowsazurewebsitespreview﴿ or StackOverflow discussion ﴾http://stackoverflow.com/questions/tagged/azure‐web‐sites﴿

171 Comments Azure Site Login

Sort by Newest Share ⤤

Join the discussion…

• Reply •

Ameet • 2 months ago

Hi,Does Azure offer services if application is started with RDBMS SQL and then move on to NO SQL databases like Mongo DB during theApplication lifecycle

unizem • 2 months ago

I want users of my Office App to be redirected from Azure Services to the services on my private cloud. While allowing Azure to do theTx logging, licensing etc. But despite several days onto finding the right opiton(s) ­ i am not able to decide what is the best way?

Shall I use

Option1: OfficeApp calls > Azure Website > uses Service Relay (will a Queue come into picture?) > to Endpoint on my Private Cloud ?orOption2: OfficeApp calls > some Azure Cloud Services > redirects to > to Endpoint on my Private Cloud ?or Option3: OfficeApp calls > some Azure DataServices > redirects to > to Endpoint on my Private Cloud ?

Favorite

Share ›

Kidz
Highlight
Kidz
Highlight
Kidz
Highlight
Page 31: Intro to Azure - Azure Fundamentals

• Reply •

Option3: OfficeApp calls > some Azure DataServices > redirects to > to Endpoint on my Private Cloud ?

This is really giving me let of pain ­ even if I want to proceed with some quick POC ­ then the Q is which one?Any pointers would be very valuable. Appreciate all help.

• Reply •

Rusiru Adhikari • 3 months ago

Comprehensive description ......awesome , thank you very much. 1

• Reply •

Rob Boucher Jr. • 3 months ago

I've made a major revision to this article with new art and services. Feel free to comment.

• Reply •

srinath kumar • 5 months ago

why queues are not given under data management, actually azure queues will comes under the storage i.e data management

see this link:http://azure.microsoft.com/en­...

• Reply •

Rob Boucher Jr. • 5 months ago> srinath kumar

I understand Srinath. We are trying to organize by functionality in this paper. Queues are typically used for communicationsbetween applications and rarely for any sort of durable storage, so we put them under the messaging area. That said, I canunderstand the confusion. We also actually have two possible queue services because of how Azure evolved. Service BusQueue and Storage Queues.

• Reply •

Chris Wong • 6 months ago

This is a great article but it would be good to add more examples, so people know how to choose in between VM or Cloud service.

but I have a question, my application required to run on the windows server with SQL, IIS and a sub­program is not a service and needto launch it on the server desktop(can't logout), and we also need a redundancy solution for application and SQL, which one shall i gofor? Azure VM or cloud? thanks

• Reply •

Rob Boucher Jr. • 7 months ago

Hi All. I'm now the person at Microsoft responsible for this paper. I'll be monitoring comments and updating the paper. Feel free toprovide comments and feedback on the paper below. I'll do my best to address them.

• Reply •

srinath kumar • 5 months ago> Rob Boucher Jr.

Hi Rob,why queues are not mentioned under "data management". there are two type of queues 1) azure queue: used to provide thecommunication between web and worker role 2) service bus queue: used to provide communication between applications.

One more doubt is What exactly difference between website and cloud service

third doubt is

there are 3 types of roles : web,worker,vmwhat is the vm role what it does exactly

Rob Boucher Jr. • 5 months ago> srinath kumar

Hi Srinath, This article may help answer your questions.

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Page 32: Intro to Azure - Azure Fundamentals

• Reply •

This article may help answer your questions. http://azure.microsoft.com/en­...

Ignore "VM role" if you are just starting. It's a deprecated feature of Cloud Services. It released before the IaaS VirtualMachines feature.

• Reply •

albania • 10 months ago

why windows azure is not accessible in Albania or Kosovo

• Reply •

Rob Boucher Jr. • 7 months ago> albania

The list of countries where Azure is available can be found at http://azure.microsoft.com/en­... in the question Is the trial availableinternationally? There are currently 89 countries where it's available as of today 5/15/2014. Sorry that it's not in Albania orKosovo yet. The number of countries is growing all the time.

• Reply •

Rob Boucher Jr. • 7 months ago> albania

Do you mean that you can't access the management portal at https://manage.windowsazure.co...

• Reply •

Hakim Shabir • 10 months ago

UI purely in Silver light and HTML and server code in c# .correct me if i am wrong 1

• Reply •

Rob Boucher Jr. • 7 months ago> Hakim Shabir

Current portal uses HTML5 actually. Silverlight was the older portal about 3 years ago. I'm not sure what the backend is writtenin but C# is a good bet.

• Reply •

shalik • 10 months ago

In what language windows azure has been created

• Reply •

Ashish • 7 months ago> shalik

.net

• Reply •

Srinivasan Shankaralingam • a year ago

How windows Azure reduce IT costand enhance efficiency, for SME and bg enterprise.

7

• Reply •

Hakim Shabir • 10 months ago> Srinivasan Shankaralingam

Let me give you simple example. If you have website which is serving 1000 users and next your business increases and youwant your website to server 10,000. for that you have to again buy hardware to scale out/scale up you site. So obviously youneed resources to buy and will again consume time for upgrading it. Other side, if same website is on cloud,you just need toutilize resources which are already available to you on simple request.Again suddenly you decide to scale down your applicationfor 1000 users only,you can just make it on basis of request rather if you have bought this infrastructure you can't return it todealer.. just like you use electricity at home; you pay for what you use.

7

• Reply •

Rob Boucher Jr. • 7 months ago> Hakim Shabir

Yep. That's one example. Thanks for answering Hakim. 1

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Page 33: Intro to Azure - Azure Fundamentals

• Reply •

Carlos Pineda • a year ago

Amazon EC2 says "...AWS does not have any access rights to your instances or the guest OS" (http://awsmedia.s3.amazonaws.c...can ) then Amazon can not log into a virtual machine (they call "instance") due they don't have the private key generated when virtualmachine was created; they only have the public key.

Could Windows Azure administrators (Microsoft) log into a virtual machine created by an Azure user (Windows or Linux)? 6

• Reply •

Carlos Pineda • a year ago> Carlos Pineda

The referrer URL is:http://awsmedia.s3.amazonaws.c...

• Reply •

Carlos Pineda • a year ago> Carlos Pineda

Could Windows Azure administrators (Microsoft) log into a virtual machine created by an Azure user (Windows orLinux)?

The answer to this question is:

"No, We do not have the credentials to login to your servers. Linux or Windows."

I have been posted this question into the Q&A foro when I was attending the following course:

Server Virtualization w/ Windows Server Hyper­V & System Center Jump StartMicrosoft Virtual Academy, Nov 19 2013

1

• Reply •

Paul • a year ago

Is an encrypted Cloud VPN safe from malware that conducts code acquisition via screen scraping or wall scraping?

• Reply •

Nitesh Sharma • a year ago

Hii all experts ,what i i think about windows azure is , its a cloud platform which provides two services execution model and storage . inexecution model it has iaas (windows virtual machine) and pass (cloud services , mobile service and windows azure website). and itstorage it has three , relational (sql azure ), Nosql(table) ,blob( blob) .

6

• Reply •

Rob Boucher Jr. • 7 months ago> Nitesh Sharma

Actually Nitesh, each of the items listed above is a service. We've grouped the services to help explain them, but each box isseparate and can be used with or without the others. I have to update this article so it's got all the current services in it. Foranother graphical view, look at the What Is Azure infographic. http://azure.microsoft.com/en­...

• Reply •

boss1111 • a year ago

great

• Reply •

Thiago • a year ago

Awesome introduction! By the way, I'm writing about all this subjects in pt­BR in my blog: http://thiagocustodio.azureweb...

Maybe it could help someone. 2

• Reply •

Jay Trivedi • a year ago

Can i know how to create a dynamic instance on azure using Java. I am unable to find this solution on azure docs. 1

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Page 34: Intro to Azure - Azure Fundamentals

• Reply •

Thiago • a year ago> Jay Trivedi

Jay, I believe that it's not possible with Java SDK. For this kind of automation you should use powershell scripts.

• Reply •

Nitin Narang • a year ago

Is there a performance matrix for WAMS in terms of encoding time for CPU cores deployed ? 1

• Reply •

Rogerzhou724 • a year ago

Good Introduction to Windows Azure! 3

• Reply •

Rob Boucher Jr. • 7 months ago> Rogerzhou724

Glad you like it. Thanks. David Chappell was the original writer. He does a great job of explaining.

• Reply •

Daniel Chan • a year ago

window azure,these is my first time to sign in

• Reply •

Akedijewf17 • a year ago

Why Execution Model "Websites" are not offered for Ruby?

• Reply •

Muralidhran Dharmalingam • a year ago

whether Windows Azure provides IAAS,PAAS and SAAS or only IAAS and PAAS?

• Reply •

Rob Boucher Jr. • 7 months ago> Muralidhran Dharmalingam

Yes. Virtual Machines is IAAS. Cloud Services and WebSites are PAAS. Many of the other services don't really fall into thosecategories because they often don't have UIs, but SAAS would be the closest equivalent. They provide specific types offunctionality that assist you in specific ways. Traffic Manager for example.

• Reply •

Sumitra Sheth • a year ago> Muralidhran Dharmalingam

It provides all the three IAAS, PAAS and SAAS.

• Reply •

Muhammad Mugees Asif • a year ago> Muralidhran Dharmalingam

Yes!

• Reply •

technogeist • a year ago

Some clarification required, on where data is held and the implications that has for legal jurisdiction if held in a country that has massiveresources in targeting emails and net traffic. (NSA / GCHQ et al)

3

• Reply •

Aliimehrpour • 2 years ago

That is good aricle...

• Reply •

Michael Bradley • 2 years ago

P.S. ­ Is Brad a Vulcan? I'm sure he gets that a lot.... haha... he's correct. You enhanced more in 12 months than usually takes 3 years.Hurray for MS!!!!!

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Page 35: Intro to Azure - Azure Fundamentals

Load more comments

• Reply •

• Reply •

Michael Bradley • 2 years ago

Glad to get on Azure with AD. 3 months ago I passed my MCSE on WS2012. Wanted to setup a VM on Azure with AD (a DC forstarters), didn't know exactly how then. Thanks to TechEd, found Azure AD and definitely this is the right direction.

Michael Bradley, [email protected], MCSE 2012

• Reply •

Sandeep Pote • 2 years ago

Good article!!! I now understood what is Windows Azure, why and where to use..

• Reply •

Bounchom • 2 years ago

first time i running win dow 8 but ,but enjoin toworking with.

• Reply •

Aaa • 2 years ago

12121212121212

• Reply •

Thomas Jones • 2 years ago

Why is there no mention of MS Access? 2

• Reply •

Rob Boucher Jr. • 7 months ago> Thomas Jones

MS Access is a structure database. SQL Database provides the closest functionality equivalent.

• Reply •

Thomas Jones • 7 months ago> Rob Boucher Jr.

Rob, are you saying that a user cant migrate to Azure if they have MS Access? And can you define a StructureDatabase please.

• Reply •

Rob Boucher Jr. • 7 months ago> Thomas Jones

Hi Thomas,You can if you want, but I'm not sure what your requirements are. Getting into that might be beyond the help I canprovide as I'm not and expert in the database area and this is not a support forum, but here's what I know.

A structured database is the same as a "relational" database. It means there are tables with indexes and you jointables to get information back in queries. Your options are

1. You can run Access in a Virtual Machine in the cloud. 2. You can convert your database to an SQL Server database and run SQL Server on a Virtual Machine. SQLServer provides better performance than Access as you scale.

2. You convert your access database to an SQL Database running in the cloud. See this video for moreinformation. http://www.microsoft.com/en­us...

Generally, the issue with moving a database to the cloud is where your clients are. There is added latency goingfrom your network to the cloud and back so you either want your clients moved to the cloud, you want to cachethe database closer to them or at the minimum you want to move a copy of the database to the cloud and testyour application performance.

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Share ›

Page 36: Intro to Azure - Azure Fundamentals

Subscribe Add Disqus to your sited Privacy

Go Social

Facebook

﴾http://go.microsoft.com/fwlink/?

linkid=306390&clcid=0x409﴿Twitter

﴾http://go.microsoft.com/fwlink/?

linkid=306391&clcid=0x409﴿Rss

﴾http://azure.microsoft.com/blog/feed/﴿Newsletter

﴾http://go.microsoft.com/fwlink/?

linkid=306393&clcid=0x409﴿

Microsoft Azure ﴾/en‐us/﴿Features ﴾/en‐us/solutions/﴿Services ﴾/en‐us/services/﴿Regions ﴾/en‐us/regions/﴿Case Studies ﴾/en‐us/case‐studies/﴿Pricing ﴾/en‐us/pricing/﴿Calculator ﴾/en‐us/pricing/calculator/﴿Documentation ﴾/en‐us/documentation/﴿Downloads ﴾/en‐us/downloads/?sdk=net﴿Marketplace ﴾/en‐us/marketplace/﴿Microsoft Azure in China﴾http://windowsazure.cn/zh‐cn/﴿Microsoft Azure Government ﴾/en‐us/features/gov/﴿

Community﴾http://azure.microsoft.com/blog/﴿Blogs ﴾http://azure.microsoft.com/blog/﴿Service Updates ﴾/en‐us/updates/﴿Forums ﴾/en‐us/support/forums/﴿Events ﴾/en‐us/community/events/﴿

Support ﴾/en‐us/support/options/﴿Forums ﴾/en‐us/support/forums/﴿Service Dashboard ﴾http://status.azure.com﴿Support ﴾/en‐us/support/options/﴿

Account﴾https://account.windowsazure.com﴿Subscriptions﴾https://account.windowsazure.com/subscriptions/﴿Profile﴾https://account.windowsazure.com/profile/﴿Preview Features ﴾/en‐us/services/preview/﴿Management Portal﴾https://manage.windowsazure.com﴿

Trust Center ﴾/en‐us/support/trust‐center/﴿Security ﴾/en‐us/support/trust‐center/security/﴿Privacy ﴾/en‐us/support/trust‐center/privacy/﴿Compliance ﴾/en‐us/support/trust‐center/compliance/﴿

Hello from Seattle.

Contact Us ﴾http://support.microsoft.com/contactus/?ws=mscom﴿

Trademarks ﴾http://go.microsoft.com/fwlink/p/?linkid=222682&clcid=0x409﴿

Privacy & Cookies ﴾http://go.microsoft.com/fwlink/?linkid=248681&clcid=0x409﴿ Feedback ﴾http://feedback.azure.com/﴿

English ﴾US﴿ EURMicrosoft ﴾http://www.microsoft.com﴿

© 2014 Microsoft