Programming4us
         
 
 
Windows

Windows Azure Service Life Cycle

10/30/2010 11:36:51 AM
The objective of Windows Azure is to automate the service life cycle as much as possible. Windows Azure service life cycle has five distinct phases and four different roles.
Figure 1. The Windows Azure service life cycle

The five phases are as follows:

Design and development: In this phase, the on-premise team plans, designs, and develops a cloud service for Windows Azure. The design includes quality attribute requirements for the service and the solution to fulfill them. This phase is conducted completely on-premise, unless there is some proof of concept (POC) involved. The key roles involved in this phase are on-premise stakeholders. For the sake of simplicity, I have combined these on-site design roles into a developer role.

Testing: In this phase, the quality attributes of the cloud service are tested. This phase involves on-premise as well as Windows Azure cloud testing. The tester role is in charge of this phase and tests end-to-end quality attributes of the service deployed into cloud testing or staging environment.

Provisioning: Once the application is tested, it can be provisioned to Windows Azure cloud. The deployer role deploys the cloud service to the Windows Azure cloud. The deployer is in charge of service configurations and makes sure the service definition of the cloud service is achievable through production deployment in Windows Azure cloud. The configuration settings are defined by the developer, but the production values are set by the deployer. In this phase, the role responsibilities transition from on-premise to the Windows Azure cloud. The fabric controller in Windows Azure assigns the allocated resources as per the service model defined in the service definition. The load balancers and virtual IP address are reserved for the service.

Deployment: In the deployment phase, the fabric controller commissions the allocated hardware nodes into the end state and deploys services on these nodes as defined in the service model and configuration. The fabric controller also has the capability of upgrading a service in running state without disruptions. The fabric controller abstracts the underlying hardware commissioning and deployment from the services. The hardware commissioning includes commissioning the hardware nodes, deploying operating system images on these nodes, and configuring switches, access routers, and load-balancers for the externally facing roles (e.g., Web role).

Maintenance: Windows Azure is designed with the assumption that failure will occur in hardware and software. Any service on a failed node is redeployed automatically and transparently, and the fabric controller automatically restarts any failed service roles. The fabric controller allocates new hardware in the event of a hardware failure. Thus, fabric controller always maintains the desired number of roles irrespective of any service, hardware or operating system failures. The fabric controller also provides a range of dynamic management capabilities like adding capacity, reducing capacity and service upgrades without any service disruptions. Figure 2 illustrates the fabric controller architecture.

Figure 2. Fabric controller architecture

In Figure 2, the fabric controller abstracts the underlying Windows Server 2008 operating system and the hardware from the service role instances, and it performs the following high-level tasks:

  • Allocates the nodes

  • Starts operating system images on the nodes

  • Configures the settings as per the service model described by the service creator

  • Starts the service roles on allocated nodes

  • Configures load balancers, access routers, and switches

  • Maintains the desired number of role instances of the service irrespective of any service, hardware or operating system failures

Table 1 lists the quality attribute requirements for Windows Azure and the description of how it satisfies those.

Table 1. Quality Attributes
Quality AttributeDescription
High availabilityWindows Azure provides built-in redundancy with access routers, load balancers, and switches. Load balancers are automatically provisioned for external facing roles (e.g. Web roles).
Service isolationEvery service operates within the parameters of its service model. Services can access only the resources declared in the service model configuration. These resources include endpoints, local storage, and local machine resources.
SecurityEvery service role instance runs in the Windows user context. The instance does not have access to any administrative privileges and limited native execution access when native access is enabled.
Automatic provisioningThe fabric controller automates the service deployment from bare-metal hardware to service role deployment. The service model and the configuration information act as the instruction set for the fabric controller to provision appropriate hardware and virtual machine instances. The fabric controller can also upgrade your service while running without disruptions.

Other -----------------
- Backing Up and Restoring with ntbackup
- Windows Azure Service Management
- Windows Azure : Content Delivery Network
- Windows Azure Storage Services
- Windows Azure Storage Characteristics
- Microsoft Windows Vista : Using Parental Controls to Restrict Computer Usage
- Microsoft Windows Vista : Creating and Enforcing Bulletproof Passwords
- Windows 7 Customization : Taking Ownership of Your Files
- Windows 7 Customization : Stopping Delete Confirmations
- Windows 7 : Managing a User Account - Limiting Computer Access
- Windows 7 : Managing a User Account
- Windows 7 : Understanding User Accounts and Permissions
- Windows Azure : Diagnostics
- Windows Azure : Common Storage Tasks - Utilizing Concurrent Updates
- Windows Azure : Common Storage Tasks - Modeling Data
- Windows Azure : Exploring Full-Text Search (part 3)
- Windows Azure : Exploring Full-Text Search (part 2) - Building an FTS Engine on Azure
- Windows Azure : Exploring Full-Text Search (part 1) - Indexing
- Windows Azure: Building a Secure Backup System (part 6) - Uploading Efficiently Using Blocks
- Windows Azure: Building a Secure Backup System (part 5)
 
 
Most View
- Coding JavaScript for Mobile Browsers (part 4)
- BizTalk Server 2009 : The core principles of a service-oriented architecture (part 2)
- Tuning Windows Vista’s Performance : Optimizing Applications
- Preparing for the SAP Sizing Process
- SQL Server 2008 : Transactions Explained
- Using Non-Windows Systems to Access Exchange Server 2007 : Configuring and Implementing Entourage for the Mac
- SQL Azure Primer (part 1)
- Backing Up with the dump Utility (part 1) - Syntax of the dump Command & The Options to the dump Command
- A Technical Overview of the Mobile Web : THE TECHNICAL CHALLENGES OF MOBILE DEVICES (part 2)
- Troubleshooting and Optimizing SQL Server 2005 : Tuning the Database Structure
Top 10
- Implementing Edge Services for an Exchange Server 2007 Environment : Utilizing the Basic Sender and Recipient Connection Filters (part 3) - Configuring Recipient Filtering
- Implementing Edge Services for an Exchange Server 2007 Environment : Utilizing the Basic Sender and Recipient Connection Filters (part 2)
- Implementing Edge Services for an Exchange Server 2007 Environment : Utilizing the Basic Sender and Recipient Connection Filters (part 1)
- Implementing Edge Services for an Exchange Server 2007 Environment : Installing and Configuring the Edge Transport Server Components
- What's New in SharePoint 2013 (part 7) - BCS
- What's New in SharePoint 2013 (part 6) - SEARCH
- What's New in SharePoint 2013 (part 6) - WEB CONTENT MANAGEMENT
- What's New in SharePoint 2013 (part 5) - ENTERPRISE CONTENT MANAGEMENT
- What's New in SharePoint 2013 (part 4) - WORKFLOWS
- What's New in SharePoint 2013 (part 3) - REMOTE EVENTS