SlideShare a Scribd company logo
Windows Azure Platform Wade Wegner Architect Evangelist Microsoft Corporation http://blog.wadewegner.com/ http://twitter.com/WadeWegner
About Me Originally from Illinois, but spent the last 10 years living in Colorado Prior to Microsoft, I worked as a consultant for about 10 years My background is in custom application development and application integration I wrote a book on Commerce Server that sold less than 40 copies I <3 the cloud
 
 
Windows Azure is a place to run your applications.
Windows Azure is a  cloud   computing platform, so it’s designed to scale.
Windows Azure is a  utility  computing platform, so you pay for what you use.
Inside are many servers.
with VMs running Windows.
We call this the Fabric,
and it’s where your app runs.
Management tasks are automated by the  Fabric Controller .
You tell the Fabric Controller  what  to do, and it figures out  how  to do it.
For this to work, you need to tell us about your application.
DEMO Building an MVC Application on Windows Azure
Web Role Receives internet traffic Hosted by IIS Typically ASP.NET Partial and full trust
How Azure Helped the City of Chicago
Worker Role Doesn’t receive internet traffic Runs forever .NET assembly Partial and full trust
Storage is just another app.
Durable Storage Three abstractions: Three replicas of everything Shared key authentication REST API Blobs Tables … Queues
Blobs Like files Up to 50GB each 8KB metadata each Stored in containers Public or private access at container level
Tables Entities with properties Non-relational Partitioned for scale No fixed schema ADO.NET Data Services
Queues Asynchronous message passing 8KB messages Two-phase commit …
Putting it All Together Web role Web role Worker role Worker role Web role Storage Worker role LB
DEMO Using Worker Roles and Azure Storage
 
SQL Azure database is a  relational  database in the cloud.
Applications access SQL Azure via  TDS , just like on-premises SQL Server.
ADO.NET  continues to work, just update the connection string.
Your data resides on  three or more  database servers.
Data is kept  secure  through physical, network, protocol, and authentication security models.
Logical User Databases Uses shared infrastructure at SQL database and below Each user database is replicated to one or more servers (configurable based on SLA) Client requests are routed to current “primary server” for read and write operations Security, lockdown and isolation enforced in SQL tier Highly scalable and state-of-the-art high availability technology Automatic failure detection; client request re-routed to new primary on failure  High SLA guarantee using logical replication (hot standby replicas) Automatic management, self-healing and load balancing across shared resource pool SQL Azure Database provides provisioning, metering and billing infrastructure DBA role will change to focus on policy/logical management Machine 5 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Scalability and Availability: Fabric, Failover, Replication, and  Load balancing SQL Azure Database Provisioning (databases,  accounts,  roles, …, metering, and billing Machine 6 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Machine 4 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Scalability and Availability: Fabric, Failover, Replication, and  Load balancing
Compatibility with SQL Server SQL Server patterns for accomplishing tasks SQL Azure supports a subset of SQL Server patterns Focus on logical and policy based administration Patterns work in both SQL Azure & SQL Server SQL Azure Database is a multi-tenant service Throttling and load balancing policies
SQL Azure v1 V1 Goal:  Address the needs of 95% or more web and departmental applications In Scope for v1 Create/Alter/Drop on Database/Index/View Stored Procedures (Transact-SQL) Triggers Constraints Table variables, session temp tables (#t) BCP + lots of others Out of Scope for v1 CLR Service Broker Distributed Transactions Distributed Query Spatial All server level DDL All physical DDL and physical catalog views
DEMO Creating and querying a database on SQL Azure
Key Takeaways for SQL Azure SQL Azure Database is  real  and  in production  with Microsoft enterprise services We are accelerating delivery of relational database service – PDC ‘09 Ecosystem of tools; existing skills and knowledge Majority of web and workgroup apps work as-is Support for open source client libraries Integration between on/off-premises: Extending SQL data platform to the cloud Relational database is a key capability of the Windows Azure Platform Zero-friction integration with Windows Azure Enables compelling scenarios on the Azure platform SQL Azure design and architecture supports a wide range of scenarios SQL Azure Database platform investments deliver proven value on top of SQL engine  From very cheap and highly-consolidated to still inexpensive and highly-isolated
DEMO Updating an on-premises application to use SQL Azure
 
.NET Services Integrate on-premises apps with the cloud Securely connect through firewall  and network boundaries Control permissions to your apps and services Reuse existing user accounts across applications Interoperable with SDKs for Ruby and Java
.NET Service Bus On-Premise Business Apps Partner Applications Community & Internet Services Service Bus
How WCF Listeners Work http://myapp.servicebus.windows.net/a/b/ Backend Naming Routing Fabric Frontend  Nodes 1 2 3 4 Service Bus Sender Receiver Ctrl outbound  socket  connect outbound  socket  rendezvous Ctrl NLB
DEMO Echo, Echo, Echo, Echo …
RedPrairie & Supply Chains Software+Services model Extend the reach Secure communications
DEMO PHP running in Windows Azure using MySQL through the .NET Services Bus
Identity
How We Buy a Drink 2. Apply for an ID) 4. Create an ID) 5. Present ID Trust relationship 3. Accept birth certificate; validate identity 6. Check DOB State of Illinois Bartender You 1. Define rules for purchasing
The Access Control Pattern 2. Send token (Initial claims; e.g. identity) 4. Return token (output claims from 3) 5. Send token 0. Trust exchanged; secrets,  certs 3. Map input claims  to output claims based on  access control rules 6. Check Claims 7. Get response “ Geneva” Server STS Your App (Relying Party) User (Application) 1. Define access control rules
DEMO Passive Federation with “Geneva” server and Windows Azure
Windows Azure Purchasing Models
Service Level Agreements (SLAs) & Pricing SQL Azure 99.9% 1 GB = $9.99 / month 10 GB = $99.99 / month Bandwidth = $0.10 in / $0.15 out / GB Windows Azure Two or more role instances 99.95% Compute = $0.12 / hr Storage = $0.15 / GB stored / month Tx = $0.01 / 10K Bandwidth = $0.10 in / $0.15 out / GB .NET Services 99.9% Messages = $0.15 / 100K Bandwidth = $0.10 in / $0.15 out / GB
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

