Docstoc

Windows Azure Platform (PDF)

Document Sample
Windows Azure Platform (PDF) Powered By Docstoc
					Microsoft Public Cloud
Windows Azure Platform
Luka Debeljak
CEE Windows Azure Lead
http://blogs.msdn.com/lukad
Challenges Facing Pro Developers Today
                                                      Typical   Ideal


        Developing New Applications
        •   Designing New Applications                  3        1
        •   Rewriting Apps for New Platforms


        Enhancing Existing Applications
        •   Adjusting for Business Priority Changes     2        2
        •   Adding ‘Cut Features’


        Deployment and Maintenance
        •   Deployment and Configuration                1        3
        •   System Compatibility/Updates
 PaaS and Where it Fits in Taxonomy of Cloud Services

                                            Infrastructure                                       Platform                             Software
             (On-Premises)                   (as a Service)                                    (as a Service)                       (as a Service)




                                                              You Manage
              Applications                   Applications                                       Applications                         Applications

                  Data                           Data                                              Data                                 Data

                Runtime        You Manage      Runtime                                            Runtime                              Runtime




                                                                                                                                                     Managed By Vendor
              Middleware                      Middleware                                        Middleware                           Middleware
You Manage




                                                                                                                Managed By Vendor
                  O/S                            O/S                                                O/S                                  O/S




                                                                           Managed By Vendor
              Virtualization                 Virtualization                                    Virtualization                       Virtualization

                 Servers                        Servers                                           Servers                              Servers

                Storage                         Storage                                           Storage                              Storage

              Networking                      Networking                                        Networking                           Networking
The Microsoft Application Platform
                                                Developer Experience




                                                Applications / Services


                                                     Middle Tier


                                                      Database


                                                    Infrastructure

     Server Platform                                                         Server Platform




   Private Cloud Customer or Service Provider                             Public Cloud Microsoft
   Evaluating Your Apps For The Cloud
                                                                            Questions To Consider

                                                                             Application State

                                                                             Application Scale

                                                                             App Dependencies

                                                                             Latency Requirements

                                                                             Data Sensitivity

                                                                             SLA Requirements
                                                                             Regulation &
                                                                              Compliance


Some Easy Cases                          e.g. Website sharing public data


Often, Forklift Approach Will Not Work   Careful decomposition needed
Introducing the Windows Azure Platform
The Windows Azure Platform Provides Solutions with:
   •   Platform Abstraction
   •   High Availability
   •   Scalability
   •   Familiar Developer Experience, Regardless of Runtime
                                            Developer Experience




   •   Compute                                                     •   Database
   •   Storage                                                     •   Reporting
   •   CDN                             •   Service Bus             •   Data Sync
   •   MarketPlace                     •   Access Control
   •   Virtual Network                 •   Caching


                                                                                   7
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                           •   Service Bus
   •   MarketPlace                   •   Access Control
   •   Virtual Network               •   Caching


                                                   Web Role
 Compute provides availability and                 • Uses IIS to Host Web Apps
 scalability to the application.                   • Runs ASP.NET, WCF, PHP, etc.
 Developers can build services
 using a combination of Windows                    Worker Role
 Azure roles. These roles can be                   • Used for Generalized Development
 replicated as needed to scale the                 • Can host 3rd-party servers (Tomcat, MySQL, etc.)
 application and computational
 processing power.                                 Virtual Machine (VM) Role
                                                   • Runs a Windows Server 2003/2008 R2 VHD
                                                   • Makes it Easier to Move Existing Applications to Azure
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                           •   Service Bus
   •   MarketPlace                   •   Access Control
   •   Virtual Network               •   Caching


                                                   Web Role
 Compute provides availability and                 • Uses IIS to host web apps
 scalability to the application.                   • Runs ASP.NET, WCF, PHP, etc.
 Developers can build services
 using a combination of Windows                    The Fabric Controller provides automated load
 Azure roles. These roles can be                   balancing and compute resource scaling for your
 replicated as needed to scale the                 Windows Azure application
 application and computational
 processing power.                                 Virtual Machine (VM) Role
                                                   • Runs a Windows Server 2008 R2 VHD
                                                   • Makes it easier to move existing applications to Azure
