Windows Azure June 2012 Release for Developers & Architects Mario

58 Slides5.70 MB

Windows Azure June 2012 Release for Developers & Architects Mario Szpuszta Platform Strategy Advisor, EMEA Windows Azure Incubation Microsoft Corporation

Cloud Computing Services-based Run applications Provide services Like a utility Similar to power Characteristics Elastic / dynamic Scalable Measured (pay-per-use)

Cloud Computing – What‘s different? Higher level of abstraction No knowledge about technology infrastructure High degree of management-automation Virtualized, shared environment Dynamic control of how much to use when Cost-efficient due to sharing with others Scalable & reliable Leverage existing assets of large vendors

Characteristics of Cloud Computing On-demand delivery Shared pool of Resources off Measured Service / Pay-per-Use Elactisity Compute Broad Network Access Average Usage Time off on

Compute Compute Inactivity Period t On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to market can be cumbersome Growing Fast Successful services needs to grow/scale t Keeping up w/ growth is big IT challenge Cannot provision hardware fast enough Unpredictable Unexpected/unplanned peak in Bursting demand t Sudden spike impacts performance Can’t over provision for extreme cases Predictable Bursting Compute Compute On and Off t Services with micro seasonality trends Peaks due to periodic increased demand IT complexity and wasted capacity Cloud Computin g Patterns

Why bother about Cloud Computing? Expand your reach Reduce your costs and efforts Focus on your business & strategy Faster and agile – more reactive to change Reduce risks by spreading load

Windows Azure new services in historical order

Windows Azure Client Layer (on-premise) From October 2009 (launch) – November 2010 (autumn 2010 release) PC Tablet Phone Browser Data Layer Applicati on Layer Integration Layer Office Add-in Drive Blobs Tables Service Bus (relay) Access Control Onpremise Database Web/Worker Compute Storage Games Console Onpremise Service Queues SQL Azure Database

Windows Azure Client Layer (on-premise) Spring 2011 release (Apirl – August) Integration Layer Office Add-in Tablet Drive *) Community Technology Preview Blobs Browser Tables Onpremise Database Service Bus (relay) Access Control Access 2.0 Control Data Sync (*) Reporting (*) Database Web/Worker Compute Storage Phone Connect (*) CDN Applicati on Layer Data Layer PC Games Console Onpremise Service Queues Caching SQL Azure

Windows Azure Detailed improvements from autumn 2010 and spring 2011 Startup-Tasks Certificate Management Full IIS in Web Roles Cloud-OS Version Selection RDP into Web/Worker VM Role (*) October 2009 – November 2010 Extra-Small Instances Android Toolkit for Azure iPhone Toolkit for Azure Windows Phone Toolkit for Azure April – August 2011

Windows Azure Market Place Office Add-in PC CDN Traffic Manager (*) Data Layer Applicati on Layer Integration Layer Client Layer (on-premise) Autumn 2011 release (Nov. / Dec. 2011) Tablet Connect (*) Drive *) Community Technology Preview Blobs Tables Browser Onpremise Database EAI/EDI (*) Service Bus Service (Bus relay queu e ) (relay) Access Control 2.0 Data Sync (*) HPC Hadoop (*) Web/Worker Compute Storage Phone Games Console Onpremise Service Queues Caching SQL Azure Reporting (*) Database

Windows Azure Detailed improvements autumn 2011 release Visual Studio Publishing Azure .NET Libraries Official Java SDK Cloud configurations in VS Profiling in the cloud Azure Storage Analytics Multiple Web Sites in Web Roles NuGet Integration Project validation in VS GEO Replication for BLOBs In-Place Upgrades Official PHP SDK Official node.js SDK Service Management API SQL Database Multiple Servers & CoAdmins SQL Database DAC support & import / export SQL Databse Federation s

Windows Azure – June 2012 Relase Overview Market Place Data Layer Applicati on Layer Integration Layer Client Layer (on-premise) June 2012 Release Office Add-in PC Tablet CDN Traffic Manager (*) Virtual Network (*) Media Services (*) Storage Drive *) Community Technology Preview Compute Blobs Tables Web Sites (*) Queues Phone Connect (*) Cloud Services Cache (service & dedicated( Caching *)) Browser Games Console Onpremise Service Onpremise Database EAI/EDI (*) Service Bus (relay queu e) AD(*) Access and Control Access 2.0 Control Data Sync (*) HPC Hadoop (*) Virtual Machines (*) SQL Azure Stream Insight (*) Reporting Database

