SlideShare uma empresa Scribd logo
1 de 102
24 June, 2011 Azure + Umbraco workshop
24 June, 2011 Azure + Umbraco workshop Who are we? Kurt Claeys Microsoft EMEA Technology Solution Professional Windows Azure kclaeys@microsoft.com http://twitter.com/kurtclaeys Wim De Coninck Orbit One, Development Team Lead wimdc@orbitone.com http://twitter.com/wimdc Olivier Mangelschots Orbit One, Managing Director olivier@orbitone.com http://twitter.com/omangels 2
24 June, 2011 Azure + Umbraco workshop Free workshop Sponsored by Microsoft Azure In collaboration with  Belgian Umbraco User Group (BUUG.be) Hosted by Orbit One 3
We are: Team of 18 Microsoft Gold Partner We build: Websites, Intranet, Portals, custom solutions We love: .NET, SharePoint, Dynamics CRM, Umbraco, Lync, New World of Work Orbit OneInternet Solutions Azure + Umbraco workshop 24 June, 2011 4
24 June, 2011 Azure + Umbraco workshop Umbracocertification training + exams Here in Ghent at OneOffice Level 1: When: 7 – 8 November 2011 Target audience: Designers / Webdevelopers Level 2: When: 9 – 10 November 2011 Target audience: .NET Developers 5
Azure + Umbraco workshop 24 June, 2011 We will make everything available: Slides Binaries/source code Documentation Check www.buug.be Downloads 6
24 June, 2011 Azure + Umbraco workshop Agenda 9:30 – 10:00 Introduction 10:00 – 11:00 Technical dive into Azure (part 1) Break 11:15 – 12:00 Technical dive into Azure (part 1) 12:00 – 12:45 Umbraco CMS and Azure Lunch 13:30  Azure Development Program13:45 – 16:30 Hands-on workshop We are a small group, let’s make it interactive! 7
24 June, 2011 Azure + Umbraco workshop Is your laptop prepped? This afternoon, you need: Visual Studio 2010 Windows Azure SDK + Tools for Visual Studio (March 2011) version 1.4 SQL Server 2008 Express R2 RegisteredAzure Account Links on http://www.buug.be/en/events 8
Technical dive into Azure Azure + Umbraco workshop 24 June, 2011 9
Who is familiar with? Load balancer (NLB) Round robin Sticky sessions 24 June, 2011 Azure + Umbraco workshop 10
Concept: Network load balancing (NLB) 24 June, 2011 Azure + Umbraco workshop 11
SOFTWARE PLATFORM INFRASTRUCTURE AS A SERVICE AS A SERVICE AS A SERVICE Journey to the Cloud
Windows Azure CLAEYS Kurt Technology Solution Professional Microsoft EMEA
Cloud ? What is cloud computing ? Offering infrastructure, platform and software as a service over the internet to a global market. Move on-premises management of non functional IT assets to a providor. Difference from traditional hostings Sold on demand “pay as you grow” Elastic scalability Service is fully managed by the providor End user centric (IW or developer) Strong focus on integration (cloud-cloud or cloud-on-premises)
Todays challenges percent of IT budgets is spent maintaining datacenter operations percent of datacenter capacity is idle on average  Infrastructure Complexity Infrastructure Utilization 70 85
Positioning AZURE infrastructure as a service (hardware) Servers available in the cloud platform as a service (developer)  Delivery of a OS for custom, cloud enabled apps Support for service hosting and interoperability  Relational data storage in the cloud  software as a service (end users) = BPOS Exchange online Sharepoint online Dynamics CRM online SAAS IAAS PAAS
Positioning AZURE infrastructure as a service (hardware) Servers available in the cloud platform as a service (developer)  Delivery of a OS for custom, cloud enabled apps Support for service hosting and interoperability  Relational data storage in the cloud  software as a service (end users) = BPOS Exchange online Sharepoint online Dynamics CRM online SAAS IAAS PAAS
IT as Service Private (On-Premise) Infrastructure (as a Service) Platform (as a Service) You manage Applications Applications Applications You manage Runtimes Runtimes Runtimes Security & Integration Security & Integration Security & Integration Managed by vendor You manage Databases Databases Databases Servers Servers Servers Managed by vendor Virtualization Virtualization Virtualization Server HW Server HW Server HW Storage Storage Storage Networking Networking Networking
Cloud Computing Taxonomy The Windows Azure platform fits here IaaS     Traditional IT SaaS PaaS You manage Applications Applications Applications Applications Data Data Data Data You manage Runtime 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
Classic IT Capacity problem. Allocated IT-capacities Load Forecast “Under-supply“ of capacities “Waste“ of capacities Fixed cost of IT-capacities IT CAPACITY Barrier for innovations ActualLoad TIME
Upfront investments
Capacity in a cloud model Load Forecast Allocated IT capacities No “under-supply“ IT CAPACITY Reduction of “over-supply“ Possible reduction of IT-capacities in case of reduced load Reduction of initial investments ActualLoad TIME
Rates Compute Per service hour of 1 CPU = 0,12 U$ Storage Per GB/month =0,15 U$ Transactions Per 10K = 0,01 U$  SQL Azure 10 GB/month = 99,99 U$ Access Control Transactions 10K = 0,01 U$ Service Bus Connections 1 connection/month = 3,99 U$ Data Transfer egress Per GB = 0,15 U$ Data Transfer ingress Per GB = FREE
Monthly Bill
Azure Pricing
“Growing Fast“   “On and Off “   Inactivity Period  Compute  Compute  Average Usage Usage Average Time  Time  On & off workloads (e.g. batch job) Over provisioned capacity is wasted  Time to market can be cumbersome  Successful services needs to grow/scale    Keeping up w/ growth is big IT challenge  Complex lead time for deployment “Unpredictable Bursting“   “Predictable Bursting“   Compute  Compute  Average Usage  Average Usage  Time  Time  Unexpected/unplanned peak in demand   Sudden spike impacts performance  Can’t over provision for extreme cases  Services with micro seasonality trends    Peaks due to periodic increased demand IT complexity and wasted capacity
The Windows Azure platform is a flexible cloud–computing platform that lets you focus on solving business problems and addressing customer needs.
Virtual Network Storage Compute Access Control Service Bus Caching Reporting Database Data Sync
Datacenters Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
Azure Fabric Controller Service Definition The Fabric Controller communicates with every server within the Fabric.  Interacts with a “Fabric Agent” on each machine Monitors every VM, application and instance Service Management is performed by the Fabric Controller  Performs load balancing, check pointing and recovery Fabric Controller Fabric X        X   X 
Traditional Architecture DB Web UITier Browser Business Logic Tier Request Request
Browser Browser DB Browser Business Logic Tier Web UITier Browser … Browser
Browser Browser DB Browser Web UITier Business Logic Tier Browser “Server Busy” … Browser
Browser Browser N L B Web Role DB Browser Business Logic Tier Web Role Browser Web Role … Browser
Browser Browser N L B Web Role N L B WorkerRole DB Browser Web Role WorkerRole Browser Web Role WorkerRole … Browser
Browser Browser N L B Web Role N L B WorkerRole DB Browser Web Role WorkerRole Browser Web Role WorkerRole … Browser Azure
Azure Architecture Windows Azure Service SQL Data Your Service Worker Service NL B Worker  Role SQL Internet SQL Your Storage SQL Queues NL B Web Site (ASPX, ASMX, WCF) Web Site (ASPX, ASMX, WCF) Web Role (ASPX, WCF) Tables Blobs
Azure Network Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
Azure Network Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
Azure Network Load Balancer webrole NLB Instance 1 Instance 2 “round robin” no sticky sessions ! Instance 3
Azure Roles Running apps in a virtual machine A virtual machine can have 1,2,4 or 8 cores We can have multiple instances of the VM running Two types Web Role = internet facing, IIS, request/response, ASP.NET or WCF Worker Role = background processing, endless loop, internal endpoints, can host WCF services
Azure Roles ,[object Object]
Hosting ASP.NET pages and/or WCF Services.
Handles incoming HTTP/HTTPS requests.
Public, Internet faced.
Has access to Storage Services.
WorkerRole
Code running in background, processing jobs.
‘Hidden’ processing power.
Similar to a batch job or Windows service.
Handles messages from a queue.
Has access to Storage Services.,[object Object]
Configuring Virtual Machines Size
Configuring the service Service configuration, maintainable after deploy Number of instances ConnectionString to Storage Thumbprints of certificates Custom setting Service definition, defined at deployment Size of VM Local storage capacity Endpoint External Internal
Azure VMRole Ability to upload your own customized WS2008R2 Enterprise images Full control over the OS image, install whatever you want on it. You can remote desktop into the OS Target scenarios Need to use apps/libraries with no unattended setup 32 bits apps Change registry settings Scale out ! Instances are behind loadbalancer, one public IP per service No durability of OS image on hardware failure With VM Role, the customer creates & maintains the OS Paying model = Paying model of current web/workerrole Uses differencing disks to upload deltas to image
Web/WorkerRole vs VMRole All three are virtual images running in the datacenter under control of the Azure fabric controller behind the loadbalancer. Web/Worker Role The virtual image is already there, ... you upload your app, ... Azure places this app on the image and runs the image. VM Role You upload the complete virtual image with all apps installed, ... Azure runs the image Visual Studio virtual image virtual image virtual image app app app Azure Azure app development environment development environment Hyper-V
VMRole lifecycle Create a .vhd in Hyper-V manager, install W2008 R2 as OS Install whatever roles, features and apps you want on it. Turn of automatics updates Install Windows Azure VM Role Integration Components Run sysprep.exe and bring it down Upload the .vhd to Azure (needs a certificate) Deploy a service configuration (Visual Studio, Managament Portal or Management API PS commandlets)
Azure Virtual Network Aka as “Azure Connect” Secure network connectivity between on-premises and cloud, supports standard IP protocols Automatic setup of secure IP-level network Example use cases: Enterprise app migrated to Windows Azure that requires access to on-premise SQL Server Windows Azure app domain-joined to corporate Active Directory  Remote administration and trouble-shooting of Windows Azure Roles Enable local computers for connectivity by installing WA Connect agent DNS name resolution
Azure Virtual Network Network policy managed through portal Web/Worker VM Role Azure Connect Gateway Azure Connect Gateway IPV6 address IPV6 address On Premise Machine SQL Server IPV6 address Azure Connect Gateway
Azure Storage Non SQL data Unlimited storage 4 types Tables: no fixed schema, no relations Blobs: large objects, have metadata attributes, MIME type aware Queues: assync communication to workerrole Drives: NTFS volume mounted to roles Accessible through a HTTP/REST API
Windows Azure Storage Account User creates a globally unique storage account name. Account Blob Table Queue Storagekeepsbeingavailable, even whenapplication is not running !
Libraries Microsoft.WindowsAzure.* Found in Windows Azure SDK System.Data.ServicesSystem.Data.Services.Client .NET 3.5 using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.StorageClient; using System.Data.Services.Common;
Azure Tables s Tables store entities. Entity schema can vary in the same table.  Can Not : Create foreign key relationships between tables. Perform server side joins between tables. Create custom indexes on the tables. No server side Count(), for example.
Azure Storage Tables partition key Tables are partitioned to support load balancing across storage nodes unique row key timestamp table field1 field2 field3
Table Partioning Data Row key Partition key A 123 foo bar etc A 123 foo bar etc A 124 foo bar etc A 124 foo bar etc B 123 foo bar etc B 123 foo bar etc Partition “B” Partition “A” Storage node 1 Storage node 2
Azure Storage Blobs Large data Can be made private or public Can have metadata attributes and MIME types Can be cached by a Azure Content Delivery Network (CDN) Time based access to blobs with shared access signatures Two Types Block Blobs : max 200GB, Usefor data which is streamed back to a worker or client Page Blobs : max 1TB, Use for data accessed frequently by random reads and writes. Azure Drives are also blobs
Blob addressing Blob Container Accounts Pic001.jpg SomeContainer Pic002.jpg MyAccount Mov001.wmv AnotherContainer Mov002.wmv http://<AccountName>.blob.core.windows.net/<ContainerName>/<BlobName>
Azure Storage Blobs accessibility blob private (Azure service or on premises) need storage credentials no storage credentials  public (browser, REST) time based with shared access signature GET http://myaccount.blob.core.windows.net/pictures/profile.jpg? st=2009-02-09&se=2009-02-10 &sr=c&sp=r&si=YWJjZGVmZw%3d%3d&sig= dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN%2fRnbI%3d
Shared Access Signatures Limit blobs in public container to be readable only if url contains shared access signature.  Share access signature can be made valid for a timerange only.  http://<accountname>.blob.core.windows.net/<containername>/<blobname>?se=2010-04-04T11%3A38%3A31Z&sr=b&sp=r&sig=D73BRVuRBV9nXp9rsw35b5rkLadi6YEZ4Ti1S8eeAQQ%3D
Azure Storage Queues Message in – Message out To support the assync processing model Topologies : Cloud-Cloud (web – worker) Cloud-OnPremises OnPremises-Cloud OnPremises-OnPremises through the cloud 8K per message HTTP/REST based
Azure Storage Queues Message Creator Message Reader Msg 1 Msg 2 Msg 3 Msg 4
Azure Storage Queues get message Msg 1 process message Msg 1 Msg 2 Msg 3 Msg 4 delete message
Azure Storage Queues get message Msg 1 process message Msg 2 Msg 3 Msg 4 When not deleted within a timeout, the message is added to the queue again ! Msg 1 delete message
Drives Azure Web orWorkerRole AzureStorage blob using (StreamReadersr = File.OpenText(@”F:ile.txt”)) F: Mounted , results in driveletter uploaddownload Attach VHD On-Premises blob using (StreamReadersr = File.OpenText(@”F:ile.txt”)) F:
Azure Content Delivery Network user Azure Datacenter Service  (webrole, workerrole) requests blob Blob storage CDN Node Is blob cached here ? blob
Azure Content Delivery Network user Azure Datacenter Service  (webrole, workerrole) another request Blob storage CDN Node blob
SQL Azure Relational DB in the Cloud Based on SQL 2008 R2 Accessible from every ADO.NET client SQL 2008 R2 Management Studio  High-availability and fault tolerance No physical administration is required  Use existing knowledge in T-SQL development  Scale databases up or down based on business needs (between 1GB and 50GB)
SQL Azure admin SQL Azure Server My DB (1 GB) My DB (50 GB) Master DB users and roles users and roles logins firewall internal restricted IP ranges Azure Services (webrole,workerrole) Anybody code “near” code “far”
SQL Azure admin SQL Azure Server My DB (50 GB) My DB (1 GB) Master DB stored on 3 replicas stored on 3 replicas stored on 3 replicas firewall internal restricted IP ranges Azure Services (webrole,workerrole) Anybody code “near” code “far”
SQL Azure quorum commit Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction write write replicas
SQL Azure quorum commit Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction commited OK OK replicas
AppFabric Caching A distributed, in-memory cache, implemented as a cloud service.   The same capabilities available in Windows Server AppFabricCaching. You can programmatically interact with the cache. Out-of-the-box ASP.NET providers for both session state and page output caching. Scenarios : Statefull, multi-instance Azuer roles ASP.NET page caching Speed up access to static data
AppFabric Caching Role Instance 1 Role Instance 2 On Premise app Read/Write data Read/Write data Read/Write data Caching
AppFabric Access Control identity providers Azure ACS rules Facebook ID Claims authorization Redirect login ADFS2 WebApp
Short break Azure + Umbraco workshop 24 June, 2011 Feel at home – help yourself!Coffee, tea, Coca-Cola, Fanta, Juice, Ice tea, ... Session continues at 11:30 77
CMS systems on Azure Azure + Umbraco workshop 24 June, 2011 78
CMS in Azure, why? Paul Sterling paul@umbraco.com (Technical Lead) Azure solving the future issues of highly-scaled widely distributed very dynamic WCMS solutions NOT a replacement for traditional hosting, but a new option  24 June, 2011 Azure + Umbraco workshop 79
How much does it cost? Simulation (approximate cost) 1GB Azure SQL  10GB Blob storage (1000000 read/write transactions/day) 50GB download traffic, 10GB upload traffic One webinstance: €77,01/month (promo offer €52,71) Two instances: €140,91/month (promo offer €94,78) Two instances + one staging: €204,81/month (promo offer €136,85) Conclusion Hosting websites on Azure = starting at €635/year Use Azure Pricing  calculator! http://www.microsoft.com/windowsazure/pricing-calculator/ Differencesbetweeninstances http://www.microsoft.com/windowsazure/compute/ 24 June, 2011 Azure + Umbraco workshop 80
Website CMS in Azure Azure is great for High traffic websites Sites where you need to quickly scale-up/down Global sites (visits many geo locations) Load balancing, stronger SLA’s Azure is not ideal for Very low cost hosting projects Projects with lots of legacy code/dependencies 24 June, 2011 Azure + Umbraco workshop 81
Umbraco in Azure 82 Azure + Umbraco workshop 24 June, 2011
Umbraco v4.5+ in Azure: Challenges What did we learn this morning? What are the challengesto host a CMS in Azure? Group talk 24 June, 2011 Azure + Umbraco workshop 83
Where does Umbraco store info? SQL database:  Page templates (no binaries, only references in DB) Page content (meta-data, texts, navigation nodes) Media/documents (no binaries, only reference in DB) Users & members, permissions Logs (errors, actions in admin) File storage:  Page templates: .Master Scripts/styles: XSLT, CSS, JS, ... + design elements used in templates User controls: ASCX/DLLs + Umbraco binaries Media: GIF, JPG, PDF, Videos, ... Config: web.config + /config/ xml files 24 June, 2011 Azure + Umbraco workshop 84
Umbraco XML cache XML file (/app_data/umbraco.config) Stored on local file system Contains all published nodes Purpose Fast app warm-up time (<1 sec) Less SQL queries – SQL is not used public site Automatically updated Every time you publish using Umbracobackend XML dump of in-memory cache http://forum.umbraco.org/yaf_postst4161_Umbraco-caching-explained.aspx 24 June, 2011 Azure + Umbraco workshop 85
Challenges Multiple instances of the web-role Round-robin load-balancing Sessions need to be stored centrally Storage No local storage (unsafe) No “shared drive” over multiple machines CDN – Content Delivery Network Only possible when files are stored on Azure Blobs Custom code Needstoworkwithin the boundries of Azure 24 June, 2011 Azure + Umbraco workshop 86
24 June, 2011 Azure + Umbraco workshop Solutions to host Umbraco v4.5+ on Windows Azure Simple web-role (manual creation) CodePlex accelerator (by Slalom Consulting) Sync Scripts (by Kurt & O1) CodePlex accelerator (by Microsoft) 87
24 June, 2011 Azure + Umbraco workshop Compare solutions 88
24 June, 2011 Azure + Umbraco workshop CodePlexAccelerator by Slalom Consulting 89
24 June, 2011 Azure + Umbraco workshop CodePlexAccelerator by Slalom Consulting CodePlex project http://azureaccelerators.codeplex.com By Slalom Consulting (Seattle) Uses old Azure API implementation Only 1 webrole is supported Less control storage transactions (mounted drive) 90
24 June, 2011 Azure + Umbraco workshop Synchronization scripts 91
Synchronisation scripts Current implementation (free Download) One-way sync, copies from Azure Blob to local storage (full sync) IIS configuration, app Pool, Website, binding of hostheaders Triggered at VM boot (startup.exe) Thanks to Kurt Claeys! 24 June, 2011 Azure + Umbraco workshop 92
CodePlex Accelerator by Microsofthttp://waacceleratorumbraco.codeplex.com 24 June, 2011 Azure + Umbraco workshop 93

