Sitecore and Microsoft - An Azure story
Kind
reader, perhaps a small introduction might just suit this blogpost perfectly.
What exactly is Azure and the cloud as a whole? I know that for most of you
readers, the following information is nothing more than a lesson in history and
may even very well be within your set of active knowledge. Worst case, you can
skip it altogether and jump right into the next paragraph.
So, what is Microsoft Azure?
Not so long
ago, and here and there the following scenario still stands, a typical website
or application was hosted on internally hosted machines per company. Big
companies tend to have centralized IT departments and data centers to secure
and manage their IT infrastructure through meticulously defined processes and
monitoring. Smaller companies need to fend for themselves while making due with
the tools and budgets available to provide the best server maintenance as possible.
And typically, web servers are not exactly put at the top of the priority list.
In both
cases, the IT department is tasked with the painstaking task of maintaining servers
to have up to date software and hardware. This often makes IT a liability or
blocking factor for continuous business development.
Enter Cloud
based platforms such as Azure. The idea behind these platforms is simple enough;
Move the overhead and workload of the IT departments from inside of the (often departmental)
companies and outsource them to specialized data centers. When talking about cloud,
3 acronyms come into play; IaaS, PaaS and SaaS. These cloud models are explained
below by highlighting the differences between what you manage and what is
managed for you.
I will not
go into any more detail on what Microsoft Azure has to offer. If you need more
information, I advise to read their documentation on https://docs.microsoft.com/en-us/azure/ and any other resource available
online.
Now that we
have set the stage on Azure it is time to give some history and evolution on
how Sitecore has been reaching out to Microsoft to incorporate this way of
managing your IT services.
Sitecore and SaaS
Software as
a Service takes all the previous mentioned things to an even higher level. You
basically subscribe to a specific product that runs on Azure and simply use it.
Sitecore
has no SaaS solution or offering. But if they did, it would behave (kind of)
like this: you subscribe to a Sitecore SaaS and choose your type of solution
(for example a CM with two CD’s) and you would start developing, content
creation and what more directly on that platform. Without doing deploys or
module installations. On top of that, the SaaS solution would allow you to
opt-in or out of specific functionalities and modules and would ensure that you
(and any SaaS user) are always on the latest version of the platform.
But just to
be clear; Sitecore has (at the moment of writing) no solution for SaaS, nor
have they shown any interest in the creation of such a solution.
Sitecore and IaaS
Since Infrastructure
as a Service gives you the same access as you would have on any on premise
machines, there is little to no difference for the hosting of your application
environment. This implies that it is generally beneficial to move into Azure
hosting as it gives flexibility for machine scaling as well as a pricing that
is based on the actual server usage.
Sitecore and PaaS
The story
becomes entirely different once you move into Platform as a Service. In a side
by side comparison, obviously PaaS would win over IaaS anytime. As it makes an
abstract of all layers of your hosting environments except for your own
application and data. However, that same abstraction obviously removes some
flexibility that we have become accustomed to when using on premise or IaaS.
Since Microsoft is in charge of the runtime, OS and middleware, any changes and
settings that get changed outside of your dedicated application and data
environment are reset whenever Microsoft performs an update or reboot of the
system.
A number of
solutions exist for Sitecore and PaaS and there is quite some history around
them.
The PaaS Hybrid solution
It might be
good to briefly touch on this solution before we dive into the other solutions
that are available. Hybrid means that the different Sitecore roles are placed
on different cloud models. Generally the CM (content management) environment is
placed on IaaS whereas the CD (content delivery) environments are hosted in
PaaS. The means as to how the deployments, provisioning and configurations can
be handled are described by Sitecore in more detail.
The Sitecore Azure module
On December
2011 – Sitecore released a first version of their Azure module. This module was
to be installed as any Sitecore module into your internal Content Management
environment combined with a Sitecore Azure environment file. It offered the
following Azure capabilities: Cloud Service, Storage Service, SQL Databases
Service, Traffic Manager Service, and Cache Service.
For more information go
here: https://sdn.sitecore.net/upload/sdn5/products/azure/110/getting_started_with_sitecore_azure_110-a4.pdf
Through the interface, a number of hosting locations allowed for the creation
of an Azure Content Delivery Environment:
The overall
idea behind this module was sane, but it came with some overall flaws and early
product problems. First off, not all existing modules were supported by the Azure
PaaS model. And furthermore, even newly created modules were not guaranteed to
be PaaS enabled.
You can
check the entire list here: https://kb.sitecore.net/articles/880886
Another
problem was that the module had some issues with SQL Azure, especially when
upgrading and deploying.
A number of issues have been listed here: https://doc.sitecore.net/cloud/81/azure/using_sitecore_azure/troubleshooting_sitecore_azure ...as this
list is quite extensive, I chose not to go into detail on this.
Bottomline:
Great idea but not to good in real life projects that need to run really smooth
and have error-free deployments
So, even
though this approach to PaaS seems like a sure win, keep in mind that to any
solution there still is an amount of effort that needs to be performed. And
certain implementations and modules will simply not yet be suited for the PaaS
architecture. That simply is the tradeoff between self-managed and provided
services.
Sitecore with pure PaaS
Sitecore
has now opened up a new chapter by introducing Microsoft Azure’s PaaS solution
with Web Apps. As this is a venture the stepped in to together with Microsoft,
you can expect to see a whole lot of high-value seminars and webinars coming your
way on this topic.
What is so
different and what does this offer?
- No longer restricted to a number of predefined configurations
- Full flexibility to use ARM templates to provision the environments of your choice
- Fast and Easy deployment through web deploy with
- Based on Azure best practices allowing for flexibility and ease of scaling
- Development improvements through streamlined deployments, remote debugging and advanced application insights
Ideally, as
is the idea with any and all of the Azure solutions, this should over time not
only reduce your overall development cost but also reduce your hosting cost.
Opening more budget to analyze and develop all those features requested by the
business department.
For more specific
information on the Sitecore cloud solution, go here: https://doc.sitecore.net/cloud
And a
fantastic document by Pieter Brinkman on the benefits listed above, with more
detail on the solution and Web Apps right here: https://www.sitecore.net/en/company/blog/489/five-reasons-why-microsoft-azure-web-apps-and-sitecore-are-a-match-made-in-heaven-4415
Want to know
how to go forward from here and use the ARM templates? Then head on over to the
getting started section here: http://www.sitecore.net/getting-started/deployment/sitecore-on-azure
Any pitfalls?
As this is
a new solution, there is still a steep learning curve. And yes, you will need
to know more on Azure then we used to know before. But that it turn will give
more flexibility and ability to manage that same cloud environment.
However, some
things still need some clarifications I guess:
- How will licensing keep up with this? If I don’t have a Consumption based license, will I be able to use this?
- A number of possible solutions still exist on where configurations per environment should be stored. It is good that multiple solutions exist rather than being unable to perform that task, but it would be even better if only a single solution was preferred and put forward as best-practice.
- The sample ARM templates still need to be expanded on to cover heavier topologies. As this approach will become more globally adopted and more knowledge gets retained, this will go away
- A number of solutions are still not able to run in the PaaS solution:
- ExM
- WFFM
- FxM
It is good to see that Sitecore and Microsoft are working together so closely both from a development and architectural point of view. This synergy will really help to reach out into the future and serve faster, more scalable top of the line enterprise solutions.
Good Post! Thank you so much for sharing this pretty post, it was so good to read and useful to improve my knowledge as updated one, keep blogging…
ReplyDeleteMicrosoft Azure Online Training
Thank u for this information
ReplyDeletehttp://www.mistltd.com
All the development code can be protected through cyber security you can learn through cyber security training
ReplyDeleteCloud models are very impressive. concepts are represented very neatly in the manner.
ReplyDeleteMicrosoft Windows Azure Training in Chennai | Certification | Online Course Training | Microsoft Windows Azure Training in Bangalore | Certification | Online Course Training | Microsoft Windows Azure Training in Hyderabad | Certification | Online Course Training | Microsoft Windows Azure Training in Online | Certification | Online Course Training
C++ Training Institute in Pitampura
ReplyDeleteObviously a satisfying estimation. i've affirmation this bewildering announce. much obliged to you for sharing proposal generally it. I in truth further to that. much appreciated accurately part to your meet. Wifi Hack Online
ReplyDeleteI waterfrontt any expression to understand this call.....truely i'm dazzled from this make recognized....the person that make this screen it changed into an excellent human..thanks for shared this long past us. Norton Product Key Generator
ReplyDeleteGlorious web site! I love the way it is straightforward upon my eyes it's far. I'm contemplating the way in which I might be prompted whenever another conspicuous screen has been made. glancing through out extra new updates. Have a colossal extensive stretches of significant stretches of light hours!! https://wishesquotz.com/happy-birthday-wishes-for-son-in-law/
ReplyDelete