Day Of Cloud - Windows Azure Platform

  • 1. Windows Azure Platform Wade Wegner Architect Evangelist Microsoft Corporation http://blog.wadewegner.com/ http://twitter.com/WadeWegner
  • 2. About Me Originally from Illinois, but spent the last 10 years living in Colorado Prior to Microsoft, I worked as a consultant for about 10 years My background is in custom application development and application integration I wrote a book on Commerce Server that sold less than 40 copies I <3 the cloud
  • 3.  
  • 4.  
  • 5. Windows Azure is a place to run your applications.
  • 6. Windows Azure is a cloud computing platform, so it’s designed to scale.
  • 7. Windows Azure is a utility computing platform, so you pay for what you use.
  • 8. Inside are many servers.
  • 9. with VMs running Windows.
  • 10. We call this the Fabric,
  • 11. and it’s where your app runs.
  • 12. Management tasks are automated by the Fabric Controller .
  • 13. You tell the Fabric Controller what to do, and it figures out how to do it.
  • 14. For this to work, you need to tell us about your application.
  • 15. DEMO Building an MVC Application on Windows Azure
  • 16. Web Role Receives internet traffic Hosted by IIS Typically ASP.NET Partial and full trust
  • 17. How Azure Helped the City of Chicago
  • 18. Worker Role Doesn’t receive internet traffic Runs forever .NET assembly Partial and full trust
  • 19. Storage is just another app.
  • 20. Durable Storage Three abstractions: Three replicas of everything Shared key authentication REST API Blobs Tables … Queues
  • 21. Blobs Like files Up to 50GB each 8KB metadata each Stored in containers Public or private access at container level
  • 22. Tables Entities with properties Non-relational Partitioned for scale No fixed schema ADO.NET Data Services
  • 23. Queues Asynchronous message passing 8KB messages Two-phase commit …
  • 24. Putting it All Together Web role Web role Worker role Worker role Web role Storage Worker role LB
  • 25. DEMO Using Worker Roles and Azure Storage
  • 26.  
  • 27. SQL Azure database is a relational database in the cloud.
  • 28. Applications access SQL Azure via TDS , just like on-premises SQL Server.
  • 29. ADO.NET continues to work, just update the connection string.
  • 30. Your data resides on three or more database servers.
  • 31. Data is kept secure through physical, network, protocol, and authentication security models.
  • 32. Logical User Databases Uses shared infrastructure at SQL database and below Each user database is replicated to one or more servers (configurable based on SLA) Client requests are routed to current “primary server” for read and write operations Security, lockdown and isolation enforced in SQL tier Highly scalable and state-of-the-art high availability technology Automatic failure detection; client request re-routed to new primary on failure High SLA guarantee using logical replication (hot standby replicas) Automatic management, self-healing and load balancing across shared resource pool SQL Azure Database provides provisioning, metering and billing infrastructure DBA role will change to focus on policy/logical management Machine 5 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Scalability and Availability: Fabric, Failover, Replication, and Load balancing SQL Azure Database Provisioning (databases, accounts, roles, …, metering, and billing Machine 6 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Machine 4 SQL Instance SQL DB User DB1 User DB2 User DB3 User DB4 Scalability and Availability: Fabric, Failover, Replication, and Load balancing
  • 33. Compatibility with SQL Server SQL Server patterns for accomplishing tasks SQL Azure supports a subset of SQL Server patterns Focus on logical and policy based administration Patterns work in both SQL Azure & SQL Server SQL Azure Database is a multi-tenant service Throttling and load balancing policies
  • 34. SQL Azure v1 V1 Goal: Address the needs of 95% or more web and departmental applications In Scope for v1 Create/Alter/Drop on Database/Index/View Stored Procedures (Transact-SQL) Triggers Constraints Table variables, session temp tables (#t) BCP + lots of others Out of Scope for v1 CLR Service Broker Distributed Transactions Distributed Query Spatial All server level DDL All physical DDL and physical catalog views
  • 35. DEMO Creating and querying a database on SQL Azure
  • 36. Key Takeaways for SQL Azure SQL Azure Database is real and in production with Microsoft enterprise services We are accelerating delivery of relational database service – PDC ‘09 Ecosystem of tools; existing skills and knowledge Majority of web and workgroup apps work as-is Support for open source client libraries Integration between on/off-premises: Extending SQL data platform to the cloud Relational database is a key capability of the Windows Azure Platform Zero-friction integration with Windows Azure Enables compelling scenarios on the Azure platform SQL Azure design and architecture supports a wide range of scenarios SQL Azure Database platform investments deliver proven value on top of SQL engine From very cheap and highly-consolidated to still inexpensive and highly-isolated
  • 37. DEMO Updating an on-premises application to use SQL Azure
  • 38.  
  • 39. .NET Services Integrate on-premises apps with the cloud Securely connect through firewall and network boundaries Control permissions to your apps and services Reuse existing user accounts across applications Interoperable with SDKs for Ruby and Java
  • 40. .NET Service Bus On-Premise Business Apps Partner Applications Community & Internet Services Service Bus
  • 41. How WCF Listeners Work http://myapp.servicebus.windows.net/a/b/ Backend Naming Routing Fabric Frontend Nodes 1 2 3 4 Service Bus Sender Receiver Ctrl outbound socket connect outbound socket rendezvous Ctrl NLB
  • 42. DEMO Echo, Echo, Echo, Echo …
  • 43. RedPrairie & Supply Chains Software+Services model Extend the reach Secure communications
  • 44. DEMO PHP running in Windows Azure using MySQL through the .NET Services Bus
  • 46. How We Buy a Drink 2. Apply for an ID) 4. Create an ID) 5. Present ID Trust relationship 3. Accept birth certificate; validate identity 6. Check DOB State of Illinois Bartender You 1. Define rules for purchasing
  • 47. The Access Control Pattern 2. Send token (Initial claims; e.g. identity) 4. Return token (output claims from 3) 5. Send token 0. Trust exchanged; secrets, certs 3. Map input claims to output claims based on access control rules 6. Check Claims 7. Get response “ Geneva” Server STS Your App (Relying Party) User (Application) 1. Define access control rules
  • 48. DEMO Passive Federation with “Geneva” server and Windows Azure
  • 50. Service Level Agreements (SLAs) & Pricing SQL Azure 99.9% 1 GB = $9.99 / month 10 GB = $99.99 / month Bandwidth = $0.10 in / $0.15 out / GB Windows Azure Two or more role instances 99.95% Compute = $0.12 / hr Storage = $0.15 / GB stored / month Tx = $0.01 / 10K Bandwidth = $0.10 in / $0.15 out / GB .NET Services 99.9% Messages = $0.15 / 100K Bandwidth = $0.10 in / $0.15 out / GB
  • 51. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.