Mais conteúdo relacionado

Mais procurados

JavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies TodayJavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies Today
Wesley Hales
 
New Features of ASP.NET 4.0
New Features of ASP.NET 4.0New Features of ASP.NET 4.0
New Features of ASP.NET 4.0
Buu Nguyen
 
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a CometDDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
Richard Banks
 

Mais procurados (20)

Flash And Dom
Flash And DomFlash And Dom
Flash And Dom
 
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularEscaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
 
A 20 minute introduction to AngularJS for XPage developers
A 20 minute introduction to AngularJS for XPage developersA 20 minute introduction to AngularJS for XPage developers
A 20 minute introduction to AngularJS for XPage developers
 
ClubAJAX Basics - Server Communication
ClubAJAX Basics - Server CommunicationClubAJAX Basics - Server Communication
ClubAJAX Basics - Server Communication
 
Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016
 
Write Powerful Javascript Modules To Make Your Apps DRY (Brian Leathem)
Write Powerful Javascript Modules To Make Your Apps DRY (Brian Leathem)Write Powerful Javascript Modules To Make Your Apps DRY (Brian Leathem)
Write Powerful Javascript Modules To Make Your Apps DRY (Brian Leathem)
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
JavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies TodayJavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies Today
 
MERN stack roadmap
MERN stack roadmapMERN stack roadmap
MERN stack roadmap
 
