This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can trysigning in orchanging directories.
Access to this page requires authorization. You can trychanging directories.
This article is part six in a series of seven articles that help developers get started with Azure.
Before designing your application to run on Azure, you need to plan ahead. As you start, you need to understand some basic Azure concepts to make the best decisions for your scenario. Consider the information in the following sections when planning.
A region is a set of datacenters deployed within a latency-defined perimeter and connected by a dedicated regional low-latency network. Azure lets you deploy applications where you need them, including across multiple regions to deliver cross-region resiliency when needed.
Typically, you want to keep all resources for a solution in the same region to minimize latency between components of your application. For example, if your solution includes Azure App Service, a database, and Azure Blob Storage, create all these resources in the same Azure region.
Not every Azure service is available in every region. TheProducts available by region page helps you find a region where the Azure services your app needs are available.
A resource group in Azure is a logical container that groups Azure resources together. Every Azure resource belongs to one resource group.
Resource groups often group all the Azure resources needed for a solution in Azure. For example, if you have a web application deployed to Azure App Service that uses a SQL database, Azure Storage, and Azure Key Vault, it's common to place all these resources in a single resource group.

This approach makes it easier to identify the resources needed for the application to run and how they're related. Typically, the first step in creating resources for an app in Azure is creating the resource group that serves as a container for the app's resources.
If you've developed on-premises, you're familiar with promoting your code through dev, test, and production environments. In Azure, to create separate environments you would create a separate set of Azure resources for each environment you need.
Because it's important that each environment is an exact copy, usescripting to create resources needed for an environment or useinfrastructure as code (IaC) tools to declaratively specify the configuration of each environment. This ensures that the environment creation process is repeatable and also lets you create new environments on demand, such as for performance or security testing of your application.
Whether you're publishing apps to Azure with continuous integration or provisioning resources for a new environment, Azure integrates with popular DevOps tools. You can work with your existing tools and maximize your experience with support for tools like:
Was this page helpful?
Need help with this topic?
Want to try using Ask Learn to clarify or guide you through this topic?
Was this page helpful?
Want to try using Ask Learn to clarify or guide you through this topic?