Dispelling the Haze The Windows Azure Platform About Brent Nearly 20 Years of IT Experience Mainframe to Mobile Manufacturing Fraud Prevention Financial Services Public Sector 10 years on Internet Solutions Brent.Stineman@us.sogeti.com Twitter: @BrentCodeMonkey Web: brentdacodemonkey.wordpress.com/ blogs.us.sogeti.com/ccdigest/ © Sogeti Microsoft MVP for the Windows Azure Platform Agenda What is Cloud Computing Industry Delivery Models & Patterns Microsoft’s View of the Cloud Windows Azure Platform Developer Experience Windows Azure Pricing Case Studies Questions Demo?? © Sogeti What is cloud computing © Sogeti What is Cloud Computing Cloud computing transforming things you care about into things you don’t care about • Computing power as a utility • Pay for what you use • Nearly infinite supply • Always there when you need it Compare to household utilities like water/power. © Sogeti What is Cloud Computing Competing Definitions • Gartner – service-based, scalable, elastic, shared, metered by use, and based on internet technologies • NIST – on demand self service, ubiquitous network access, location independent resource pooling, rapid elasticity, measured/metered service Cloud Computing vs. Virtualization Cloud Computing is a mechanism, an approach, for the delivery of services. Virtualization is one possible service that could be delivered. However, like most services, virtualization can be delivered via mechanisms other than cloud computing. © Sogeti The Cloud Dedicated Cloud Public Cloud Secure Cloud Federation Publish to Cloud or Enterprise Private Cloud International ENTERPRISE © Sogeti Some well known Players © Sogeti Common Cloud Computing Myths The Cloud is less Secure Multiple levels of security, highly restricted access, highest industry certifications. Security needs to be the #1 concern for providers and they know it. Cloud Computing will replace on-premises IT Not all applications are suited to the cloud. Hybrid scenarios will make up the bulk of early cloud adoption efforts. Cost is the only benefit to cloud computing Cost is a significant benefit, but not the only. Agility, flexiblity, speed to market can also be key factors in driving cloud adoption. Cloud Computing is JUST for production systems Virtualization got its start as a way to help speed up development and testing efforts. These areas can also benefit from cloud computing. My market vertical can’t use the cloud Finance, Healthcare, Manufacturing, Retail, Services… every business has needs that can benefit from cloud computing © Sogeti Industry Delivery Models SaaS Applications Runtimes SOA Integration Server Software Virtualization Server Hardware Storage Host Managed Databases Networking IaaS – Infrastructure as a Service • Virtualized infrastructure. No buying and installing new servers. Just “spin up” a new box and configure it as part of your virtual network. • Ex:- Windows Azure, Amazon EC2, RackSpace © Sogeti PaaS – Platform as a Service • Application Platform to develop and host your applications. • Ex:- Windows Azure, Google Apps, Force.com SaaS – Software as a Service • A consumable, complete service offered via the cloud. Usually targeting a specific vertical (CRM, eMail, HR, Document Management, storage). • Ex:- Gmail, Exchange Online, Salesforce.com When and why do I want to use it? © Sogeti Workload Patterns Optimal for Cloud “Growing Fast“ Compute Compute “On and Off “ Inactivity Period Time Time “Predictable Bursting“ Compute Compute “Unpredictable Bursting“ Average Usage Time © Sogeti Average Usage Usage Average Average Usage Time Workload Patterns Optimal for Cloud “Growing Fast“ “On and Off “ Compute Compute “On and Off “ Inactivity Period Average Usage Usage Time Inactivity Compute Average Period Time Usage Average Time Average Usage Time © Sogeti “Predictable Bursting“ Compute Compute “Unpredictable Bursting“ Average Usage Time Workload Patterns Optimal for Cloud “Growing Fast“ “Growing Fast“ Compute Compute “On and Off “ Inactivity Period Average Usage Time Compute Usage Average Time Average Usage Time Average Usage Time © Sogeti “Predictable Bursting“ Compute Compute “Unpredictable Bursting“ Average Usage Time Workload Patterns Optimal for Cloud “Growing Fast“ “Unpredictable Bursting“ Compute Compute “On and Off “ Inactivity Period Average Usage Time Compute Usage Average Time Average Usage Time Average Usage Time © Sogeti “Predictable Bursting“ Compute Compute “Unpredictable Bursting“ Average Usage Time Workload Patterns Optimal for Cloud “Growing Fast“ “Predictable Bursting“ Compute Compute “On and Off “ Inactivity Usage Average Time Compute Period Average Usage Time Average Usage Time Average Usage Time © Sogeti “Predictable Bursting“ Compute Compute “Unpredictable Bursting“ Average Usage Time Microsoft’s View of the Cloud Fundamentals Scale out Automated Service Management High Availability Considerations Location Infrastructure Business model Ownership Management © Sogeti Multi-tenancy © Sogeti How do I use Windows Azure? © Sogeti The Windows Azure Platform (IAAS and PAAS) © Sogeti Components of Windows Azure Trusted 3rd Party Active Directory Typical application as it exists today. Basic components, used in conjunction to deliver a LOB solution. How does this translate to Windows Azure? Data Importer External Data Files © Sogeti Temp Files Application Server Web App Console or Service External Flat Storage Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Applications (Compute) • Computing power • Memory • Connectivity Temp Files Application Server Web App Data Importer External Data Files © Sogeti Console or Service External Flat Storage Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Windows Azure Scalable and Managed Role based processes Dedicated, not shared 1.6ghz CPU, and 1.75gb of RAM per core • 250gb of local storage • • • • Local Storage Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role External Flat Storage Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Physical Server Windows AzureAzure Fabric Scalable Controller and Managed Role based processes Dedicated, not shared 1.6hgz CPU, and 1.75gb of RAM per core • 250gb of local storage • • • • Cloud Service Package & Configuration Windows Azure Azure VM External Fabric Agent Flat Storage Web Role Azure VM Data Importer External Data Files © Sogeti Azure VM Local Storage Agent Agent Worker Role Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Windows Azure Local Storage External Storage • Non-Relational • Network Shares • Inter-process Communication Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role External Flat Storage Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Windows Azure Azure Storage • • • • Non-Relational Entity Tables, Queues, Blobs Highly scalable Rest API Local Storage Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role Azure Storage Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Windows Azure Azure Storage • • • • Blobs Non-Relational Entity Tables, Queues, BlobsContainer Highly scalable Windows Rest API Azure Account Table Fabric Queue Data Importer External Data Files © Sogeti Web Role Worker Role Local BlobsStorage Entities EntitiesAzure Storage Messages Messages Relational Database Components of Windows Azure Trusted 3rd Party Active Directory Windows Azure Azure Storage Local Storage Security and Trusted Domains • Active Directory • Application User Stores • Firewall rules, VPN’s Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role Azure Storage Relational Database Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage Azure AppFabric • Access Control Service • WIF based • Multiple provider support • ADFS integration • Service Bus • Service Relay • Event Notification • Message Buffers • Protocol Tunneling Data Importer External Data Files © Sogeti Local Storage Windows Azure Fabric Web Role Worker Role Azure Storage Relational Database Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage Azure AppFabric • Access Control Service • WIF based • Multiple provider support • ADFS integration • Service Bus • Service Relay • Event Notification • Message Buffers • Protocol Tunneling Data Importer External Data Files © Sogeti Local Storage Windows Azure Fabric Web Role Worker Role Azure Storage Relational Database Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage Azure AppFabric • Access Control Service • WIF based • Multiple provider support • ADFS integration • Service Bus • Service Relay • Event Notification • Message Buffers • Protocol Tunneling Data Importer External Data Files © Sogeti Local Storage Windows Azure Fabric Web Role Worker Role Azure Storage Relational Database Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage Local Storage Azure AppFabric Relational DBMS • SQL Server • Vertically Scalable • Self Managed backup/recovery Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role Azure Storage Relational Database Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage • • • • Azure AppFabric SQL Azure SQL Server in the cloud Durable (multiple copies) Automatic Failover Project “Houston” – Silverlight UI Local Storage Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role Azure Storage SQL Azure Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage • • • • Azure AppFabric SQL Azure SQL Server in the cloud Durable (multiple copies) Automatic Failover Project “Houston” – Silverlight UI Local Storage Windows Azure Fabric Web Role Data Importer External Data Files © Sogeti Worker Role Azure Storage SQL Azure Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage Local Storage Azure AppFabric SQL Azure External Datasets • • • • Contain more info than needed Require ETL/Conversion Must be stored/updated Complex licensing Data Importer External Data Files © Sogeti Windows Azure Fabric Web Role Worker Role Azure Storage SQL Azure Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage • • • Azure AppFabric SQL Azure Azure Data Market Unified oData interface Pay for what you consume On-Demand availability Local Storage Windows Azure Fabric Web Role Data Market OData Feeds © Sogeti Worker Role Azure Storage SQL Azure Components of Windows Azure Access Control Service Service Bus Windows Azure Azure Storage • • • Azure AppFabric SQL Azure Project “Dallas” Unified oData interface Pay for what you consume On-Demand availability Local Storage Windows Azure Fabric Web Role “Dallas” OData Feeds © Sogeti Worker Role Azure Storage SQL Azure Components of Windows Azure Windows Azure Azure Storage Azure AppFabric SQL Azure Azure Data Market A collection of building blocks for robust solution development. Data Market OData Feeds © Sogeti Access Control Service Service Bus Local Storage Windows Azure Fabric Web Role Worker Role Azure Storage SQL Azure But why Windows Azure? © Sogeti The Windows Azure Platform - Developer Experience Leverage Existing Tools/Expertise • Visual Studio 2010/.NET • T-SQL • WCF © Sogeti The Windows Azure Platform - Developer Experience Leverage Existing Tools/Expertise • Visual Studio 2010/.NET • T-SQL • WCF Local Development Environment • Develop/Debug locally • Emulate deployed service environment © Sogeti The Windows Azure Platform - Developer Experience Leverage Existing Tools/Expertise • Visual Studio 2010/.NET • T-SQL • WCF Local Development Environment • Develop/Debug locally • Emulate deployed service environment Remote Service Management • Services can be setup in moments • PowerShell API for remote management • Various 3rd party tools available © Sogeti The Windows Azure Platform - Architectural Best Practices Instrumentation is Key • No remote debugging • Remote Monitoring/Debugging • Process Visibility © Sogeti The Windows Azure Platform - Architectural Best Practices Instrumentation is Key • No remote debugging • Remote Monitoring/Debugging • Process Visibility Abstract away external dependencies • Removes OS based dependencies • Increases flexibility/agility of applications © Sogeti The Windows Azure Platform - Architectural Best Practices Instrumentation is Key • No remote debugging • Remote Monitoring/Debugging • Process Visibility Abstract away external dependencies • Removes OS based dependencies • Increases flexibility/agility of applications Think scaling out, not up • Think beyond more cpu/ram • Return to parallel processing patterns • Dramatically increases scalability opportunities © Sogeti The Windows Azure Platform - Pricing Compute • $0.12/hr while deployed, regardless of level of usage • 1hr increments, rounded up like cell phone minutes © Sogeti The Windows Azure Platform - Pricing Compute • $0.12/hr while deployed, regardless of level of usage • 1hr increments, rounded up like cell phone minutes Bandwidth • $0.10/gb in, $0.15/gb out © Sogeti The Windows Azure Platform - Pricing Compute • $0.12/hr while deployed, regardless of level of usage • 1hr increments, rounded up like cell phone minutes Bandwidth • $0.10/gb in, $0.15/gb out Storage • Azure Storage - $0.15/gb /month • SQL Azure - $9.99/gb/month © Sogeti The Windows Azure Platform - Pricing Compute • $0.12/hr while deployed, regardless of level of usage • 1hr increments, rounded up like cell phone minutes Bandwidth • $0.10/gb in, $0.15/gb out Storage • Azure Storage - $0.15/gb /month • SQL Azure - $9.99/gb/month Transactions • Azure Storage - $0.01/ 10k • Access Control Service - $1.99/100k • Service Bus - $3.99-$1.99 / connection © Sogeti Resources Training/Education • Windows Azure Platform Training Kit – http://msdn.microsoft.com/en-us/gg271268 • Twin Cities Cloud Computing User Group – http://www.tccloud.com/ • Windows Azure BootCamp – Mankato – March 9-10, 8:30am-5pm – Bloomington – May 9-10, 8am-5pm Blogs • Windows Azure Team Blog – • http://blogs.msdn.com/b/???/ SQL Azure Team Blog – http://blogs.msdn.com/b/???/ • Azure AppFabric Team – http://blogs.msdn.com/b/windowsazureappfabric/ © Sogeti Questions © Sogeti Learning More As a Microsoft Gold Certified Partner, and Microsoft’s 2010 Global Enterprise Partner of the Year, we are able to take full advantage of our close and trusted relationship with Microsoft to validate our roadmap and build practical solutions give you a qualified place to start your own online services journey. Sogeti can provide training, pre-assessment, migration and online enhancement services to ensure that you maximize your Microsoft technology investment and move to the cloud cost effectively and with ease. Not even ready for the roadmap yet? Sogeti and Microsoft Co-authored a cloud strategy book titled: “Collaboration in the Cloud”. This book focuses on how and why you should build cloud strategy initiatives into your overall business plan. © Sogeti Contact Info Brent.Stineman@us.sogeti.com Twitter: @BrentCodeMonkey Web: brentdacodemonkey.wordpress.com/ blogs.us.sogeti.com/ccdigest/ Need your Feedback speakerrate.com/talks/5269 Microsoft MVP for the Windows Azure Platform © Sogeti