AWS and Azure: SLAs and Service Credits
See how both AWS and Microsoft Azure handle breaches to their SLAs with this head-to-head comparison. Learn how each rewards users if their service goes down.
Join the DZone community and get the full member experience.
Join For FreeThe cloud SLA is a policy governing service level objectives by the cloud service providers.
Different types of cloud SLAs are: IaaS SLAs (with a distinction between compute and storage services), PaaS SLAs, and SaaS SLAs.
In general, service level objectives vary across service models.
Two main remedies in case of breach of the SLA are the accruing of service credits and the payment of penalties. The first consists of a reduction of the amount of charges to be paid; the second one relates to the amount to be paid by the provider. Both AWS and Azure cloud service providers always go with the first option of giving “service credits” in case of breaches in their in SLAs.
The “Service Credit” is the percentage of the applicable monthly service fees credited to customers following claim approval. Credits are the sole form of compensation for missed service commitments across all the SLAs that were reviewed, regardless of the service models. The calculation of service credits differs significantly from provider to provider.
AWS
In AWS, service credits are calculated as a percentage of the total charges paid by customer (excluding one-time payments, such as upfront payments made for reserved instances) for either Amazon EC2 or Amazon EBS (whichever was unavailable, or both if both were unavailable) in the region affected for the monthly billing cycle in which the region unavailability occurred in accordance with the uptime percentage.
“Monthly Uptime Percentage” is calculated by subtracting from 100% the percentage of minutes during the month in which Amazon EC2 or Amazon EBS, as applicable, was in the state of “Region Unavailable.” Monthly Uptime Percentage measurements exclude downtime resulting directly or indirectly from any Amazon EC2 SLA Exclusion (defined below).
“Region Unavailable” and “Region Unavailability” mean that more than one Availability Zone in which you are running an instance, within the same Region, is “Unavailable” to you.
“Unavailable” and “Unavailability” mean:
- For Amazon EC2, when all of your running instances have no external connectivity.
- For Amazon EBS, when all of your attached volumes perform zero read-write IO, with pending IO in the queue.
A “Service Credit” is a dollar credit, calculated as set forth below, that we may credit back to an eligible account.
AWS Services | Monthly Uptime percentage | Service Credit | Monthly Uptime calculation | Comments |
EC2 Instances & EBS Volumes | < 99.95% | 10% | 100% – EC2 or Amazon EBS was in state of “Region Unavailable” | “Region Unavailable” and “Region Unavailability” mean that more than one Availability Zone in which you are running an instance, within the same Region, is “Unavailable” to you. “Unavailable” and “Unavailability” mean: For Amazon EC2, when all of your running instances have no external connectivity. For Amazon EBS, when all of your attached volumes perform zero read-write IO, with pending IO in the queue. |
< 99% | 30% | |||
S3 (storage services) | < 99.9% | 10% | 100% – Error Rates | “Error Rate” means: Total No. of internal server errors / Total number of requests for applicable request during that five minute period |
< 99% | 30% | |||
S3 (storage services) Standard – Infrequent Access (Standard-IA) | < 99% | 10% | 100% – Error Rates | |
< 98% | 30% | |||
CloudFront (CDN service) | < 99.9% | 10% | 100% – Error Rates | |
< 99% | 25% | |||
RDS (DB service) | < 99.95% | 10% | 100% – percentage of 1 minutes period multi-AZ was unavailable | “Multi-AZ instance” means an Amazon RDS for MySQL, MariaDB, Oracle or PostgreSQL database instance with the Multi-AZ parameter set to true. “Unavailable” means that all connection requests to the running Multi-AZ instance fail during a 1 minute period. |
< 99% | 25% | |||
Route 53 (DNS service) | 5 – 30 minutes | 1 day | Duration was not 100% available | |
31 mins – 4 hours | 7 days | |||
More than 4 hours | 30 days |
Azure
Monthly Uptime Calculation and Service Levels for Virtual Machines
“Maximum Available Minutes” is the total accumulated minutes during a billing month for all Internet-facing VMs that have two or more instances deployed in the same Availability Set. Maximum Available Minutes is measured from when at least two virtual machines in the same Availability Set have both been started resultant from action initiated by the customer to the time the customer has initiated an action that would result in stopping or deleting the VMs.
“Downtime” is the total accumulated minutes that are part of Maximum Available Minutes that have no External Connectivity.
“Monthly Uptime Percentage” for Virtual Machines is calculated as Maximum Available Minutes less Downtime divided by Maximum Available Minutes in a billing month for a given Microsoft Azure subscription. Monthly Uptime Percentage is represented by the following formula:
Monthly Uptime % = (Maximum Available Minutes-Downtime) / Maximum Available Minutes
Monthly Uptime Calculation and Service Levels for Cloud Services
“Maximum Available Minutes” is the total accumulated minutes during a billing month for all Internet-facing roles that have two or more instances deployed in different Update Domains. Maximum Available Minutes is measured from when the Tenant has been deployed and its associated roles have been started resultant from action initiated by Customer to the time Customer has initiated an action that would result in stopping or deleting the Tenant.
“Downtime” is the total accumulated minutes that are part of Maximum Available Minutes that have no external connectivity.
“Monthly Uptime Percentage” for cloud services is calculated as Maximum Available Minutes less Downtime divided by Maximum Available Minutes in a billing month for a given Microsoft Azure subscription. Monthly Uptime Percentage is represented by the following formula:
Monthly Uptime % = (Maximum Available Minutes-Downtime) / Maximum Available Minutes
Azure Services | Monthly Uptime percentage | Service Credit | Monthly Uptime calculation | Comments |
Virtual Machines | < 99.99% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated minutes that are part of Maximum Available Minutes that have no External Connectivity. |
< 99% | 25% | |||
Express Route | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated minutes during a billing month for a given Microsoft Azure subscription during which the Dedicated Circuit is unavailable. |
< 99% | 25% | |||
VPN Gateway | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: Is the total accumulated Maximum Available Minutes during which a VPN Gateway is unavailable. |
< 99% | 25% | |||
Storage Service LRS, ZRS, GRS and RA-GRS (write requests) Accounts | < 99.9% | 10% | 100% – Average Error Rate | “Average Error Rate” for a billing month is the sum of Error Rates for each hour in the billing month divided by the total number of hours in the billing month. GRS – Geographically Redundant Storage “Cool Access Tier” is an attribute of a Blob Storage Account indicating that the data in the account is infrequently accessed and has a lower availability service level than data in other access tiers. |
< 99% | 25% | |||
Storage Service RA-GRS (read requests) Accounts | < 99.99% | 10% | 100% – Average Error Rate | |
< 99% | 25% | |||
Storage Service – LRS, GRS and RA-GRS (write requests) Blob Storage Accounts (Cool Access Tier) | < 99% | 10% | 100% – Average Error Rate | |
< 98% | 25% | |||
Storage Service – RA-GRS (read requests) Blob Storage Accounts (Cool Access Tier) | < 99.9% | 10% | 100% – Average Error Rate | |
< 98% | 25% | |||
Backup Service | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated Deployment Minutes across all Protected Items scheduled for Backup by you in a given Microsoft Azure subscription during which the Backup Service is unavailable for the Protected Item. |
< 99% | 25% | |||
StorSimple Service (Back-up) | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated Deployment Minutes across all Managed Items configured for Backup or Cloud Tiering by you in a given Microsoft Azure subscription during which the StorSimple Service is unavailable for the Managed Item. |
< 99% | 25% | |||
Azure Active Directory Basic | < 99.9% | 25% | ((User Minutes – Downtime ) / User Minutes) x 100 | Downtime: Any period of time when users are not able to log in to the service, log in to the Access Panel, access applications on the Access Panel and reset passwords; or any period of time IT administrators are not able to create, read, write and delete entries in the directory and/or provision/de-provision users to applications in the directory. Where Downtime is measured in user-minutes; that is, for each month, Downtime is the sum of the length (in minutes) of each Incident that occurs during that month multiplied by the number of users impacted by that Incident. |
< 99% | 50% | |||
< 95% | 100% | |||
Azure Active Directory Premium | < 99.9% | 25% | ((User Minutes – Downtime ) / User Minutes) x 100 | |
< 99% | 50% | |||
< 95% | 100% | |||
Application Gateway (Load balancer) | < 99.95% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: is the total accumulated Maximum Available Minutes during a billing month for a given Application Gateway Cloud Service during which the Application Gateway Cloud Service is unavailable. |
< 99% | 25% | |||
Traffic Manager (DNS service) | < 99.95% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated Deployment Minutes, across all Profiles deployed by you in a given Microsoft Azure subscription, during which the Profile is unavailable. |
< 99% | 25% | |||
CDN Service | < 99.9% | 10% | Downtime: To assess Downtime, Microsoft will review data from any commercially reasonable independent measurement system used by customer. | Monthly Uptime Percentage: The percentage of HTTP transactions in which the CDN responds to client requests and delivers the requested content without error. Monthly Uptime Percentage of the CDN Service is calculated as the number of times the object was delivered successfully divided by the total number of requests (after removing erroneous data). |
< 99.5% | 25% | |||
Site Recovery Service – On-Premises-to-Azure | Unencrypted: >4 hours Monthly RTO | 100% | Assumption: protected instance of 100G or lesser | Monthly Recovery Time Objective: The Monthly Recovery Time Objective for a specific Protected Instance configured for On-Premises-to-Azure replication in a given billing month is four hours for an unencrypted Protected Instance and six hours for an encrypted Protected Instance. One hour will be added to the monthly Recovery Time Objective for each additional 25GB over the initial 100GB Protected Instance size. |
Encrypted: >6 hours Monthly RTO | 100% | |||
Site Recovery Service – On-Premises-to-On-Premises | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: The total accumulated Failover Minutes in which the Failover of a Protected Instance is unsuccessful due to unavailability of the Site Recovery Service, provided that retries are continually attempted no less frequently than once every thirty minutes. |
< 99% | 25% | |||
SQL Database Service (Basic, Standard and Premium Tiers) | < 99.99% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | Downtime: is the total accumulated minutes during a billing month for a given Microsoft Azure subscription during which a given Database is unavailable. |
< 99% | 25% | |||
SQL Database Service (Web and Business Tiers) | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | |
< 99% | 25% | |||
SQL Server Stretch Database | < 99.9% | 10% | ((Maximum Available Minutes – Downtime ) / Maximum Available Minutes) x 100 | |
< 99% | 25% |
Published at DZone with permission of Christopher Sam K. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments