Your SlideShare is downloading. ×
0
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Azure and Umbraco CMS
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Azure and Umbraco CMS

5,943

Published on

Workshop on 10 March 2011, giving by Kurt Claeys (Microsoft), Mel Gerats and Olivier Mangelschots (Orbit One). …

Workshop on 10 March 2011, giving by Kurt Claeys (Microsoft), Mel Gerats and Olivier Mangelschots (Orbit One).

Topics:
Technical dive into Azure
Umbraco CMS and Azure
Azure Development Program
Hands-on workshop

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,943
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
115
Comments
0
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • 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.
  • Transcript

    • 1. 10 March, 2011
      Azure + Umbraco workshop
    • 2. 10 March, 2011
      Azure + Umbraco workshop
      2
      Who are we?
      Kurt Claeys
      Microsoft EMEA
      Technology Solution Professional Windows Azure
      kclaeys@microsoft.comhttp://twitter.com/kurtclaeys
      Mel Gerats
      Orbit One, Lead developer
      mel@orbitone.com
      Olivier Mangelschots
      Orbit One, Managing Director
      olivier@orbitone.com
    • 3. 10 March, 2011
      Azure + Umbraco workshop
      3
      Free workshop
      Sponsored by Microsoft Azure
      In collaboration with
      Belgian Umbraco User Group (BUUG.be)
      Hosted by Orbit One
    • 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
      10 March, 2011
      4
    • 5. 10 March, 2011
      Azure + Umbraco workshop
      5
      Who are you?
      Damiaan Peeters (Comm-IT.be)
      TomCrombez (Microsoft.com)
      Christophe Heureux (JWTDialogue.com)
      DavidDesloovere (Natcheurope.com)
      Anthony Candaele (Webmove.be)
      Dirk De Grave (netaddICTs.be)
      DavidVerberckmoes (Promex.be)
      Voicu Matei (OrbitOne.com)
      Thomas Stock (OrbitOne.com)
      Lieven Meys (OrbitOne.com)
      Kevin De Smet (OrbitOne.com)
      Welcome!
    • 6. 10 March, 2011
      Azure + Umbraco workshop
      6
      Don’t miss: Umbraco BE Festival
      Friday 18 March 9:00 – 18:00
      deSingel Antwerp
      Free entrance, register on BUUG.be
      International speakers
      Sponsored by:
    • 7. 7
      Azure + Umbraco workshop
      10 March, 2011
      We will make everything available:
      Slides
      Binaries/source code
      Documentation
      Check www.buug.be
      Downloads
    • 8. 10 March, 2011
      Azure + Umbraco workshop
      8
      Agenda
      9:30 – 11:00 Technical dive into Azure
      Break
      11:30 – 12:30 Umbraco CMS and Azure
      Lunch
      13:30 Azure Development Program
      13:45 – 16:30 Hands-on workshop
      We are a small group, let’s make it interactive!
    • 9. 10 March, 2011
      Azure + Umbraco workshop
      9
      Is your laptop prepped?
      This afternoon, you need:
      Visual Studio 2010
      Windows Azure SDK 1.3
      SQL Server 2008 Express R2
      SQL Azure migration wizard
      Registered Azure Account
      Links on http://www.buug.be/en/events
    • 10. Technical dive into Azure
      10
      Azure + Umbraco workshop
      10 March, 2011
    • 11. Who is familiar with?
      Load balancer (NLB)
      Round robin
      Sticky sessions
      10 March, 2011
      Azure + Umbraco workshop
      11
    • 12. Concept: Network load balancing (NLB)
      10 March, 2011
      Azure + Umbraco workshop
      12
    • 13. SOFTWARE
      PLATFORM
      INFRASTRUCTURE
      AS A SERVICE
      AS A SERVICE
      AS A SERVICE
      Journey to the Cloud
    • 14. The Windows Azure platform is a flexible cloud–computing platform that lets you focus on solving business problems and addressing customer needs.
    • 15. 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
    • 16. Cloud Scenarios
      “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
    • 17. Azure Examples
      online tax declaration,
      deadline is july 15th
      internet based lottery game grows
      faster than expected
    • 18. Azure Datacenters
      Quincy, WA
      Chicago, IL
      San Antonio, TX
      Dublin, Ireland
      Generation 4 DCs
    • 19. 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

    • 20. Virtual Network
      Storage
      Compute
      Access Control
      Service Bus
      Caching
      Reporting
      Database
      Data Sync
    • 21. Azure Architecture
      Windows Azure Service
      SQL Data
      Your Service
      Worker Service
      NL B
      Worker
      Role
      SQL
      Internet
      SQL
      Your Storage
      SQL
      Queues
      Web Site
      (ASPX, ASMX, WCF)
      Web Site
      (ASPX, ASMX, WCF)
      Web Role
      (ASPX, WCF)
      Tables
      Blobs
    • 22. Azure Network Load Balancer
      webrole
      NLB
      Instance 1
      Instance 2
      Instance 3
    • 23. Azure Network Load Balancer
      webrole
      NLB
      Instance 1
      Instance 2
      Instance 3
    • 24. Azure Network Load Balancer
      webrole
      NLB
      Instance 1
      Instance 2
      “round robin”
      no sticky sessions !
      Instance 3
    • 25. 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
      Three types
      Web Role = internet facing, IIS, request/response, ASP.NET or WCF
      Worker Role = background processing, endless loop, internal endpoints, can host WCF services
      VM Role = custom OS (W2008R2)
    • 26. Azure Roles
      • WebRole
      • 27. Hosting ASP.NET pages and/or WCF Services.
      • 28. Handles incoming HTTP/HTTPS requests.
      • 29. Public, Internet faced.
      • 30. Has access to Storage Services.
      • 31. WorkerRole
      • 32. Code running in background, processing jobs.
      • 33. ‘Hidden’ processing power.
      • 34. Similar to a batch job or Windows service.
      • 35. Handles messages from a queue.
      • 36. Has access to Storage Services.
    • Azure Service
      Storage
      Service
      X number of Webroles
      external endpoint 1
      (port80)
      blobs
      webrole 1
      tables
      Instance 1
      Instance 2
      Instance 3
      queues
      external
      endpoint 2
      (port X)
      webrole 2
      Instance 1
      internal endpoint
      internal endpoint
      internal endpoint
      Performance Metrics
      Instance 1
      Instance 2
      Instance 3
      workerrole1
      Application Log Files
      X number of Workerroles
      Event Logs
      certificate
      IIS Logs
      SQL Azure DB
      Crashdumps
      Service configuration, maintainable after deploy
      Service definition, defined at deployment
    • 37. Configuring Virtual Machines Size
    • 38. 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
    • 39. Scaling (custom scaling engine)
      App
      performance metrics
      Local DB
      App
      App
      running on 2 instances
      3
      interprete metrics
      defines on metrics and polling intervals
      Scaling engine
      changes the configuration
      Configuration
    • 40. 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
    • 41. 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
    • 42. 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
    • 43. Windows Azure Storage Account
      User creates a globally unique storage account name.
      Account
      Blob
      Table
      Queue
      Storagekeepsbeingavailable, even whenapplication is not running !
    • 44. 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;
    • 45. Azure Storage Tables
      partition key
      Tables are partitioned to support load balancing across storage nodes
      unique
      row key
      timestamp
      table
      field1
      field2
      field3
      PAAS
    • 46. 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
      PAAS
    • 47. 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
      PAAS
    • 48. Blob addressing
      Blob
      Container
      Accounts
      Pic001.jpg
      SomeContainer
      Pic002.jpg
      MyAccount
      Mov001.wmv
      AnotherContainer
      Mov002.wmv
      http://<AccountName>.blob.core.windows.net/<ContainerName>/<BlobName>
    • 49. 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
      PAAS
    • 50. 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
    • 51. Azure Storage Drives
      On premises
      Azure
      Blob Storage
      WIN7/WS2008
      data
      data
      NTFS volume as .vhd, mounted to local OS
      Web/WorkerRole
      PAAS
    • 52. Azure Storage Drives
      On premises
      Azure
      Blob Storage
      WIN7/WS2008
      data
      data
      data
      Upload as blob
      unmounted
      Web/WorkerRole
      mounts to driveletter
      legacy IO code works
      PAAS
    • 53. Azure Content Delivery Network
      user
      Azure Datacenter
      Service
      (webrole, workerrole)
      requests blob
      Blob storage
      CDN Node
      Is blob cached here ?
      blob
      PAAS
    • 54. Azure Content Delivery Network
      user
      Azure Datacenter
      Service
      (webrole, workerrole)
      another request
      Blob storage
      CDN Node
      blob
      PAAS
    • 55. Azure Content Delivery Network
      Azure datacenters
      Dublin
      Amsterdam
      Current CDN nodes
      Amsterdam
      Dublin
      London
      Paris
      Stockholm
      Vienna
      Zurich
      Only EU datacenters listed here
      PAAS
    • 56. 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
    • 57. AppFabric Caching
      Role Instance 1
      Role Instance 2
      On Premise app
      Read/Write data
      Read/Write data
      Read/Write data
      Caching
    • 58. 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
    • 59. 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
    • 60. AppFabric Access Control
      identity providers
      Azure ACS
      rules
      Facebook ID
      Claims
      authorization
      Redirect login
      ADFS2
      WebApp
    • 61. Azure Upgrades Swap Staging / Production
      Get-HostedServices -subscriptionId <YOUR_SUBSCRIPTION_ID> -certificate (get-item cert:CurrentUserMY<YOUR_CERTIFICATE_THUMPRINT>) |
      where {$_.ServiceName –eq “<YOUR_SERVICE_NAME>”} |
      Get-Deployment staging |
      Move-Deployment |
      Get-OperationStatus –WaitToComplete
      PAAS
    • 62. Azure Upgrades Rolling Upgrades
      Upgrade domain 1
      Upgrade domain 2
      V1 instance 2
      V1 instance 1
      V1 instance 3
      V1 instance 4
      1. fabric controller
      brings down 1st upgrade
      domain
      Upgrade domain 1
      Upgrade domain 2
      V1 instance 2
      V1 instance 1
      V1 instance 3
      V1 instance 4
      2. upgrade
      Upgrade domain 1
      Upgrade domain 2
      V2 instance 2
      V2 instance 1
      V1 instance 3
      V1 instance 4
      3. fabric controller brings
      next upgrade domain
      Upgrade domain 1
      Upgrade domain 2
      V2 instance 2
      V2 instance 1
      V1 instance 3
      V1 instance 4
      4. upgrade
      Upgrade domain 1
      Upgrade domain 2
      V2 instance 2
      V2 instance 1
      V2 instance 3
      V2 instance 4
    • 63. 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)
      PAAS
    • 64. 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”
      PAAS
    • 65. 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”
      PAAS
    • 66. 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
      PAAS
    • 67. 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
      PAAS
    • 68. all in.
      We’re
      Journey to the Cloud
    • 69. Short break
      60
      Azure + Umbraco workshop
      10 March, 2011
      Feel at home – help yourself!Coffee, tea, Coca-Cola, Fanta, Juice, Ice tea, ...
      Session continues at 11:30
    • 70. CMS systems on Azure
      61
      Azure + Umbraco workshop
      10 March, 2011
    • 71. 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
      10 March, 2011
      Azure + Umbraco workshop
      62
    • 72. How much does it cost?
      Simulation (approximate cost)
      1GB Azure SQL
      10GB Blob storage (475000 read/write transactions/day)
      50GB download traffic, 5GB upload traffic
      One webinstance: €86/month
      Two instances: €148/month
      Two instances + one staging: €210/month
      Conclusion
      Hosting websites on Azure = starting at €1.000€/year
      Use Azure Pricing Excel to calculate!
      Demo?
      10 March, 2011
      Azure + Umbraco workshop
      63
    • 73. WCMS 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
      Low cost hosting projects
      Projects with lots of legacy code/dependencies
      10 March, 2011
      Azure + Umbraco workshop
      64
    • 74. Umbraco in Azure
      65
      Azure + Umbraco workshop
      10 March, 2011
    • 75. Umbraco v4.5+ in Azure: Challenges
      What did we learn this morning?
      Group talk
      10 March, 2011
      Azure + Umbraco workshop
      66
    • 76. 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
      10 March, 2011
      Azure + Umbraco workshop
      67
    • 77. 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
      10 March, 2011
      Azure + Umbraco workshop
      68
    • 78. 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
      Only possible when files are stored on Azure Blobs
      Custom code
      10 March, 2011
      Azure + Umbraco workshop
      69
    • 79. 10 March, 2011
      Azure + Umbraco workshop
      70
      Solutions for Umbraco v4.5+
      Simple web-role
      Accelerator
      Sync Scripts (by Kurt & O1)
      Since yesterday 
    • 80. 10 March, 2011
      Azure + Umbraco workshop
      71
      Compare solutions
    • 81. 10 March, 2011
      Azure + Umbraco workshop
      72
      Accelerator (CodePlex)
    • 82. 10 March, 2011
      Azure + Umbraco workshop
      73
      Accelerator (CodePlex)
      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)
    • 83. 10 March, 2011
      Azure + Umbraco workshop
      74
      Synchronization scripts
    • 84. 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)
      Future (CodePlex project)
      ConstantSync from Blob > VM
      Triggered by a service call (avoid polling/storagetransactions)
      Bidirectional synchronisation
      Also from VM to Blob Storage
      Thanks to Kurt Claeys!
      10 March, 2011
      Azure + Umbraco workshop
      75
    • 85. FTP like access to Azure Blob
      CloudBerry Explorer for Azure Blob Storage
      http://cloudberrylab.com
      Free!
      10 March, 2011
      Azure + Umbraco workshop
      76
    • 86. CloudBerry Explorer
      10 March, 2011
      Azure + Umbraco workshop
      77
    • 87. Future: Umbraco v5
      Beta expected Q2 2011 (April/May)
      RTM somewhere end 2011
      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.
      10 March, 2011
      Azure + Umbraco workshop
      78
    • 88. Umbraco v4.5+ in Azure, too early?
      Yes, for most scenarios
      Only one instance, quite complex
      But it’s great to:
      Experiment with Azure
      Be ready for the future
      10 March, 2011
      Azure + Umbraco workshop
      79
    • 89. Lunch
      80
      Azure + Umbraco workshop
      10 March, 2011
      There are sandwiches and fresh soup
      Workshop starts at 13:15
    • 90. 10 March, 2011
      Azure + Umbraco workshop
      81
      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
    • 91. 10 March, 2011
      Azure + Umbraco workshop
      82
      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
    • 92. 10 March, 2011
      Azure + Umbraco workshop
      83
      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
    • 93. Hands-on
      84
      Azure + Umbraco workshop
      10 March, 2011
    • 94. 10 March, 2011
      Azure + Umbraco workshop
      85
      Hands-on: web role + SQL
      Install clean Umbraco site local laptop (using Web platform installer)
      Provision Azure SQL storage
      Migrate locale SQL db to Azure SQL (using migration wizard)
      Create Visual Studio package of Umbraco site (using CodePlex solution)
      Provision WebRole on Azure
      Publish solution to Azure Webrole (using Visual Studio)
      Test your site on http://mysite.cloudapp.net
      It works, but we have no backups.
    • 95. 10 March, 2011
      Azure + Umbraco workshop
      86
      Hands-on part 2: add Blob storage
      Provision Azure Storage account
      Download 3rd party tool
      http://cloudberrylab.com
      Upload of local Umbraco files to Azure Blob (using Cloudberry)
      Deploy Generic webrole with startup tasks (using VS)
      Configure IIS site (host header)
      Configure Storage Account (container, account name, password)
    • 96. 10 March, 2011
      Azure + Umbraco workshop
      87
      Hands-on workshop
      Follow the installation guide
      http://umbracoonazure.codeplex.com/
      We are here to help!

    ×