Getting started with the Sitecore Azure Toolkit

Last updated Monday, June 12, 2017 in Sitecore Azure Toolkit for Administrator, Developer
Keywords: Azure, Cloud, Search

This topic gives an overview of the Sitecore Azure Toolkit features, provisioning pipelines, and topologies as well as the features enabled by default for Sitecore on Microsoft Azure®.

The Sitecore Azure Toolkit contains the tools and resources that are necessary to prepare and deploy Sitecore solutions to the Microsoft Azure App Service®. Azure is a cloud-computing platform that provides a rich variety of services to help you create and run scalable applications without high upfront infrastructure investments.

The Sitecore Azure Toolkit simplifies the task of preparing and deploying a Sitecore solution with:

  • PowerShell commandlets to package a Sitecore instance into role-specific packages.
  • Out-of-the-box integration with Microsoft Azure services: Microsoft Azure SQL®, Microsoft Azure Redis Cache, Microsoft Application Insights®, Microsoft Azure Search®.
  • Prebuilt ARM templates for frequently used topologies: XM, XP, XP0 (single instance).
  • Configuration tweaks to run Sitecore on the Azure App Service.
  • Security features: HTTPS, low-privileged SQL access, secure Sitecore password.

Prerequisites

To use the Sitecore Azure Toolkit, you need:

  • .NET Framework 4.6
  • PowerShell 4.0
  • Microsoft Azure PowerShell®. The minimum version required is 2.0.1. To check your installed version, open PowerShell and run this command:

    Get-Module -ListAvailable -Name Azure -Refresh

  • Microsoft SQL Server Data-Tier Application Framework (DacFX) for SQL server 2012 or higher.

    Note

    This framework is usually installed with Microsoft SQL Server® or Microsoft Visual Studio®. You can also download DAC Fx from the Microsoft Download Center. DacFX is also installed with Microsoft Web Deploy 3.6 using the Web Platform Installer. In some software configurations Sitecore Azure Toolkit may not be able to load proper version of DacFx automatically.

  • An Azure subscription for deployments. You can sign up for a free trial account on the Microsoft Azure website.
  • Cloud-hosted storage for Sitecore WebDeploy packages. An Azure Storage account can be used for this purpose.
  • Cloud-hosted MongoDB cluster for XDB collection and tracking databases for use with XP and XP0.

Downloading the Sitecore Azure Toolkit

You can download the Sitecore Azure Toolkit from dev.sitecore.net, where you can also find the tools and resources necessary to package and deploy Sitecore solutions to the Azure App Service.

When you download the Sitecore Azure Toolkit, the zip file is marked as blocked by Microsoft Windows.

To unblock the zip file:

  1. In Windows Explorer, right-click the file and click Properties.
  2. In the Properties dialog, on the General tab, click Unblock.

The following resources are distributed separately:

Installing the Sitecore Azure Toolkit

Sitecore Azure Toolkit is a ZIP package and can be unpacked into a folder of the hard drive. When unpacked, Sitecore Azure Toolkit package creates the following files and folders:

  • Tools folder – Microsoft PowerShell commandlets and the necessary supplementary libraries.
    • Sitecore.Cloud.Cmdlets.psm1 – the main module containing the necessary commandlets.
  • Resources/8.2.1 – Version-specific resources for Sitecore 8.2 Update-1.
    • CargoPayloads – role-specific and feature-specific transformation packages.
    • MsDeployXmls – manifest files for WebDeploy packages.
    • Configs – configuration files for packaging tasks.
  • Top-level files and a Copyrights folder – README and licensing information.

To load the main module into a PowerShell session, run the following command in the folder where the toolkit is unpacked:

Import-Module .\tools\Sitecore.Cloud.Cmdlets.psm1 -Verbose 

This command loads the following into the PowerShell session:

  • Start-SitecoreAzureDeployment
  • Start-SitecoreAzurePackaging
  • ConvertTo-SitecoreWebDeployPackage

Azure Resource Manager templates

ARM templates are located on Github and provide a description of Sitecore environments hosted on Microsoft Azure App Service. The templates include definitions of the following resources:

  • Hosting plans for Sitecore instances.
  • Microsoft Azure SQL databases for content and reporting.
  • Redis Cache service for session state.
  • Microsoft Application Insights® for diagnostics.
  • Microsoft Azure Search for content search and contact segmentation index.

The templates are compatible with the WebDeploy packages available on dev.sitecore.net for the corresponding Sitecore version or produced by Sitecore Azure Toolkit.

Using the Sitecore Azure Toolkit