New Features of ASP.NET 4.0
New Features of ASP.NET 4.0New Features of ASP.NET 4.0
New Features of ASP.NET 4.0
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
IBM Watson Work Services Development
IBM Watson Work Services DevelopmentIBM Watson Work Services Development
IBM Watson Work Services Development
 
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...
 
The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devices
 
Building Angular Component Libraries
Building Angular Component LibrariesBuilding Angular Component Libraries
Building Angular Component Libraries
 
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a CometDDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
DDD Sydney 2011 - Getting out of Sync with IIS and Riding a Comet
 
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
Web Components v1
Web Components v1Web Components v1
Web Components v1
 
Great Responsive-ability Web Design
Great Responsive-ability Web DesignGreat Responsive-ability Web Design
Great Responsive-ability Web Design
 

Destaque

Mapeamento de solucoes_ab
Mapeamento de solucoes_abMapeamento de solucoes_ab
Mapeamento de solucoes_ab
Daniel Kent
 
Lit sec esc
Lit sec escLit sec esc
Lit sec esc
anagagon
 
Presentacion jennifer
Presentacion jenniferPresentacion jennifer
Presentacion jennifer
4974048
 
The modern internet
The modern internetThe modern internet
The modern internet
Student
 
Hrv coronariopatas
Hrv coronariopatasHrv coronariopatas
Hrv coronariopatas
Jumooca
 
