Calculating Solution Service Level Agreement

April 10, 2024 ยท View on GitHub

The requirement for the web application is that the combined service level agreement for all components in the hot path is greater than 99.9%. The components in the hot path comprise of any service that is used in fulfilling a web request from a user.

Development

With a development environment, network isolation is not used. The following services are considered:

ServiceAzure SLA
Azure Front Door99.990%
Entra ID99.990%
Azure App Service99.950%
Redis Cache99.900%
Azure SQL99.995%
Azure Storage99.900%
Key Vault99.990%
App Configuration99.900%
Combined SLA99.616%

Production - Single Region

When operating in production, network isolation is used. We do not consider the availability of the hub resources or VNET peering.

ServiceAzure SLA
Azure Front Door99.990%
Entra ID99.990%
Private DNS Zone100.00%
AFD Private Link99.990%
Azure App Service99.950%
- Private Link99.990%
Redis Cache99.900%
- Private Link99.990%
Azure SQL99.995%
- Private Link99.990%
Azure Storage99.900%
- Private Link99.990%
Key Vault99.990%
- Private Link99.990%
App Configuration99.900%
- Private Link99.990%
Combined SLA99.546%

Production - Two Regions

Since the single region SLA is less than the requested 99.9% availability, we have to deploy to two regions. Azure Front Door, Entra ID, and Private DNS Zones are shared resources. However, the rest of the services can be doubled up for more reliability.

ServiceAzure SLA
Shared Services
Azure Front Door99.990%
Entra ID99.990%
Private DNS Zone100.00%
Regional Services
AFD Private Link99.990%
Azure App Service99.950%
- Private Link99.990%
Redis Cache99.900%
- Private Link99.990%
Azure SQL99.995%
- Private Link99.990%
Azure Storage99.900%
- Private Link99.990%
Key Vault99.990%
- Private Link99.990%
App Configuration99.900%
- Private Link99.990%
Shared Services99.980%
Regional Services99.546%
Combined SLA99.9779%

Using dual regions will help us achieve the requested service level agreement.

For more information on how to calculate effective SLO, please refer to the Well Architected Framework.