Skip to content

Latest commit

 

History

History
41 lines (36 loc) · 4.89 KB

File metadata and controls

41 lines (36 loc) · 4.89 KB

Business Continuity and Disaster Recovery

Design Considerations

  • If an Application Gateway is used along with App Service or App Service Environment, consider Recovery Point Objective (RPO) and Recovery Time Objective(RTO) requirements, as those will dictate if App Gateway needs to be deployed in:
    • Single or Multi Region
    • Active-Active or Active-Standby Configuration
  • Consider whether a single point of entry or multiple entry points are required based on where the requests are coming from. This will facilitate decision for Traffic Manager or Azure Front Door
    • Is cost a concern?
    • Is latency or an extra hop a concern?
    • Any third-party solution used to direct traffic to App Gateway?
  • Backup of App Gateway configuration – Only ARM Template? Where is it stored and how it’ll be utilized – Manually or through automation e.g., ADO pipelines?
  • Consider the information that can be backed up and the requirements and restrictions

Multi-Tenanted:

  • If your application needs to be redundant across regions, deploy the solution in more than one region and use Traffic Manager or Azure Front Door to balance load between these deployments.
  • If your application span geographies, consider deploying to a single region in each applicable geography and use Traffic Manager or Azure Front Door to provide geography-based routing. This will provide enhanced performance and increased redundancy.
  • If you need to recover from a disaster, consider if redeploying the application from a CI/CD process would be adequate. Also consider that a web app is a component in a larger solution, and you will need to consider the DR processes for the other components in the solution.

App Service Environment:

Design Recommendations

Multi-Tenanted:

  • Deploy your App Service solution to at least 2 regions, and possibly to multiple geographies, if required.
  • Utilize Azure Front Door to provide load balancing and WAF capabilities between the different deployments.
  • Modify your CI/CD processes so that changes to the solution are deployed to each target region.
  • Ensure that your CI/CD processes are setup to re-deploy the solution in case a disaster impacts one or more of the deployments.

App Service Environment:

  • Deploy one instance of the ASE in 2 separate Availability Zones in the same region, or in 2 different regions if cross-regional high availability is required.
  • Where your ASE instances are deployed across Availability Zones in the same region, use Azure Application Gateway to provide load balancing and WAF capabilities between the instances.
  • Where cross-regional high availability is required, utilize Azure Front Door to provide load balancing and WAF capabilities between the different instances.
  • Modify your CI/CD processes so that changes to the solution are deployed to each target ASE instance.

Azure Cache for Redis Enterprise:

  • You can achieve different tiers of high availability.

    • 99.9% (Default configuration, deploying Azure Cache for Redis Enterprise without Zone Redudancy option enabled)
    • 99.99% (Deploying Azure Cache for Redis Enterprise with Zone Redundancy option enabled)
    • 99.999% (Deploying Azure Cache fore Redis Enterprise with Zone Redundancy option enabled + Active Geo Replication)
  • The application should decide to which instance or instances use for read and write requests. If you have deployed app services to multiple regions, the application should write/read to Azure Cache for Redis Enterprise located on the same region or the closest region.

  • In case of a region outage and using Active Geo Replication, remember to force-unlink the caches that are affected. This will ensure that the healthy clusters that are part of the replication group don't fail. Read more here