A Continuous Offering From Private to Public Cloud Physical Virtual IaaS PaaS SaaS

What‘s in SDKs and Tools?

Visual Studio Tools Improvements Azure SDK side-by-side support IIS Express for local development Improved server explorer Direct RDP from Visual Studio Improved publishing (incl. simultaneous update) Visual Studio 2012 (RC) support

.NET SDK Developer Improvements CloudConfigurationManager class Better NuGet-integration Updating of references easier Better, clear structure of libraries Support for new networking functions UDP support Virtual network configurations Custom health-probes of load balancer Support for new „dedicated Cache“ & memcache

PHP SDK Improvements Windows Azure web sites support Improved client libraries (storage, runtime) PHP client libraries for service bus WebMatrix tooling integration http:// blogs.msdn.com/b/interoperabil ity/archive/2012/06/27/windows -azure-sdk-for-php-available-incl uding-support-for-service-bus.a spx Mac & Linux development support

Java SDK and Tools Improvements Eclipse Windows Azure deployment wizard Server configuration editor for Eclipse Instance Endpoint configuration through Eclipse Azure toolbar for Eclipse Azure Libraries for Java released JDBC Driver 4.0 for SQL Server part of libraries ACS Access Control Filter for Java web applications

New SDKs and SDK-previews

Understanding new service offerings

Spring 2012 new service offerings Virtual networking Virtual Machines Web Sites Virtual Networks Azure Active Directory Media Services Azure Active Directory Networking functionality in the cloud and across premises AD LDAP services incl. graph API and Access Control Service Dedicated Caching Dedicated caching Use your own instances for caching, synchronize caches through memcache

Spring 2012 new service offerings Virtual networking Virtual Machines Web Sites Virtual Networks Azure Active Directory Media Services Azure Active Directory Networking functionality in the cloud and across premises AD LDAP services incl. graph API and Access Control Service Dedicated Caching Dedicated caching Use your own instances for caching, synchronize caches through memcache

Overview: Existing Connectivity in Azure Input Endpoint foo.cloudapp.net VIP VIP:Input Endpoint LB Loadbalanced endpoint. Stable VIP per service. Single port per endpoint Supported protocols: HTTP, HTTPS, TCP Internal Endpoint Instance-to-instance communication Supported Protocols: TCP Port ranges supported Communication boundary Deployment boundary Name Resolution Internal Endpoint Windows Azure-provided DNS service for servicelevel name resolution

New Scenarios to support. Gaming and media streaming Monitoring and debugging cloud services Enterprise workloads through hybrid-cloud Geo-loadbalancing with traffic manager

Gaming and Media Streaming Media Streaming Default way of delivering media content is over UDP unicast streams UDP unicast traffic Gaming LB MMO Games need real-time communication Rendezvous point to connect to specific servers over the internet Requirements Inbound and outbound UDP unicast support Loadbalanced UDP traffic Direct connectivity to every instance behind loadbalancer UDP unicast traffic

Defining UDP Endpoints for PaaS Roles Service Definition Schema WorkerRole name "name1" enableNativeCodeExecution "true" vmsize "Small" Endpoints InputEndpoint name “MyUDPEP" protocol "udp" port “554"/ InternalEndpoint name “MyInternalEP" port “5000" protocol “udp" FixedPortRange min “5003" max “5050" / /InternalEndpoint /Endpoints /WorkerRole

Monitoring & Debugging Cloud Services Windows Azure Role Instances Monitoring Access to each role instance running in a cloud service for monitoring and diagnostics IN 1 IN 2 IN N L B Debugging Profiling information on application for developers Load Balanced Traffic Requirements Access to every role instance behind the loadbalancer WebClients Clients Web Internet Direct Connectivity to Individual Role Instances Monitoring / Debugging Service

Schema for Port Forwarding Service Definition Schema WebRole name “MyWebRole" enableNativeCodeExecution "false" vmsize "Small" Endpoints InstanceInputEndpoint name “MyMonitorPort" localPort “5000" protocol "tcp" AllocatePublicPortFrom FixedPortRange min “1001" max “1010" / /AllocatePublicPortFrom /InstanceInputEndpoint /Endpoints /WebRole