Windows Azure:
Fabric Controller and Resource Management
1.   Instantiates and Loads
     Instances Using the
     Application’s Configuration

2.   Provides DNS Information
     to the Data Center DNS
     Servers for Load Balancing

3.   Monitors Your
     Application’s Role
     Instances for Failure and
     Starts New Instances

4.   As Needed, Can Scale
     Instances Up or Down
                                   DNS




                                                       Resource Pool
5.   Can Also Deploy                     Application
     Application Updates to
     Staging Servers and
                                          Service(s)
     make them live.
                                                       FABRIC CONTROLLER   DEVELOPER PORTAL
                                           Model
Designing Applications for Windows Azure

                   To Receive the Availability and Scalability Benefits that
                   Windows Azure Provides, an Application Must Follow
  •   Compute
                   Three Rules:
  •   Storage
  •   CDN
  •   Management
                    1. A Windows Azure Application is Built from One or More
                       Roles
                    2. A Windows Azure Application Runs Multiple Instances
                       of Each Role
                    3. A Windows Azure Application Behaves Correctly When
                       Any Role Instance Fails
DEMO

Windows Azure Application
Windows Azure RDP


                            14
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                                •   Service Bus
   •   MarketPlace                        •   Access Control
   •   Virtual Network                    •   Caching


                                      Windows Azure Tables           Windows Azure Queues
 Storage Services allow customers     •   Entity Data Store          • Read at Least Once
 to scale to store large amounts of   •   Partitioned by Key         • Delete to Remove Message,
 data – in any format – for any       •   Unlimited Keys               Otherwise is Returned to Queue
                                      •   Not a RDBMS                • Partitioned by Queue Name
 length of time, only paying for
 what they use or store

                                      Windows Azure Blobs            Windows Azure Drives
                                      •   Blob Storage               • Access Method for Blob Storage
                                      •   Partitioned by Container   • Mounts a Blob as an NTFS Drive
                                      •   Unlimited Containers       • One Write Mount; Many Read
                                      •   CDN Capable                  Mounts
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                            •   Service Bus
   •   MarketPlace                    •   Access Control
   •   Virtual Network                •   Caching



 CDN offers a global solution for   Windows Azure Content Delivery Network (CDN)
 delivering high-bandwidth          • Caches BLOBs at Strategically Placed Locations
 content from nodes closest to      • Provides Maximum Bandwidth for Delivering Content to
 end-users                            Users Over HTTP
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                               •   Service Bus
   •   MarketPlace                       •   Access Control
   •   Virtual Network                   •   Caching



 MarketPlace provides a single       Windows Azure MarketPlace
 consistent marketplace and          •   Data, Imagery, and Real-Time Web Services
 delivery channel for high quality   •   Commercial Data Providers
 information, applications and       •   Authoritative Public Data Sources
                                     •   Consumed from Apps and Productivity Tools
 building block components that      •   Applications, Services and Building Block Components
 simplify the process of building
 Windows Azure applications
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                             •   Service Bus
   •   MarketPlace                     •   Access Control
   •   Virtual Network                 •   Caching



 Virtual Network enables             Windows Azure Virtual
 seamless, secure IP-level network   Network
 connectivity between Windows
 Azure and on-premises resources     • Access to Windows Azure
                                       Role Instances
                                     • Domain-Join Windows Azure
                                       Roles
                                     • Direct Corpnet Access from
                                                                    Enterprise
                                       Windows Azure Roles
DEMO

Windows Azure Connect
Windows Azure MarketPlace



                            19
