240 likes | 418 Views
Azure Services Platform. Piotr Zierhoffer. Agenda. Cloud? What is Azure? Environment Basic glossary Architecture Element description Deployment. What is a cloud?. You already know that, next slide please. What is a cloud?. What is a cloud?. Scenarios. Rapid growth
E N D
Azure Services Platform Piotr Zierhoffer
Agenda • Cloud? • What is Azure? • Environment • Basic glossary • Architecture • Element description • Deployment
What is a cloud? • You already know that, next slide please.
Scenarios • Rapid growth • Unpredictable usage • tickets, emergency systems, marketing • Predictable usage • e-commerce, test results • Temporary usage • events
Where is Azure? • „Host your webpages, deploy ready apps” – SaaS • manage nothing • „Host your applications” – PaaS • manage app and data • „Host your infrastructure” – IaaS (?) • manage app, data, middleware, OS… (!)
What is Azure? • Everything you will ever need • Windows Azure • Windows Azure Fabric • SQL Azure • Live Services • SharePoint Services • Dynamics CRM Services
Environment • Data Centers • More than 10 • Less than 100 • 2.3 * 109$ • 30000 engineers • $$$$$$$$$$$$
Basics • The world is based on .NET • or is it not? Java, Python, PHP, Ruby… • You need more power • You don’t need to know how does it work • Connect via WCF, SOAP, REST, … • Microsoft.WindowsAzure • Use PowerShell • Trust us!
Glossary • Role • app logic • Storage • queue, table, blob • Azure Drive • NTFS mounted to a role • up to 400 MB/s (+cache) • SQL Azure • replicas + load balancing
Glossary • Fabric • hardware abstraction • scaling, load balancing • AppFabric • access control and more • Management API • Diagnostic API
Web Role • Hosts web application • ASP.NET, ASP.NET MVC, WCF, FastCGI, … • IIS – full configuration in XML • automatic load balancing • user front-end
Worker Role • ~= console application • Run() ~= main() • may execute any code, host database, etc. • may work like a daemon process • usually contains process logic
AppFabric • PaaS level • integrates cloud apps with other apps • as for now – only Service Bus and Access Control
AppFabric • Access Control • Single Sign-On • Active Directory Federation Server • Windows Live ID, Google, Yahoo!, Facebook… • Service Bus • secure communication • hybrid topologies • different protocols • Cache • transparent for client, easy to manage, nonexistent
Storage • Table • no constant schema • scales over thousands of servers (partitioning key) • no relations, foreign keys, joins, aggregates • LINQ, REST API • indices on PK and RK • timestamp – optimistic concurrency + ETAG • entities up to 1MB, but they can have different properties • transactions within a partition
Storage • Blob • no structure, serialized data, video, pictures, … • Block Blob – streamed data • Up to 200GB/blob, 4MB blocks • Page Blob – random access • Up to 1TB/blob • Put, Get, Delete, Copy, Snapshot, Lease • properties • Drive • shared files, simple structure management • possible mounting of VHD with work environment • based on Page Blob
Storage • Queue • communication between roles, separation • almost FIFO, one way • almost – messages may be processed many times • so there is NO real order guarantee, possible starvation etc. • easy scaling • free data transfer from roles to queues! • up to 100TB, 8kB per message, saved for 7 days • timeouts
Deployment • Windows Azure • IntelliTrace • no debugging • Azure Development Storage/Fabric • 95% compatibility with Azure (90% of AF code) • local development • Separate configuration (no redeploying) • Deploy via Web, VisualStudio, PowerShell • Demo
Where to look? • http://blogs.technet.com/b/mkedziora • http://www.pzielinski.com • http://www.microsoft.com/windowsazure/Whitepapers • Programming Windows Azure: Programming the Microsoft Cloud • By Sriram Krishnan • http://channel9.msdn.com/Series/Azure-od-A-do-Z
Thank you • SQL Azure • Pricing • Advanced management