Como crear una cuenta en yahoo !
Como crear una cuenta en yahoo !Como crear una cuenta en yahoo !
Como crear una cuenta en yahoo !
krnrch
 

Destaque (20)

"Umbraco MVC - a journey of discovery" - Lotte Pitcher
"Umbraco MVC - a journey of discovery" - Lotte Pitcher"Umbraco MVC - a journey of discovery" - Lotte Pitcher
"Umbraco MVC - a journey of discovery" - Lotte Pitcher
 
Building Azure Logic Apps
Building Azure Logic AppsBuilding Azure Logic Apps
Building Azure Logic Apps
 
eMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype CycleeMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype Cycle
 
Status of the BRT Industry
Status of the BRT Industry  Status of the BRT Industry
Status of the BRT Industry
 
Mapeamento de solucoes_ab
Mapeamento de solucoes_abMapeamento de solucoes_ab
Mapeamento de solucoes_ab
 
Lit sec esc
Lit sec escLit sec esc
Lit sec esc
 
Presentacion jennifer
Presentacion jenniferPresentacion jennifer
Presentacion jennifer
 
Dn11 u3 a5_goal
Dn11 u3 a5_goalDn11 u3 a5_goal
Dn11 u3 a5_goal
 
Folha 113
Folha 113Folha 113
Folha 113
 
R project nube (1)
R project nube (1)R project nube (1)
R project nube (1)
 
Livro fde regina
Livro fde reginaLivro fde regina
Livro fde regina
 
Edital RioPrevidência Assistente Previdenciário
Edital RioPrevidência Assistente PrevidenciárioEdital RioPrevidência Assistente Previdenciário
Edital RioPrevidência Assistente Previdenciário
 
The modern internet
The modern internetThe modern internet
The modern internet
 
AngloGold Ashanti Informe gri 2008
AngloGold Ashanti Informe gri 2008AngloGold Ashanti Informe gri 2008
AngloGold Ashanti Informe gri 2008
 
SIE- Definicion de Conceptos
SIE- Definicion de ConceptosSIE- Definicion de Conceptos
SIE- Definicion de Conceptos
 
Revista Plural UnP
Revista Plural UnPRevista Plural UnP
Revista Plural UnP
 
Investigacion de la red
Investigacion de la red Investigacion de la red
Investigacion de la red
 
Lupatech
LupatechLupatech
Lupatech
 
Hrv coronariopatas
Hrv coronariopatasHrv coronariopatas
Hrv coronariopatas
 
Como crear una cuenta en yahoo !
Como crear una cuenta en yahoo !Como crear una cuenta en yahoo !
Como crear una cuenta en yahoo !
 

Semelhante a Azure Umbraco workshop

Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Csco
rajramab
 

Semelhante a Azure Umbraco workshop (20)

Microsoft Partner Roadshow - To the Cloud
Microsoft Partner Roadshow  - To the CloudMicrosoft Partner Roadshow  - To the Cloud
Microsoft Partner Roadshow - To the Cloud
 
AZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meetingAZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meeting
 
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)
 
Arc Ready Cloud Computing
Arc Ready Cloud ComputingArc Ready Cloud Computing
Arc Ready Cloud Computing
 
Sky High With Azure
Sky High With AzureSky High With Azure
Sky High With Azure
 
Jumpstart Azure
Jumpstart AzureJumpstart Azure
Jumpstart Azure
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Building Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBuilding Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows Azure
 
Understanding The Azure Platform Jan
Understanding The Azure Platform   JanUnderstanding The Azure Platform   Jan
Understanding The Azure Platform Jan
 
Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Csco
 
Cloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azureCloud application architecture with sql azure and windows azure
Cloud application architecture with sql azure and windows azure
 
Migrating Apps To Azure
Migrating Apps To AzureMigrating Apps To Azure
Migrating Apps To Azure
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
 
Azure Introduction
Azure IntroductionAzure Introduction
Azure Introduction
 
Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010
 
Azure Microsoft
Azure MicrosoftAzure Microsoft
Azure Microsoft
 
Understanding The Azure Platform March 2010
Understanding The Azure Platform   March 2010Understanding The Azure Platform   March 2010
Understanding The Azure Platform March 2010
 
Windows Azure Platform - Jonathan Wong
Windows Azure Platform - Jonathan WongWindows Azure Platform - Jonathan Wong
Windows Azure Platform - Jonathan Wong
 
Blewis Session 1 Fy10 Q3 Azure
Blewis  Session 1 Fy10 Q3 AzureBlewis  Session 1 Fy10 Q3 Azure
Blewis Session 1 Fy10 Q3 Azure
 
Linux on Azure Pitch Deck
Linux on Azure Pitch DeckLinux on Azure Pitch Deck
Linux on Azure Pitch Deck
 

Mais de Orbit One - We create coherence

Mais de Orbit One - We create coherence (20)

ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
 
HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer
 