Introducing Windows Azure

   •   Compute
   •   Storage
   •   CDN                          •   Service Bus
   •   MarketPlace                  •   Access Control
   •   Virtual Network              •   Caching



 AppFabric provides a             Windows Azure AppFabric
 comprehensive cloud middleware   • Interoperate with a Variety of Languages and Industry Standards
 platform and services for        • Simplify User Access and Authorization Across Organizations and ID Providers
 developing, deploying and        • Locate and Connect, Using Cloud-Based Endpoints,
                                    to Cloud Services, Hosted Assets, and On-Premises Applications
 managing applications on the
 Windows Azure Platform           • Service Bus Provides Cloud Connectivity Capabilities to Navigate
                                    Firewall Boundaries
                                  • Access Control is a Federated Authorization Management Service
                                  • Caching is a Distributed, In-Memory Cache that Reduces Data Retrieval Trips
Challenges Crossing Organizational
Boundaries

                              Branches    Partner




                                         Cloud App
    AppFabric Service Bus Solves Cloud
    Connectivity

• Easily Locate and Connect
  Cloud services, hosted assets and on-premises applications


• Navigate Firewall Boundaries
  Securely and simply


• Interoperate
  Supports a variety of languages and industry standards
       How It Works
                                     Service Bus




Send              Receive                                        Receive               Send




   App One                                                                       App Two
              • Traverse NAT/Firewall – Each App Initiates Outbound Connection
              • Exchange Messages Between Loosely Coupled Applications
              • Support for a Variety of Messaging Patterns
              • Message Buffering for Loosely Connected Applications
Identity Changes




                                                                                       Cloud App




                     •   User – Doesn’t Want to Use Different Identity for Every App
                     •   Developer – Doesn’t Want to Write Code to Support Multiple Identity Providers
  Active Directory
                     •   Administrator – Wants to Easily Grant Access to Apps to Active Directory Identities
 AppFabric Access Control

What It Is:
• Claims-based, federated authorization management service

What It Does:
• Simplify user access authorization across organizations and ID
  providers
• Perform claims transformation to map identities with access levels

Use It To:
• Secure web services
• Secure web applications
• Secure AppFabric Service Bus and caching communications
A Primer on Claims



             ?                                    Externalizes
                                                Authentication




                                 ?
                                      !
             Gets user info from the document
How it Works
                                     3. Map input claims
                                     to output claims based on
                                     access control rules

    1. Define access control rules

                                        Access Control

             0. Establish trust
             via key exchange



6. Process
token




     Your Service                       5. Send message          Customer
                                        with token
Identity Changes



       ADFS
        2.0

                                                                                 AC




                     •   User – Can Use His Preferred Identity Provider
                     •   Developer – Writes One Set of Code to Accommodate Multiple Identity Providers
                     •   Administrator – Grants Access to All Active Directory Users by Establishing Trust
  Active Directory
                         Between Active Directory and Access Control
                     Caching clients can
                     be across machines
                        or processes


                     Clients Access the
                     Cache as if it was a
                     large single cache
Unified Cache View
                        Cache Layer
                      distributes data
                     across the various
                        cache nodes
Introducing Windows SQL Azure

    •   Database
    •   Reporting
    •   Data Sync




 SQL Azure delivers cloud             SQL Azure Data Platform That:
 database services which enable       •   Provides Relational Database and Data Sync Services as a Service
 you to focus on your application,    •   Maintains the Familiar SQL Server Capabilities
 instead of building, administering   •   Supports Existing Apis and Tools
                                      •   Provisions Databases Without Managing Data Infrastructure
 and maintaining databases.           •   Provides High Availability and Scalability for Your Data

                                      • Database for Storing and Accessing Your Relational Data in the Cloud
                                      • Reporting Provides Reporting Capabilities in the Cloud
                                      • Data Sync is a Tool for Synchronizing Your Data Between Servers (SQL Server or SQL
                                        Azure)
SQL Azure Database

    Focus on Your Application, Instead of Building, Administering and Maintaining Databases


      Single Logical     Multiple Physical
        Database             Replicas




                          Replica 1
    Single Primary
                          Replica 2




          DB

                                                 • Distributed “scale-out” database service
                                                 • Abstracts OS and hardware management
                                                 • Low-friction provisioning, multi-tenant
                          Replica 3




 Multiple Secondaries                            • Automatic high-availability and data replication
                                                 • Pay-as-you-go and commitment offers
