The Windows Azure platform is primarily a platform as a service (PaaS) offering. It targets end users like developers who use the platform to build software as a service (SaaS) applications, services or databases at the backend. As a user who wants to access the Azure Platform, it’s critical that you understand the key pointers we have listed out in this Windows Azure tutorial.
Setting up Windows Azure subscriptions
The first step towards using a Windows Azure Platform is to create a billing account. You could do so by signing up for Microsoft Online Services at https://mocp.microsoftonline.com/ or through the Windows Azure portal at https://windows.azure.com/. Every billing account owner has a specific Windows Live ID. Using this ID, the account owner can create and manage subscriptions, as well as get access to the billing information and usage data. Users can also specify the service administrator for each subscription (including Windows Azure).
- The fundamental unit of working for a developer is a subscription. Access to the Windows Azure services as well as the Management Portal is done through the subscription. The actions that can be performed on the Management Portal are described in the terms of the account (accessible through the Microsoft Online Services Customer Portal). The terms also list out the limits on available compute, storage, and network resources. The role title for accessing the subscription account is called an Administrator.
- In the Management Portal, you only see hosted services, storage and SQL Azure databases created using a subscription. Through the billing account described earlier in this Windows Azure tutorial, you could set the total compute units/virtual machines, storage and hosted services that can be utilized. In the ‘Properties’ pane of the Management Portal, you can check subscription reports of the consumed quota.
- Individual hosted services for the subscription can be managed using the Windows Azure portal mentioned earlier in this Windows Azure tutorial. (See Figure 1)
The subscription can include:
- Hosted services that contain hosted roles and instances within each role. You should note that the roles and instances may be stopped, in production, or in staging mode.
- Storage accounts - Table, BLOB, and queue storage instances.
- Instances on the content delivery network
- Databases of SQL Azure
- Instances on SQL Azure Reporting Services
- Instances on the Access Control, Service Bus, and Cache service
- Virtual Network Connect and Traffic Manager Instances
Figure 1: Billing account and administrator’s hierarchy for Windows Azure Platform
Windows Azure resources
The online portal is built on Silverlight, and based on exactly the same principals as above to set up your subscription. The portal is enabled with features like sharing a subscription among many administrators. You can assign “Co-Administrators” (under the hosted services tab à user management option) to the same subscription, since many developers can work with the same subscription and the same project. This completes the first part of this Windows Azure tutorial. Let’s now move on to the management element.
Under the hood management
Once you have access to a subscription, the next important part is to consume the Windows Azure Platform services like hosting your web applications, backend services, consuming Azure storage and relational SQL Azure database, using access control services, and message relaying.
Service Management APIs are the most fundamental representational state transfer (REST) based application programming interfaces (API) that performs all the operations and management of your subscription (including all the active hosted services and other components covered in this Windows Azure tutorial) through multiple ways:
1. The portal has management options like:
- Add co-administrators to help manage hosted services
- Manage Storage Account to provide Windows Azure Storage Services
- Create affinity groups to co-locate the hosted services and the storage services within the same data center
- Add management certificates to provide client access to Windows Azure resources when working outside the portal, for instance, deploying an application through Visual Studio or Eclipse.
More on Azure
2. Windows PowerShell is a task-based, free, command-line shell and scripting language that can be utilized to automate deployment and administrative tasks. PowerShell commandlets are available, through which you can script your deployment and management strategies (http://wappowershell.codeplex.com/)
3. Microsoft developers can easily use managed environment to codify their management tasks on Azure using the .NET client library for Service Management APIs, along with samples that are available. This managed code wrapper is available to write .NET code that will programmatically perform the tasks.
4. You could setup a development environment for Azure by downloading free Windows Azure SDK. This includes Azure hosting and storage service emulators, tools and templates for Visual Studio, as well as a command line tool (“cspack”). CSPack also provides many commands to call the Service Management API.
5. Write your own representational state transfer (REST) based handler. The service management specifications are found at http://msdn.microsoft.com/en-us/library/windowsazure/ee460799.aspx
This concludes the first part of our Windows Azure tutorial which covers Windows Azure portal access and various options for subscription management. In the forthcoming articles, we will further dissect the Service Management APIs.
About the author: Saranya Sriram works as a Developer Evangelist in Microsoft India, and focuses on Microsoft’s latest cloud services technology. She has spent considerable time in other Microsoft business units in India and Redmond. She is passionate about technology, community meet-ups, presentations, demos and two-way dialogues. She is a graduate from BITS Pilani in Computer Science, and has a Masters degree in Physics.
(As told to Mitchelle R Jansen)
This was first published in April 2012