Het Nieuwe Werken in de praktijk
Het Nieuwe Werkenin de praktijkHet Nieuwe Werkenin de praktijk
Het Nieuwe Werken in de praktijk
 
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
 
ShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgrade
 
ShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde toolsShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde tools
 
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerdShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
 
Business value of Lync integrations
Business value of Lync integrationsBusiness value of Lync integrations
Business value of Lync integrations
 
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
 
Identity in the cloud using Microsoft
Identity in the cloud using MicrosoftIdentity in the cloud using Microsoft
Identity in the cloud using Microsoft
 
OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...
 
OneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisationOneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisation
 
Social Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsSocial Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefits
 
Windows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best PracticesWindows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best Practices
 
Wie is Orbit One Internet Solutions
Wie is Orbit One Internet SolutionsWie is Orbit One Internet Solutions
Wie is Orbit One Internet Solutions
 
Marketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsMarketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensions
 
Office 365, is cloud right for your company?
Office 365, is cloud right for your company?Office 365, is cloud right for your company?
Office 365, is cloud right for your company?
 
Who is Orbit One internet solutions?
Who is Orbit One internet solutions?Who is Orbit One internet solutions?
Who is Orbit One internet solutions?
 
Ingredients of the new world of work
Ingredients of the new world of workIngredients of the new world of work
Ingredients of the new world of work
 
