Skip to main content

Azure App Service

·
azure app service
Hugo
Author
Hugo
DevOps Engineer based in London
Table of Contents

The region of the App and App Service Plan should be matched.

App Service Plan defines the underlying infrastructure and resources for hosting applications.

This includes the OS (Windows/Linux), Region, no of instances, instance type, and pricing tier.

App refers to the actual application or code that runs on the App Service Plan.

Multiple apps can share a single App Service Plan, which helps optimize resource utilization and costs.

ServiceSupported Operating Systems
Container InstanceLinux, Windows
Container AppLinux
App ServiceLinux, Windows
AKSWindows, Linux

Tiers
#

Free
#

  • Shared infrastructure
  • Limited compute resources
  • No custom domain or SSL support

Basic, Standard, Premium (Dedicated)
#

  • Dedicated VMs
  • Support for VNet integration (in Standard and above)
  • Auto-scaling (in Standard and above)

Isolated (App Service Environment)
#

  • Fully isolated and dedicated environment
  • Enhanced security features
  • Highest scale and performance options

Runtime Support
#

Both Windows and Linux

  • .NET Core 3.0 and later
  • PHP

Linux only

  • Ruby

Windows only

  • ASP.NET (traditional .NET Framework)

HA
#

For HA or DR scenarios, we can deploy App Services across multiple regions:

  • Create identical App Services in separate regions.
  • One region serves as the active site while the other acts as standby.
  • Azure Front Door can be used to route traffic between these regions.

Price Tiers
#

  • Standard and Premium Tiers:
    • Scaling:
      • Horizontal: Increase the no of VM instances
      • Vertical: Upgrade to a higher instance type
    • Slot Deployment: Available for managing multiple deployment slots (blue green deployment)
  • Isolated Tier:
    • Run app on a dedicated VNet, providing network isolation and improved security.
    • Can integrate with App Service Environment (ASE) - which run app on a dedicated host

Key Vault
#

To use Azure Key Vault in an App Service

  • Create Managed User Identity in App Service
  • Config IAM in Key Vault
  • Reference Key Vault secrets in App Service configuration

Logging
#

  • App Service Logs: Web Server Logging
  • Application Insights Profile: Performance Traces

Backup
#

App service backups are stored in a Storage Account.

We can create _backup.filter to exclude specific folders from the backup.

-*.avi
-*.mp4
-/wwwroot/large_files
+/wwwroot/important_folder

WebJob
#

  • It is used to run background tasks, similar to cron jobs in Windows.
  • It is not supported for App Service on Linux
  • For Linux, we can use Azure Functions with timer triggers instead.