Enterprise Workloads in Windows Azure Run a multi-tier application in Windows Azure without having to modify the application Enable you to move services in a phased manner Complement investments made to support virtual machines Requirements High Availability Name resolution for inter-VM communication IP level communication between VMs in the same Cloud Service Support for hybrid scenarios (see next session – introducing Virtual Machines)

Loadbalancing Support for VMs LB Web / Worker Role Instance Web / Worker Role Instance Web / Worker Role Instance Role LB Web / Worker Role Instance Virtual Machine Virtual Machine

Custom Health Probes LB Azure Agent Role Status Customer Application VM LB Azure Agent Role Status Customer Application VM Your Application VM Your Application VM

Schema: Loadbalanced Sets and Probes Service Definition Schema ServiceDefinition name "name1" upgradeDomainCount "1" schemaVersion "unspecified" xmlns "http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" LoadBalancedEndpointSets LoadBalancedEndpointSet name “MyLBSet" protocol “tcp" port “5000" loadBalancerProbe “MyProbe" / /LoadBalancedEndpointSets LoadBalancerProbes LoadBalancerProbe name “MyProbe" protocol “tcp" port “5000" intervalInSeconds “10" timeoutInSeconds “21" / /LoadBalancerProbes WebRole name “MyWebRole" enableNativeCodeExecution "false" vmsize "Small" Endpoints InputEndpoint name “MyEP" protocol “tcp" port “5000" localPort "10000" loadBalancedEndpointSet “MyLBSet" loadBalancerProbe “MyProbe" / /Endpoints /WebRole

Azure-provided DNS TestVM1 10.1.1.1 Who is TestVM2? TestVM2 Who is TestVM2?

Azure-provided DNS Scenarios WINDOWS AZURE-PROVIDED DNS SCENARIOS A. Client-server applications using VMs SQL Reporting Service SQL Analysis Service Virtual Machine Virtual Machine SQL Service Virtual Machine B. Loadbalanced VMs with SQL backend IIS Server Web Site LB Internet IIS Server Web Role 2 IIS IIS Server Web Role 3 SQL Service PERSISTENT VM ROLE

Using your DNS service for name resolution Service Configuration Schema Role name “MyWebRole" vmName “MyWebVM" NetworkConfiguration Dns DnsServers DnsServer name “MyDNS" IPAddress “157.23.45.67" / /DnsServers /Dns /NetworkConfiguration Instances will be named MyWebVM0, MyWebVM1, Names provided at provisioning time are applied for virtualmachines. Hostnames can be changed by logging into VMs

Spring 2012 new service offerings Virtual networking Virtual Machines Web Sites Virtual Networks Networking functionality in the cloud and across premises Azure Active Directory Media Services Azure Active Directory Dedicated Caching AD LDAP services incl. graph API and Access Control Service Dedicated caching Use your own instances for caching, synchronize caches through

Windows Azure Active Directory!? Extension of Cloud Active Directory into the cloud Designed primarily to meet the needs of cloud applications Identity as a service: an essential part of Platform as app Azure AD Cloud app AD Cloud app

Problem Statement Cloud app Cloud app Separate username/password sign-in Manual or semi-automated provisioning No direct connection to directory Cloud app AD While enterprises working to consolidate identity system on-premises, cloud apps are fragmenting identity again

History of Azure Active Directory Exchange Online Active Directory revised to operate as Internet-scale multi-tenant identity service, built concurrently with Office 365 Extends Windows Server Active Directory into cloud SharePoint Online Lync Online Azure AD Provides cloud-based identity services for organizations without Windows Server AD AD

Identity Management as a Service Consolidate identity Office 365 management across cloud apps Connect to directory from any platform, any device Other MSFT Apps ISV App Azure AD Connect with people from web identity providers and other organizations AD ISV App Your Custom IT App

Relationship to Windows Server AD On-premises and cloud Active Directory managed as one Directory information synchronized to cloud, made available to cloud apps via roles-based access control Azure AD Sync and Federation Federated authentication enables single sign on to cloud applications AD

Spring 2012 new service offerings Virtual networking Virtual Machines Web Sites Virtual Networks Azure Active Directory Media Services Azure Active Directory Networking functionality in the cloud and across premises AD LDAP services incl. graph API and Access Control Service Dedicated Caching Dedicated caching Use your own instances for caching, synchronize caches through memcache

What is Windows Azure Caching? A distributed, in-memory, flexible cache for all data types that can be used to speed up Windows Azure applications and reduce Basically, caching database load. helps your app become faster. Windows Azure Caching