SharePoint 2010 Until Now
SharePoint 2010 Until NowSharePoint 2010 Until Now
SharePoint 2010 Until Now
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Azure Umbraco workshop

  • 1. 24 June, 2011 Azure + Umbraco workshop
  • 2. 24 June, 2011 Azure + Umbraco workshop Who are we? Kurt Claeys Microsoft EMEA Technology Solution Professional Windows Azure kclaeys@microsoft.com http://twitter.com/kurtclaeys Wim De Coninck Orbit One, Development Team Lead wimdc@orbitone.com http://twitter.com/wimdc Olivier Mangelschots Orbit One, Managing Director olivier@orbitone.com http://twitter.com/omangels 2
  • 3. 24 June, 2011 Azure + Umbraco workshop Free workshop Sponsored by Microsoft Azure In collaboration with Belgian Umbraco User Group (BUUG.be) Hosted by Orbit One 3
  • 4. We are: Team of 18 Microsoft Gold Partner We build: Websites, Intranet, Portals, custom solutions We love: .NET, SharePoint, Dynamics CRM, Umbraco, Lync, New World of Work Orbit OneInternet Solutions Azure + Umbraco workshop 24 June, 2011 4
  • 5. 24 June, 2011 Azure + Umbraco workshop Umbracocertification training + exams Here in Ghent at OneOffice Level 1: When: 7 – 8 November 2011 Target audience: Designers / Webdevelopers Level 2: When: 9 – 10 November 2011 Target audience: .NET Developers 5
  • 6. Azure + Umbraco workshop 24 June, 2011 We will make everything available: Slides Binaries/source code Documentation Check www.buug.be Downloads 6
  • 7. 24 June, 2011 Azure + Umbraco workshop Agenda 9:30 – 10:00 Introduction 10:00 – 11:00 Technical dive into Azure (part 1) Break 11:15 – 12:00 Technical dive into Azure (part 1) 12:00 – 12:45 Umbraco CMS and Azure Lunch 13:30 Azure Development Program13:45 – 16:30 Hands-on workshop We are a small group, let’s make it interactive! 7
  • 8. 24 June, 2011 Azure + Umbraco workshop Is your laptop prepped? This afternoon, you need: Visual Studio 2010 Windows Azure SDK + Tools for Visual Studio (March 2011) version 1.4 SQL Server 2008 Express R2 RegisteredAzure Account Links on http://www.buug.be/en/events 8
  • 9. Technical dive into Azure Azure + Umbraco workshop 24 June, 2011 9
  • 10. Who is familiar with? Load balancer (NLB) Round robin Sticky sessions 24 June, 2011 Azure + Umbraco workshop 10
  • 11. Concept: Network load balancing (NLB) 24 June, 2011 Azure + Umbraco workshop 11
  • 12. SOFTWARE PLATFORM INFRASTRUCTURE AS A SERVICE AS A SERVICE AS A SERVICE Journey to the Cloud
  • 13. Windows Azure CLAEYS Kurt Technology Solution Professional Microsoft EMEA
  • 14. Cloud ? What is cloud computing ? Offering infrastructure, platform and software as a service over the internet to a global market. Move on-premises management of non functional IT assets to a providor. Difference from traditional hostings Sold on demand “pay as you grow” Elastic scalability Service is fully managed by the providor End user centric (IW or developer) Strong focus on integration (cloud-cloud or cloud-on-premises)
  • 15. Todays challenges percent of IT budgets is spent maintaining datacenter operations percent of datacenter capacity is idle on average Infrastructure Complexity Infrastructure Utilization 70 85
  • 16. Positioning AZURE infrastructure as a service (hardware) Servers available in the cloud platform as a service (developer) Delivery of a OS for custom, cloud enabled apps Support for service hosting and interoperability Relational data storage in the cloud software as a service (end users) = BPOS Exchange online Sharepoint online Dynamics CRM online SAAS IAAS PAAS
  • 17. Positioning AZURE infrastructure as a service (hardware) Servers available in the cloud platform as a service (developer) Delivery of a OS for custom, cloud enabled apps Support for service hosting and interoperability Relational data storage in the cloud software as a service (end users) = BPOS Exchange online Sharepoint online Dynamics CRM online SAAS IAAS PAAS
  • 18. IT as Service Private (On-Premise) Infrastructure (as a Service) Platform (as a Service) You manage Applications Applications Applications You manage Runtimes Runtimes Runtimes Security & Integration Security & Integration Security & Integration Managed by vendor You manage Databases Databases Databases Servers Servers Servers Managed by vendor Virtualization Virtualization Virtualization Server HW Server HW Server HW Storage Storage Storage Networking Networking Networking
  • 19. Cloud Computing Taxonomy The Windows Azure platform fits here IaaS Traditional IT SaaS PaaS You manage Applications Applications Applications Applications Data Data Data Data You manage Runtime 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
  • 20. Classic IT Capacity problem. Allocated IT-capacities Load Forecast “Under-supply“ of capacities “Waste“ of capacities Fixed cost of IT-capacities IT CAPACITY Barrier for innovations ActualLoad TIME
  • 22. Capacity in a cloud model Load Forecast Allocated IT capacities No “under-supply“ IT CAPACITY Reduction of “over-supply“ Possible reduction of IT-capacities in case of reduced load Reduction of initial investments ActualLoad TIME
  • 23. Rates Compute Per service hour of 1 CPU = 0,12 U$ Storage Per GB/month =0,15 U$ Transactions Per 10K = 0,01 U$ SQL Azure 10 GB/month = 99,99 U$ Access Control Transactions 10K = 0,01 U$ Service Bus Connections 1 connection/month = 3,99 U$ Data Transfer egress Per GB = 0,15 U$ Data Transfer ingress Per GB = FREE
  • 26. “Growing Fast“ “On and Off “ Inactivity Period Compute Compute Average Usage Usage Average Time Time On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to market can be cumbersome Successful services needs to grow/scale Keeping up w/ growth is big IT challenge Complex lead time for deployment “Unpredictable Bursting“ “Predictable Bursting“ Compute Compute Average Usage Average Usage Time Time Unexpected/unplanned peak in demand Sudden spike impacts performance Can’t over provision for extreme cases Services with micro seasonality trends Peaks due to periodic increased demand IT complexity and wasted capacity
  • 27. The Windows Azure platform is a flexible cloud–computing platform that lets you focus on solving business problems and addressing customer needs.
  • 28.
  • 29. Virtual Network Storage Compute Access Control Service Bus Caching Reporting Database Data Sync
  • 30. Datacenters Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
  • 31. Azure Fabric Controller Service Definition The Fabric Controller communicates with every server within the Fabric. Interacts with a “Fabric Agent” on each machine Monitors every VM, application and instance Service Management is performed by the Fabric Controller Performs load balancing, check pointing and recovery Fabric Controller Fabric X        X   X 
  • 32. Traditional Architecture DB Web UITier Browser Business Logic Tier Request Request
  • 33. Browser Browser DB Browser Business Logic Tier Web UITier Browser … Browser
  • 34. Browser Browser DB Browser Web UITier Business Logic Tier Browser “Server Busy” … Browser
  • 35. Browser Browser N L B Web Role DB Browser Business Logic Tier Web Role Browser Web Role … Browser
  • 36. Browser Browser N L B Web Role N L B WorkerRole DB Browser Web Role WorkerRole Browser Web Role WorkerRole … Browser
  • 37. Browser Browser N L B Web Role N L B WorkerRole DB Browser Web Role WorkerRole Browser Web Role WorkerRole … Browser Azure
  • 38. Azure Architecture Windows Azure Service SQL Data Your Service Worker Service NL B Worker Role SQL Internet SQL Your Storage SQL Queues NL B Web Site (ASPX, ASMX, WCF) Web Site (ASPX, ASMX, WCF) Web Role (ASPX, WCF) Tables Blobs
  • 39. Azure Network Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
  • 40. Azure Network Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
  • 41. Azure Network Load Balancer webrole NLB Instance 1 Instance 2 “round robin” no sticky sessions ! Instance 3
  • 42. Azure Roles Running apps in a virtual machine A virtual machine can have 1,2,4 or 8 cores We can have multiple instances of the VM running Two types Web Role = internet facing, IIS, request/response, ASP.NET or WCF Worker Role = background processing, endless loop, internal endpoints, can host WCF services
  • 43.
  • 44. Hosting ASP.NET pages and/or WCF Services.
  • 47. Has access to Storage Services.
  • 49. Code running in background, processing jobs.
  • 51. Similar to a batch job or Windows service.
  • 53.
  • 55. Configuring the service Service configuration, maintainable after deploy Number of instances ConnectionString to Storage Thumbprints of certificates Custom setting Service definition, defined at deployment Size of VM Local storage capacity Endpoint External Internal
  • 56. Azure VMRole Ability to upload your own customized WS2008R2 Enterprise images Full control over the OS image, install whatever you want on it. You can remote desktop into the OS Target scenarios Need to use apps/libraries with no unattended setup 32 bits apps Change registry settings Scale out ! Instances are behind loadbalancer, one public IP per service No durability of OS image on hardware failure With VM Role, the customer creates & maintains the OS Paying model = Paying model of current web/workerrole Uses differencing disks to upload deltas to image
  • 57. Web/WorkerRole vs VMRole All three are virtual images running in the datacenter under control of the Azure fabric controller behind the loadbalancer. Web/Worker Role The virtual image is already there, ... you upload your app, ... Azure places this app on the image and runs the image. VM Role You upload the complete virtual image with all apps installed, ... Azure runs the image Visual Studio virtual image virtual image virtual image app app app Azure Azure app development environment development environment Hyper-V
  • 58. VMRole lifecycle Create a .vhd in Hyper-V manager, install W2008 R2 as OS Install whatever roles, features and apps you want on it. Turn of automatics updates Install Windows Azure VM Role Integration Components Run sysprep.exe and bring it down Upload the .vhd to Azure (needs a certificate) Deploy a service configuration (Visual Studio, Managament Portal or Management API PS commandlets)
  • 59. Azure Virtual Network Aka as “Azure Connect” Secure network connectivity between on-premises and cloud, supports standard IP protocols Automatic setup of secure IP-level network Example use cases: Enterprise app migrated to Windows Azure that requires access to on-premise SQL Server Windows Azure app domain-joined to corporate Active Directory Remote administration and trouble-shooting of Windows Azure Roles Enable local computers for connectivity by installing WA Connect agent DNS name resolution
  • 60. Azure Virtual Network Network policy managed through portal Web/Worker VM Role Azure Connect Gateway Azure Connect Gateway IPV6 address IPV6 address On Premise Machine SQL Server IPV6 address Azure Connect Gateway
  • 61. Azure Storage Non SQL data Unlimited storage 4 types Tables: no fixed schema, no relations Blobs: large objects, have metadata attributes, MIME type aware Queues: assync communication to workerrole Drives: NTFS volume mounted to roles Accessible through a HTTP/REST API
  • 62. Windows Azure Storage Account User creates a globally unique storage account name. Account Blob Table Queue Storagekeepsbeingavailable, even whenapplication is not running !
  • 63. Libraries Microsoft.WindowsAzure.* Found in Windows Azure SDK System.Data.ServicesSystem.Data.Services.Client .NET 3.5 using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.StorageClient; using System.Data.Services.Common;
  • 64. Azure Tables s Tables store entities. Entity schema can vary in the same table. Can Not : Create foreign key relationships between tables. Perform server side joins between tables. Create custom indexes on the tables. No server side Count(), for example.
  • 65. Azure Storage Tables partition key Tables are partitioned to support load balancing across storage nodes unique row key timestamp table field1 field2 field3
  • 66. Table Partioning Data Row key Partition key A 123 foo bar etc A 123 foo bar etc A 124 foo bar etc A 124 foo bar etc B 123 foo bar etc B 123 foo bar etc Partition “B” Partition “A” Storage node 1 Storage node 2
  • 67. Azure Storage Blobs Large data Can be made private or public Can have metadata attributes and MIME types Can be cached by a Azure Content Delivery Network (CDN) Time based access to blobs with shared access signatures Two Types Block Blobs : max 200GB, Usefor data which is streamed back to a worker or client Page Blobs : max 1TB, Use for data accessed frequently by random reads and writes. Azure Drives are also blobs
  • 68. Blob addressing Blob Container Accounts Pic001.jpg SomeContainer Pic002.jpg MyAccount Mov001.wmv AnotherContainer Mov002.wmv http://<AccountName>.blob.core.windows.net/<ContainerName>/<BlobName>
  • 69. Azure Storage Blobs accessibility blob private (Azure service or on premises) need storage credentials no storage credentials public (browser, REST) time based with shared access signature GET http://myaccount.blob.core.windows.net/pictures/profile.jpg? st=2009-02-09&se=2009-02-10 &sr=c&sp=r&si=YWJjZGVmZw%3d%3d&sig= dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN%2fRnbI%3d
  • 70. Shared Access Signatures Limit blobs in public container to be readable only if url contains shared access signature. Share access signature can be made valid for a timerange only. http://<accountname>.blob.core.windows.net/<containername>/<blobname>?se=2010-04-04T11%3A38%3A31Z&sr=b&sp=r&sig=D73BRVuRBV9nXp9rsw35b5rkLadi6YEZ4Ti1S8eeAQQ%3D
  • 71. Azure Storage Queues Message in – Message out To support the assync processing model Topologies : Cloud-Cloud (web – worker) Cloud-OnPremises OnPremises-Cloud OnPremises-OnPremises through the cloud 8K per message HTTP/REST based
  • 72. Azure Storage Queues Message Creator Message Reader Msg 1 Msg 2 Msg 3 Msg 4
  • 73. Azure Storage Queues get message Msg 1 process message Msg 1 Msg 2 Msg 3 Msg 4 delete message
  • 74. Azure Storage Queues get message Msg 1 process message Msg 2 Msg 3 Msg 4 When not deleted within a timeout, the message is added to the queue again ! Msg 1 delete message
  • 75. Drives Azure Web orWorkerRole AzureStorage blob using (StreamReadersr = File.OpenText(@”F:ile.txt”)) F: Mounted , results in driveletter uploaddownload Attach VHD On-Premises blob using (StreamReadersr = File.OpenText(@”F:ile.txt”)) F:
  • 76. Azure Content Delivery Network user Azure Datacenter Service (webrole, workerrole) requests blob Blob storage CDN Node Is blob cached here ? blob
  • 77. Azure Content Delivery Network user Azure Datacenter Service (webrole, workerrole) another request Blob storage CDN Node blob
  • 78. SQL Azure Relational DB in the Cloud Based on SQL 2008 R2 Accessible from every ADO.NET client SQL 2008 R2 Management Studio High-availability and fault tolerance No physical administration is required Use existing knowledge in T-SQL development Scale databases up or down based on business needs (between 1GB and 50GB)
  • 79. SQL Azure admin SQL Azure Server My DB (1 GB) My DB (50 GB) Master DB users and roles users and roles logins firewall internal restricted IP ranges Azure Services (webrole,workerrole) Anybody code “near” code “far”
  • 80. SQL Azure admin SQL Azure Server My DB (50 GB) My DB (1 GB) Master DB stored on 3 replicas stored on 3 replicas stored on 3 replicas firewall internal restricted IP ranges Azure Services (webrole,workerrole) Anybody code “near” code “far”
  • 81. SQL Azure quorum commit Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction write write replicas
  • 82. SQL Azure quorum commit Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction commited OK OK replicas
  • 83. AppFabric Caching A distributed, in-memory cache, implemented as a cloud service.  The same capabilities available in Windows Server AppFabricCaching. You can programmatically interact with the cache. Out-of-the-box ASP.NET providers for both session state and page output caching. Scenarios : Statefull, multi-instance Azuer roles ASP.NET page caching Speed up access to static data
  • 84. AppFabric Caching Role Instance 1 Role Instance 2 On Premise app Read/Write data Read/Write data Read/Write data Caching
  • 85. AppFabric Access Control identity providers Azure ACS rules Facebook ID Claims authorization Redirect login ADFS2 WebApp
  • 86. Short break Azure + Umbraco workshop 24 June, 2011 Feel at home – help yourself!Coffee, tea, Coca-Cola, Fanta, Juice, Ice tea, ... Session continues at 11:30 77
  • 87. CMS systems on Azure Azure + Umbraco workshop 24 June, 2011 78
  • 88. CMS in Azure, why? Paul Sterling paul@umbraco.com (Technical Lead) Azure solving the future issues of highly-scaled widely distributed very dynamic WCMS solutions NOT a replacement for traditional hosting, but a new option 24 June, 2011 Azure + Umbraco workshop 79
  • 89. How much does it cost? Simulation (approximate cost) 1GB Azure SQL 10GB Blob storage (1000000 read/write transactions/day) 50GB download traffic, 10GB upload traffic One webinstance: €77,01/month (promo offer €52,71) Two instances: €140,91/month (promo offer €94,78) Two instances + one staging: €204,81/month (promo offer €136,85) Conclusion Hosting websites on Azure = starting at €635/year Use Azure Pricing calculator! http://www.microsoft.com/windowsazure/pricing-calculator/ Differencesbetweeninstances http://www.microsoft.com/windowsazure/compute/ 24 June, 2011 Azure + Umbraco workshop 80
  • 90. Website CMS in Azure Azure is great for High traffic websites Sites where you need to quickly scale-up/down Global sites (visits many geo locations) Load balancing, stronger SLA’s Azure is not ideal for Very low cost hosting projects Projects with lots of legacy code/dependencies 24 June, 2011 Azure + Umbraco workshop 81
  • 91. Umbraco in Azure 82 Azure + Umbraco workshop 24 June, 2011
  • 92. Umbraco v4.5+ in Azure: Challenges What did we learn this morning? What are the challengesto host a CMS in Azure? Group talk 24 June, 2011 Azure + Umbraco workshop 83
  • 93. Where does Umbraco store info? SQL database: Page templates (no binaries, only references in DB) Page content (meta-data, texts, navigation nodes) Media/documents (no binaries, only reference in DB) Users & members, permissions Logs (errors, actions in admin) File storage: Page templates: .Master Scripts/styles: XSLT, CSS, JS, ... + design elements used in templates User controls: ASCX/DLLs + Umbraco binaries Media: GIF, JPG, PDF, Videos, ... Config: web.config + /config/ xml files 24 June, 2011 Azure + Umbraco workshop 84
  • 94. Umbraco XML cache XML file (/app_data/umbraco.config) Stored on local file system Contains all published nodes Purpose Fast app warm-up time (<1 sec) Less SQL queries – SQL is not used public site Automatically updated Every time you publish using Umbracobackend XML dump of in-memory cache http://forum.umbraco.org/yaf_postst4161_Umbraco-caching-explained.aspx 24 June, 2011 Azure + Umbraco workshop 85
  • 95. Challenges Multiple instances of the web-role Round-robin load-balancing Sessions need to be stored centrally Storage No local storage (unsafe) No “shared drive” over multiple machines CDN – Content Delivery Network Only possible when files are stored on Azure Blobs Custom code Needstoworkwithin the boundries of Azure 24 June, 2011 Azure + Umbraco workshop 86
  • 96. 24 June, 2011 Azure + Umbraco workshop Solutions to host Umbraco v4.5+ on Windows Azure Simple web-role (manual creation) CodePlex accelerator (by Slalom Consulting) Sync Scripts (by Kurt & O1) CodePlex accelerator (by Microsoft) 87
  • 97. 24 June, 2011 Azure + Umbraco workshop Compare solutions 88
  • 98. 24 June, 2011 Azure + Umbraco workshop CodePlexAccelerator by Slalom Consulting 89
  • 99. 24 June, 2011 Azure + Umbraco workshop CodePlexAccelerator by Slalom Consulting CodePlex project http://azureaccelerators.codeplex.com By Slalom Consulting (Seattle) Uses old Azure API implementation Only 1 webrole is supported Less control storage transactions (mounted drive) 90
  • 100. 24 June, 2011 Azure + Umbraco workshop Synchronization scripts 91
  • 101. Synchronisation scripts Current implementation (free Download) One-way sync, copies from Azure Blob to local storage (full sync) IIS configuration, app Pool, Website, binding of hostheaders Triggered at VM boot (startup.exe) Thanks to Kurt Claeys! 24 June, 2011 Azure + Umbraco workshop 92
  • 102. CodePlex Accelerator by Microsofthttp://waacceleratorumbraco.codeplex.com 24 June, 2011 Azure + Umbraco workshop 93
  • 103. CodePlex Accelerator by Microsofthttp://waacceleratorumbraco.codeplex.com How does the Accelerator work? Creates 1 or more web-role instances (VMs) deploys a sync IIS process on these machines Deploy tool uploadscomplete Umbraco installation to Blob Storage Includes all the files: images, css, aspx, web.config, … Created SQL Azure database for session stage Auto configuration of web.config Scripts keeps local file system in sync with the blob storage Every second Bi-directional Uuser adds file trough Umbraco cms, is stored on local filesystem of the current web-role One second later, file is pushed to Azure Blob Storage One second later, file is pulled to the other web-roles 24 June, 2011 Azure + Umbraco workshop 94
  • 104. How to update files of your site? CloudBerry Explorer for Azure Blob Storage (Free!) FTP like access toAzureBlob http://cloudberrylab.com Alternative free tool: ClumsyLeafCloudXplorer http://clumsyleaf.com/products/cloudxplorer Warning: Does notcreate empty folders 24 June, 2011 Azure + Umbraco workshop 95
  • 105. CloudBerry Explorer 24 June, 2011 Azure + Umbraco workshop 96
  • 106. Future: Umbraco v5 CTP Released last week (available on CodePlex) http://umbraco.codeplex.com Betaexpected Q4 2011 RTM somewhere end 2011 - beginning 2012 Paul Sterling paul@umbraco.com (Technical Lead) With regard to Umbraco v5; the support for Azure will be native in the sense that the architecture takes into account the de-coupled scenarios possible in cloud-based computing - where your data store may be a database, a flat store, or a blob store - and the runtime may be in a single instance or in 1,000's of volatile instances.   If you are looking to leverage Azure for your solutions in the future, keep an eye on v5 as much of the architecture has been finalized and a usable code base is not too far off. 24 June, 2011 Azure + Umbraco workshop 97
  • 107. Umbraco v4.7+ in Azure, too early? No! No needtowaitfor v5 Umbraco v4.7 + Microsoft accelerator is great! 24 June, 2011 Azure + Umbraco workshop 98
  • 108. Lunch Azure + Umbraco workshop 24 June, 2011 There are sandwiches and fresh soup Workshop starts at 13:15 99
  • 109. 24 June, 2011 Azure + Umbraco workshop Azure Development Program Pay €1.500 to Microsoft and get 1 half day business workshop (Why Azure, pricing, ...) 4 half days technical assistance When your project goes live (before 15 May) Can also be Proof of Concept Full refund of €1.500! Visibility on Microsoft sites First 50 live Benelux projects get a price Windows Phone 7, ... Interested? Contact Tom Crombez v-tocrom@microsoft.com http://yourbusinessyourfame.cloudapp.net 100
  • 110. 24 June, 2011 Azure + Umbraco workshop Cloud Essentialshttp://www.microsoftcloudpartner.com  Windows Azure 750 hours of an extra small compute instance 25 hours of a small compute instance 3GB of storage 250,000 storage transactions SQL Azure 1 Web Edition database (1 GB) Windows Azure platform AppFabric 100,000 Access Control transactions 2 Service Bus connections Data Transfers (worldwide) 3 GB in 6 GB out 101
  • 111. 24 June, 2011 Azure + Umbraco workshop MSDN Premium Subscription Benefithttp://www.microsoft.com/windowsazure/offers/popup/popup.aspx?lang=en&locale=nl-BE&offer=MS-AZR-0005P Windows Azure 750 hours of a small compute instance 10 GB of storage 1,000,000 storage transactions SQL Azure 3 Web Edition databases (up to 1 GB relational database each) Windows Azure platform AppFabric 1,000,000 Access Control transactions 1 pack of 5 Service Bus connections*** Data Transfers North America and Europe (per region) 7 GBs in 14 GBs out 102
  • 112. Hands-on Azure + Umbraco workshop 24 June, 2011 103
  • 113. 24 June, 2011 Azure + Umbraco workshop Nowit’syour turn! Prepare the storage account Run the setup script Prepare the Accelerator fordeployment Prepare the hosted service Prepare the SQL Azure service ConfigureUmbracowith the script Upload the site Follow the step-by-step guide We are hereto help! 104

