hands-on lab

Working With Azure Cosmos DB

Up to 2h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


Lab Overview

Azure Cosmos DB is a fully-managed, globally-distributed, multi-model database. Databases in Cosmos DB are enterprise-ready and highly-available offering up to 99.999% availability SLA. In this Lab, you will learn how to manage Cosmos DB using the Azure Portal and Azure CLI. This Lab uses the MongoDB API in Cosmos DB to work with a document database model.

Lab Objectives

Upon completion of this Lab, you will be able to:

  • Understand the multi-model capabilities of Cosmos DB
  • Perform geo-replication and failovers in Cosmos DB
  • Understand the tradeoffs involved in deciding on a concurrency model and throughput level in Cosmos DB
  • Connect to MongoDB API Cosmos DB databases using MongoDB clients

Lab Prerequisites

You should be familiar with:

  • The concept of NoSQL and document databases
  • MongoDB commands are beneficial, but not required


December 5th, 2022 - Updated instructions and screenshots to reflect the latest UI

September 26th, 2022 - Updated lab to use the Cloud Academy Web Terminal

May 12, 2022 - Updated instructions and screenshots to reflect the latest UI

January 4th, 2022 - Updated instructions to address potential cloud shell interruption 

January 19th, 2021 - Updated mongo client to fix an incompatibility issue and updated screenshots and commands to match the latest Azure experience

April 13th, 2020 - Update the security policy to allow for more Azure regions.

March 24th, 2020 - Updated instructions to avoid using the free tier discount which causes deployment of the database to fail.

November 8th, 2019 - Updated Lab diagrams due to Azure changes

October 30th, 2019 - Updated Lab structure due to Azure changes

September 24th, 2019 - Updated instructions due to Azure changes

October 1st, 2018 - Updated instructions and screenshots to match the latest Azure interface and resolved an issue that prevented the Cosmos DB account from being created in certain cases.

Environment before

Environment after

About the author

Logan Rakai, opens in a new tab
Lead Content Developer - Labs
Learning paths

Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Security Specialist (CKS), Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.

LinkedIn, Twitter, GitHub

Covered topics

Lab steps

Logging in to the Microsoft Azure Portal
Creating an Azure Cosmos DB Database in the Azure Portal
Logging In to the Azure CLI in the Web Terminal
Creating a Cosmos DB Collection With the Azure CLI
Working with the Cosmos DB MongoDB API
Replicating the Cosmos DB Database Globally