SQL Azure Reporting

Deliver Rich Insights Using Familiar Tools Without Building and Managing a Reporting Platform in House


                                                              Key Features
                                                                     • Based on SQL server reporting services
                                                                        • Interactive and tabular reporting
                                                                        • Data visualizations: charts, graphs,
                                                                          mapping, gauges
              Web Role                       Reporting               • SQL Azure database data sources
                                                                     • Utilizes BI developer studio (free) to
                                                                       author reports
                                                                     • Export to Excel, PDF, CSV formats


                                                              Core Scenarios
                                                                     • Operational reporting on SQL Azure data
                                                                     • Embed reports into Windows Azure or
                                                                       on-premises applications
SQL Azure Data Sync

               Synchronize Data Between the Cloud and On-Premises Sources

 June CTP 1
                                                      Sync Data from On-Premises to Cloud
                                                      • Span data from enterprise to cloud
                                                      • Build offline cached experiences
                                                      • Sync with branch offices and mobile devices

              Nov CTP 2
                                                      Sync Between SQL Azure Databases
                                                      • Geo-Replication, read/write scale out


                                                      No-Code Synchronization of Data
                                                      • Easily define data to be synchronized without coding
                                                      • Choose how often data is synchronized
                                                      • Handle issues where same data is changed in multiple
                                                        locations
                                                      • Administration capabilities for tracking data and
                                                        monitoring potential issues
DEMO
SQL Azure




            38
What about the .NET Developer Experience?
                                           Developer Experience




 • Windows Azure Tools for Microsoft Visual Studio
   Extend Visual Studio 2010 and 2008
     •   Support for .NET 3.5 and .NET 4
     •   Templates for C# and VB.NET
     •   IntelliTrace support
     •   Cloud Storage Explorer

 • Local Development Fabric and Development Storage
   Services

 • Support to Add, Remove and Configure Azure Roles

 • Integrated Packaging and Deployment
What about the Java Developer Experience?
                                            Developer Experience




                                                                                           Windows Azure SDK for Java

   •   Compute                                                                                •     Blobs
   •   Storage                                                                                •     Tables




                                                                                    Rest
   •   CDN                                  •   Service Bus                                   •     Queues
   •   MarketPlace                          •   Access Control
   •   Virtual Network                      •   Caching
                                                                                                  Your Java Application
                          Windows Azure Eclipse Plug-In
                              • Java Project Settings and Deployment

                          Windows Azure SDK for Java
                              • Java Classes for Windows Azure Blob, Tables and Queues
                              • Used in Azure Tools for Eclipse for Storage Explorer

                         Cross-Platform SDKs for Windows Azure AppFabric
What about the PHP Developer Experience?
                                                   Developer Experience




                                                                                                    Windows Azure SDK for PHP

   •   Compute                                                                                          •   Blobs, Tables, Queues
   •   Storage




                                                                                            Rest
                                                                                                        •   Manageability,
   •   CDN                                         •   Service Bus                                          Instrumentation,
   •   MarketPlace                                 •   Access Control                                       Logging

   •   Virtual Network                             •   Caching                                          •   Helper for Http, Auth,
                                                                                                            REST, Error
             Windows Azure SDK for PHP
             •   Contributed to Zend Framework                                                           Your PHP Application
             •   PHP Classes for Windows Azure Blobs, Tables and Queues
             •   Helper Classes for HTTP Transport, Authentication/Authorization, REST and Error Management
             •   Manageability, Instrumentation and Logging Support

             Windows Azure Command-Line Tools for PHP

             Cross-Platform SDKs for Windows Azure AppFabric
Apps That Benefit from Windows Azure
                   Scale-Out Web Applications                Scale-Out Compute




 Departmental Applications         Marketing or Social Applications              SaaS Applications
43

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:21
posted:3/26/2012
language:English
pages:38