Microsoft Azure¶
Synopsis¶
Atlas supports deploying clusters onto Microsoft Azure. This page provides reference material related to Atlas cluster deployments on Azure. You can't deploy serverless instances on Microsoft Azure.
Depending on your cluster tier, Atlas supports the following
Azure regions. While all of the following
regions support M10+
clusters, some regions don't support Free or
Shared-Tier clusters. A check mark indicates support for Free clusters,
Shared-Tier clusters, or Availability Zones. The Atlas
Region is the corresponding region name used by Atlas processes.
Regions with Availability Zones guarantee higher uptime for dedicated clusters deployed after September 12, 2019. Existing clusters in regions with Availability Zones are not automatically migrated. To learn more about Availability Zones, see Azure's documentation.
Due to their higher cost, it is recommended to use Switzerland West or UAE Central as a secondary disaster recovery (DR) region in a multi-region cluster if necessary.
- Use Switzerland West in conjunction with Switzerland North.
- Use UAE Central in conjunction with UAE North.
Cluster Configuration Options¶
Each Atlas cluster tier comes with a default set of resources. Atlas provides the following resource configuration options:
- Custom Storage Size
The size of the server root volume. Atlas clusters deployed onto Azure use premium SSDs. [1]
NoteRAM AvailabilityThe actual amount of RAM available to each cluster tier might be slightly less than the stated amount, due to memory that the kernel reserves.
NoteAs of October 18, 2021, the following Atlas clusters deployed to Azure offer 16,000 IOPS (up from 7,500) and 500 MB/second throughput (up from 250 MB/second):
- New clusters with 4 TB storage volumes.
- Existing clusters that you scale up to 4 TB storage volumes.
The following clusters tiers are available:
Cluster TiersDefault StorageDefault RAMM0.5 GBSharedM22 GBSharedM55 GBSharedM108 GB2 GBM2016 GB4 GBM3032 GB8 GBM4064 GB16 GBR40128 GB16 GBM50128 GB32 GBR50128 GB32 GBM60128 GB64 GBR60128 GB64 GBM80256 GB128 GBR80256 GB128 GBM200256 GB256 GBR200256 GB256 GBR300512 GB384 GBR400512 GB432 GBCan use this tier for a multi-cloud cluster.
Not available in the following regions:
- germanywestcentral
- switzerlandnorth
- switzerlandwest
NoteCluster Tier & API Naming ConventionsFor purposes of management with the Atlas Administration API, cluster tier names that are prepended with
R
instead of anM
(R40
for example) run a low-CPU version of the cluster. When creating or modifying a cluster with the API, be sure to specify your desired cluster class by name with theproviderSettings.instanceSizeName
attribute.ImportantMulti-Cloud Low-CPU clustersLow-CPU cluster tiers (R40, R50, R60, etc) are available in multi-cloud cluster configurations as long as the cluster tier is available for all the regions that the cluster uses.
Workloads typically require less than
2TB
.
Atlas configures the following resources automatically and does not allow user modification:
- Storage Speed
- The input/output operations per second (IOPS) [1] the system can perform. This value is fixed based on the specified custom storage size.
- Encrypted Storage Volumes
- Azure storage volumes are always encrypted.
Azure Fault Domains¶
Each Azure region includes a set number of fault domains. Fault domains consist of a group of virtual machines that share a common power source and network switch. For regions that have at least three fault domains (3FD), Atlas deploys clusters across three fault domains. For regions that only have two fault domains (2FD), Atlas deploys clusters across two fault domains.
The Atlas Add New Cluster form marks regions that support 3FD clusters as Recommended, as they provide higher availability.
The number of fault domains in a region has no effect on the number of MongoDB nodes Atlas can deploy. MongoDB Atlas clusters are always made of replica sets with a minimum of three MongoDB nodes.
For general information on Azure regions and fault domains, see Manage the availability of Windows virtual machines in Azure
Regions with at Least Three Fault Domains¶
If the selected Azure region has at least three fault domains, Atlas clusters are split across three fault domains. For example, a three node replica set cluster would have one node deployed onto each zone.
3FD clusters have higher availability compared to 2FD clusters. However, not all regions support 3FD clusters.
Regions with Only Two Fault Domains¶
If the selected Azure region has two fault domains, Atlas clusters are split across the two fault domains. For example, a three node replica set cluster would have two nodes deployed to one zone and the remaining node deployed to the other zone.
2FD clusters have a higher chance of loss of availability in the event of the loss of an zone than 3FD clusters. However, where latency or location are a priority, a region that supports 2FD clusters may be preferred.
[1] | (1, 2) For detailed documentation on Azure storage options, see High-performance Premium Storage and managed disks for VMs |
Integrations¶
Along with global region support, the following product integrations enable applications running on Azure, such as Azure Virtual Machines, Azure Functions, and Azure Container Instances, to use Atlas instances easily and securely.
Networking Services¶
- Azure Virtual Network: Set up network peering connections with Azure
- Azure Private Link: Set up private endpoints with Azure
Azure Key Vault:
Security and Identity Services¶
- Azure Active Directory (AD): Configure federated authentication to the MongoDB UI
- Azure Active Directory Domain Services: Configure database user authentication and authorization
Integrations with other Azure Services¶
- Azure Databricks: Read and write to Atlas using Databricks and Apache Spark
- Azure Data Factory: Copy data from Atlas using Data Factory
More Information¶
For more information on how to use Azure with Atlas most effectively, review the following best practices, guides, and case studies:
- Power BI Desktop: Connect to Atlas from Power BI Desktop
- Visual Studio (VS) Code: Work with MongoDB from VS Code