Flavors of in-memory caching from Microsoft on premise Microsoft AppFabric v1.1 for Windows Server Latest version released in Dec 2011 Windows Azure Shared Caching In production today cloud Windows Azure Caching (Preview) Introduced with Windows Azure SDK June 2012

Challenges with Azure’s Caching Better quota management What if there were no cache quotas at all? Service Relax the limits and warn me before I cross them Flexibility, control, isolation What if you had control over cache like Make the service less of a black box your app? Larger caches Lower cost How about hundreds of GB of cache? Give me caches bigger than 4GB What if you didn’t pay a premium for cache? Cache should be cheaper than 45/mo for 128MB No compromises with perf How about reducing latency by more than Hold the bar half?

Windows Azure Dedicated Caching New model of caching on Windows Azure where Cache is a part of your app Cache is deployed on regular web and worker roles Cache lives inside your cloud service Cache is scaled, managed and monitored just like your app

How is the new caching model different? 2. 4. 3. 1. Web Role \bin\plugins\Caching \bin\plugins\RemoteAccess \bin\runtimes\diagnostics Cache --Caching plugin imported on your \ref\CachingPreview application role(s) \ref\Microsoft.ServiceBus.dll --Web Role Worker Role http://myapplication.cloudapp.net Caching server bits delivered viarole the SDK Cache cluster lives inside your cloud servic Cache is added toare awith web/worker packaged app

Benefits of the new caching model No cache quotas or throttling Your application is the only consumer of cache. Use as much cache as your app needs, only limited by physical capacity. Isolation, Flexibility & Control Co-located and dedicated topologies allow you maximize your resources. You have as much control over cache as you do over your own application. Lower cost Pay no premium for cache. Pay only for the web/worker roles on which cache runs. In co-located, you’ve already paid for the role!

Benefits of the new caching model Easy to scale Scale cache just like you scale your app. Scale up, scale out, as often as you want. Bigger caches – 100 GB. Great development experience Integrated Visual Studio experience to make it easy to add cache to your app. Full fidelity devfabric experience for debugging your application before deployment. Support for memcache Support for the memcache binary and text protocols for easy migration of memcache-based applications to Windows Azure.

Benefits of the new caching model Feature rich - Named Caches Regions & Tags High Availability Local cache with notifications API symmetry with AppFabric Server Improved Performance The bread and butter of caching - latencies that are 4x faster than Windows Azure Shared Caching.

Windows Azure Caching (Preview) Dedicated deployment WebRole1 IN0 Add a new worker role dedicated for caching Scale cache independently of your app Pay only for the compute instance WebRole1 IN1 WebRole1 IN2 WorkerRole1 IN0 WorkerRole1 IN1 Cache CacheRole1 IN0CacheRole1 IN1 SQL Azure

Windows Azure Caching (Preview) Co-located deployment Use the spare resources on your existing instances for caching Scale cache with your app The compute resources have already been paid for Cache WebRole1 IN0 WebRole1 IN1 WebRole1 IN2 Cache WorkerRole1 IN0WorkerRole1 IN1 SQL Azure

Support for the memcache protocol Open and Flexible Windows Azure Caching (Preview) supports the memcache binary and text protocols and can be used with the dedicated and co-located deployments Bring your existing memcache-based application to Windows Azure! Existing .NET, Java, PHP, Node.js applications using memcache can migrate to Windows Azure easily with no changes to the caching code Better than memcached Take advantage of features like resiliency, local cache, Visual Studio and portal integration

Summary (Part #1)

Windows Azure – June 2012 Relase Overview Market Place Data Layer Applicati on Layer Integration Layer Client Layer (on-premise) June 2012 Release Office Add-in PC Tablet CDN Traffic Manager (*) Virtual Network (*) Media Services (*) Storage Drive *) Community Technology Preview Compute Blobs Tables Web Sites (*) Queues Phone Connect (*) Cloud Services Cache (service & dedicated( Caching *)) Browser Games Console Onpremise Service Onpremise Database EAI/EDI (*) Service Bus (relay queu e) AD(*) Access and Control Access 2.0 Control Data Sync (*) HPC Hadoop (*) Virtual Machines (*) SQL Azure Stream Insight (*) Reporting Database

A Continuous Offering From Private to Public Cloud Physical Virtual IaaS PaaS SaaS

Thank You!! http://blogs.msdn.com/mszcool

Back to top button