Notas do Editor

  1. When a request is made using the Windows Azure Blob service URL, the blob is read directly from the Windows Azure Blob service. When a request is made using the Windows Azure CDN URL, the request is redirected to the CDN endpoint closest to the location from which the request was made to provide access to the blob. If the blob is not found at that endpoint, then it is retrieved from the Blob service and cached at the endpoint, where a time-to-live (TTL) setting is maintained for the cached blob. The TTL specifies that the blob should be cached for that amount of time in the CDN until it is refreshed by the Blob service. The CDN attempts to refresh the blob from Windows Azure Blob service only once the TTL has elapsed. The default TTL is 72 hours. At PDC 2009, we will allow you to specify the standard HTTP Cache-Control header for your Windows Azure blobs. If this value is specified for a blob, then the TTL period will be set to the value specified in Cache-Control header.
  2. How does itwork?1: It createsone or more webroleinstancesanddeploys a synchronizationwindows service on these machines2: The deploy tool uploads the complete Umbracoinstallationwithall the files (images, css, aspx, web.config, …) to the blob. 3: The synchronization scripts keep the local file system in syncwith the blob storage (every second). If a user is addingsomethingto the umbracocms, thiswillbewrittento the local filesystem of the currentwebrole. One second later itwillbepushedto the blob store andone second later itwillbesyncedto the otherwebroles.
  3. in web.config word een session state db geconfiged door de accelerator en de database word automatisch aangemaakt in de sql azure