Session Review - Windows Azure In Depth

Simon Davies ( World Wide Technical Support Professional @ Microsoft )

Windows Azure Overview

  • Is “An Operating System for the Data Center”
    • Treat the data center as a machine
  • Compute
    • Virtualized compute environment based o Windows Server
  • Storage
    • Durable (Automatically Managed by Microsoft. Always have 3 copies for Disaster Recovery purposes)
    • Scalable
    • High Availability
  • Network
    • Automated network provision and management
    • On Premise Connectivity
    • Global Content Delivery Network (CDN)
  • Management
    • Automated
    • Model Driven Management as a Service
    • Resources
    • Management
    • Provisioning
    • Monitoring
  • Allows Developers to think their app and data only

Windows Azure In Depth

  • Modeling Cloud Applications
    • A could app is typically made up of different components
      • Front End
      • Middle Tier
      • Backend storage
      • Multiple instances of each for scalability and availability
  • Windows Azure Service
    • Windows Azure Hosts “Services”
    • A service is
      • An isolated boundary
      • A set of component roles, each within endpoints
      • At runtime numbered, identical instances of each role are created, each instance is a Virtual Machine
    • All of this specified declaratively in the service model and configured at runtime using a service configuration
  • What is a role?
    • Definition
      • Role Name
      • Role Type
      • VM Size
      • Network Endpoints
    • Code
      • Web/Worker: Hosted DLL and other executable
      • VM Role: VHD
    • Configuration
      • Number of instances
      • Number of update and fault domains
    • Example:
      • Front-End Role
        • Definition
          • Type: Web
          • VM Size: Small
          • Endpoints: External 1
        • Configuration
          • Instances:2
          • Update Domains: 2
          • Fault Domains: 2
  • Service Model Files
    • Service Definition in in ServiceDefinition.csdef (Definition Part of the Role)
    • Service Configuration is in ServiceConfiguration.cscfg (Configuration Part of the Role)
    • CSPack, program that exists in the SDK, will zips a service binary into a package (Code Part of the Role)
  • Compute Runtime Environment
    • Fabric Controller talks to the Fabric Agent in order to configure and run the App
    • Fabric Agent runs inside the Host OS and talks with the Windows Azure Agend in order to manage their configurations
    • Each instance runs inside a Guest OS managed by the Host OS and is composed by
      • Windows Azure Agent
      • Windows Azure Compute
      • YOUR APP
  • Service Isolation
    • Your Services are isolated from other services
  • The Fabric Controller
    • The “kernel” of the cloud operating system
      • Manages datacenter hardware
      • Manages Windows Azure Services
    • Some of the  main responsibilities
      • Datacenter resource allocation
      • Datacenter resource provisioning
  • Managing Availability
    • Upgrade Domains
      • Default and Max Fault Domain is 5
      • Vertical concept
    • Fault Domains
      • Default 2 Fault Domains
  • Provisioning a role instance
    • 3 VHDs are created
      • Guest OS Image (D:\)
      • Resource VHD (C:\)
      • Role VHD (E:\ or the next available letter) = contains the package we deployed
  • Fabric Controller Security
    • The VM is the security boundary upon which Windows Azure security is based
      • the host OS and FC agent are trusted
      • The guest agent is untrusted
  • Updating the OS
    • Initiated by Windows Azure Team
    • Goal: update all machines as quickly as possible
    • Constraint: must not violate the SLA and so we need at least 2 instances in order not to have a outage of the service

No Comments