Estimating detailed Managed Cloud resources usage


Understand The Current State Of Your Environment

The following links describe the differences between various Sitecore XP environments for the Sitecore Managed Cloud service, as well as related Azure components: Sitecore XP 9.0 and Sitecore XP 8.2. These are the default configurations when a new instance of Sitecore XP, XM, or xDB is provisioned.

Any scaling from the default configuration can incur additional charges.

To find out if you are using any configuration that is different from the default, you might need to get an overview of your current resources scale in Azure. There are two approaches available for this.

Approach 1: Manual

Start by logging in to the  Azure portal https://portal.azure.com. Go to All Services -> Subscriptions -> Find your subscription -> Select Resource Group. Sort the resources by type and check them as follows:

App Service

For content delivery, content management, processing, reporting and other app services, you can select the app service accordingly and check the current App Service Plan on the Overview page. Also, when you go to Scale up (App Service plan), you can see which Pricing Tier your app has.

For more information, see the Azure App Service plan overview and the example in the following section How you can understand the financial impact of scaling from the default configuration.

Azure SQL

For SQL Azure, select the appropriate database master, core, reporting, web, and so on.

For example, Standard S1: 20 DTUs for xP-Extra Small tier (for Sitecore XP 9.0). You can choose to scale up/down SQL by clicking Configure, under Settings.

Also, you can compare the specs with the ones listed here to make sure you have the right tier provisioned.

For more information, see Azure SQL Database pricing and Azure SQL Database – scalability.

Azure Search

For Azure Search, Azure Search size refers to Search Unit (SU), which is the unit of pricing used for Azure Search. It is calculated as the number of partitions (P) x number of replicas(R) (SU = RS X P).

Select your search service and go to the Scale section. The number of replicas and partitions are mentioned there and so is the Search Unit. Replicas and partitions can be scaled up using the scale option on the side bar.

Also, you can compare the specs with the ones listed here for Sitecore XP 9.0 or here for Sitecore XP 8.2 to make sure you have the right tier provisioned.

For more information, see Service limits in Azure Search and Choose a pricing tier for Azure Search.

Application Insights

Application Insights are basic for all topologies and tiers. Application Insights is billed based on the volume of telemetry data that your application sends and the number of web tests that you choose to run. The telemetry data is billed per Azure Log Analytics data ingestion rates.

For more information, see Azure Monitor pricing and Manage usage and costs for Application Insights.

Azure Redis Cache

Redis Cache exists in XP and XM topologies only. The default size in Sitecore XP 8.2 is C1 Standard across all tiers, and the default size in Sitecore XP 9.0 is also C1 Standard across all tiers except for the Extra Large tier, which comes with Standard C2.

You can choose to scale up to a higher standard or Premium tier by clicking Scale in the Azure Search service.

Also, you can compare the specs with the ones listed here for Sitecore XP 9.0 or here for Sitecore XP 8.2 to make sure you have the right tier provisioned.

Approach 2: PowerShell

You can check the current configuration of your different Azure resources programmatically using PowerShell:

# Login to your account
Login-AzureRmAccount
# Select Subscription
Select-AzureRmSubscription -SubscriptionName <Subscription Name>
# App Service
Write-Host "Azure app service configuration. " -fore Cyan
Get-AzureRmAppServicePlan | Format-Table Name, NumberOfSites, Location, @{ Label = "SkuPlain"; Expression= {"$($_.Sku.Capacity) x $($_.Sku.Size)"} }
# Azure SQL and Azure Search
foreach ($ss in Get-AzureRmResourceGroup | Get-AzureRmSqlServer) {
    Write-Host "Azure SQL:" -fore Cyan
    Get-AzureRmSqlDatabase -ResourceGroupName $($ss.ResourceGroupName) -ServerName $($ss.ServerName) | Format-Table    ServerName, DatabaseName, Location, CurrentServiceObjectiveName
    Write-Host "Azure Search:" -fore Cyan
    foreach ($searchResource in Get-AzureRmResource -ResourceType "Microsoft.Search/searchServices") {
        Get-AzureRmResource -ResourceType "Microsoft.Search/searchServices" -ResourceGroupName $($ss.ResourceGroupName) -ResourceName $searchResource.Name -ApiVersion 2015-08-19 | Format-Table ResourceName, Location, Sku, @{ Label = "Sizing"; Expression= {"$($_.Properties.replicaCount) replicas, $($_.Properties.PartitionCount) partitions"} }
    }
}
# Application Insights
Get-AzureRmApplicationInsights -ResourceGroupName <Resource group name> | ft Name,Location,AppId
# redis TBD
Write-Host "Azure Redis Cache:" -fore Cyan
Get-AzureRmRedisCache -ResourceGroupName < Resource group name > | Ft Name,Location,Type,Size,Sku,RedisConfiguration

Understand The Financial Impact Of Scaling

You can use the Azure Pricing Calculator to estimate the costs of any scaling that you perform on your Azure Managed Cloud resources.

On the left of the screen there is an index of available Azure services that you can add to the current estimate; these are broken down into categories such as Featured (most commonly used), Compute, Databases, Analytics, and so on. This allows you to make better decisions to scale up/down your resources by expediting the cost component of the decision.

The following is an example of how to use the Azure calculator to compare and estimate the prices for two App Services tiers for the Content Delivery (CD) server (Sitecore xP 9.0 Extra-small and Large):

As per this link, the Extra-small performance tier for the CD server is 1 x B2 (1 instance, Basic tier, and number 2 is the performance (size) level in Azure) and the Large performance tier is 4 x S3 (4 instances, Standard tier, and number 3 is the performance (size) level in Azure).

Therefore, to estimate and compare the prices using the Azure calculator:

  1. Open the Azure Pricing Calculator.
  2. In the Featured index, click App Service:
  3. In the pop-up, click View.
  4. Change the different parameters such as Region, Tier, and number of instances to get an estimate of the subtotal price per month. The following examples illustrate the Extra-small tier (1 x B2) and the Large tier (4 x S3):
    Sitecore xP 9.0 CD server - Extra-small tier (1 x B2)

    Sitecore xP 9.0 CD server - Large tier (4 x S3)

    Note that on the left, under More info, you can click Pricing details, which takes you to this link to see more pricing details. In addition, to see full details for App Service Plans, you can check this link.