Overview
Deploy and manage Azure compute resources covers running workloads on Azure compute. It has four objective groups. Automating deployment covers interpreting, modifying and deploying ARM templates and Bicep files, and exporting or converting between them. Virtual machines covers creating VMs, encryption at host, moving VMs, sizes, disks, availability zones and sets, and Virtual Machine Scale Sets. Containers covers Azure Container Registry, Container Instances and Container Apps and their scaling. App Service covers App Service plans, scaling, custom domains and TLS, backup, networking and deployment slots.
At 20–25%, this is a top-weighted group testing practical compute administration. The exam rewards knowing how to deploy repeatably with infrastructure as code, how to size and make VMs resilient with zones and sets, when to use containers versus VMs versus App Service, and how App Service features such as deployment slots work.
How it's tested
AZ-104 questions in this group describe a compute deployment, resilience or scaling need and ask how to configure it. Watch for the failure scope in the wording, since a rack or update failure points to an availability set and a datacenter failure points to zones. Note whether the scenario wants a single container, a scalable app or a web app with slots.
-
Deploy as code
A repeatable-deployment need is described, and you choose ARM templates or Bicep and how to deploy them.
-
Make compute resilient
An availability requirement is described, and you choose availability zones, availability sets or scale sets.
-
Right compute service
A workload is described, and you choose VMs, containers or App Service.
An administrator must deploy several virtual machines so that they survive the failure of a datacenter within a region. An availability set protects against rack and hardware failures within a single datacenter but not a whole datacenter outage. Deploying the VMs across availability zones places them in physically separate datacenters within the region, surviving a datacenter failure, which is the resilience choice the exam expects for this requirement.
Functional groups 4
Official functional groups from the Microsoft outline, in outline order.
3.1 Automate deployment of resources by using ARM templates or Bicep filesInterpreting, modifying, deploying and converting ARM templates and Bicep.
- What it means
- This covers interpreting ARM templates and Bicep files, modifying existing templates and Bicep files, deploying resources with them, and exporting a deployment as a template or converting a template to Bicep.
- What to understand
- ARM templates and Bicep are infrastructure as code for repeatable, consistent deployment. Bicep is a simpler language that compiles to ARM JSON. Templates can be parameterized and exported from existing resources. The administrator reads and modifies these rather than always authoring from scratch.
- How it shows up
- A repeatable-deployment or template need is described, and you must interpret, modify or deploy an ARM template or Bicep file.
- Common confusion
- Confusing Bicep with ARM templates as separate systems; Bicep compiles to ARM JSON and uses the same deployment engine.
3.2 Create and configure virtual machinesVM creation, sizing, disks, encryption, zones, availability sets and scale sets.
- What it means
- This covers creating virtual machines, configuring encryption at host, moving VMs between resource groups, subscriptions or regions, managing VM sizes and disks, deploying to availability zones and availability sets, and deploying and configuring Virtual Machine Scale Sets.
- What to understand
- Availability sets protect against hardware and maintenance failures within a datacenter, while availability zones protect against datacenter failures within a region. Scale sets manage a group of identical VMs that scale automatically. VM size and disk type affect performance. Encryption at host protects data on the VM host.
- How it shows up
- A VM resilience, sizing or deployment need is described, and you must choose zones, sets, scale sets or the right configuration.
- Common confusion
- Confusing availability sets with availability zones; sets protect within a datacenter, while zones protect across datacenters in a region.
3.3 Provision and manage containers in the Azure portalContainer Registry, Container Instances and Container Apps, and scaling.
- What it means
- This covers creating and managing Azure Container Registry, provisioning containers with Azure Container Instances and Azure Container Apps, and managing sizing and scaling for both.
- What to understand
- Container Registry stores container images. Container Instances run single containers quickly for simple or burst workloads, while Container Apps runs containerized applications with scaling, including scale to zero, for microservices and event-driven workloads. Choosing between them depends on the workload complexity and scaling needs.
- How it shows up
- A container workload is described, and you must choose Container Registry, Container Instances or Container Apps.
- Common confusion
- Confusing Container Instances with Container Apps; Instances run simple single containers, while Container Apps runs scalable containerized applications.
3.4 Create and configure Azure App ServiceApp Service plans, scaling, custom domains, TLS, backup, networking and deployment slots.
- What it means
- This covers provisioning App Service plans, configuring scaling, creating App Services, configuring certificates and TLS, mapping custom DNS names, configuring backup and networking, and using deployment slots.
- What to understand
- An App Service plan defines the compute and scaling for hosted apps. Scaling can be up (bigger instances) or out (more instances). Deployment slots host staging versions that can be swapped into production for zero-downtime releases and easy rollback. TLS and custom domains secure and brand the app.
- How it shows up
- An App Service hosting, scaling or release need is described, and you must choose the plan, scaling or deployment slot configuration.
- Common confusion
- Confusing scaling up with scaling out; up changes instance size, while out changes instance count.
High-yield concepts
The terms, rules and formulas this domain turns into questions most often.
-
ARM templates and Bicep
Infrastructure as code for repeatable deployment.
- Remember
- Bicep compiles to ARM JSON.
- Tested as
- Deployment questions.
- Trap
- Treating them as separate systems.
-
Availability set
Protects VMs within a datacenter from hardware and maintenance failures.
- Remember
- It does not protect against datacenter outage.
- Tested as
- Resilience questions.
- Trap
- Confusing it with zones.
-
Availability zone
Physically separate datacenters within a region.
- Remember
- It protects against datacenter failure.
- Tested as
- Resilience questions.
- Trap
- Confusing it with a set.
-
Virtual Machine Scale Sets
A group of identical VMs that scale automatically.
- Remember
- For elastic, identical workloads.
- Tested as
- Scaling questions.
- Trap
- Managing individual VMs instead.
-
VM sizing and disks
Instance size and disk type affect performance and cost.
- Remember
- Match size and disk to the workload.
- Tested as
- VM questions.
- Trap
- Over- or under-provisioning.
-
Container Registry
Stores container images.
- Remember
- It is the image repository.
- Tested as
- Container questions.
- Trap
- Confusing it with a running container.
-
Container Instances vs. Container Apps
Simple single containers versus scalable containerized apps.
- Remember
- Container Apps scales, including to zero.
- Tested as
- Container questions.
- Trap
- Using Instances for scalable apps.
-
App Service plan
Defines compute and scaling for hosted apps.
- Remember
- Scaling up changes size, out changes count.
- Tested as
- App Service questions.
- Trap
- Confusing up and out scaling.
-
Deployment slots
Staging environments swapped into production.
- Remember
- They enable zero-downtime releases and rollback.
- Tested as
- App Service questions.
- Trap
- Deploying directly to production.
-
Scaling up vs. out
Bigger instances versus more instances.
- Remember
- Out adds instances for load.
- Tested as
- Scaling questions.
- Trap
- Confusing the two.
Side by side
Concepts candidates mix up, compared on the point that decides the answer.
Availability set vs. availability zone vs. scale set
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Availability set | Spreads VMs within a datacenter | Protects against hardware and maintenance | Confusing with zones |
| Availability zone | Separate datacenters in a region | Protects against datacenter outage | Confusing with a set |
| Scale set | Identical VMs that autoscale | Elastic capacity | Managing VMs individually |
Container Instances vs. Container Apps vs. App Service
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Container Instances | Single containers, quick to run | Simple or burst workloads | Using for scalable apps |
| Container Apps | Scalable containerized apps | Microservices, scale to zero | Confusing with Instances |
| App Service | Managed web app hosting | Web apps and APIs | Using for raw containers only |
Scaling up vs. out
| Concept | Meaning | Key difference | Common trap |
|---|---|---|---|
| Scale up | Larger instance | More power per instance | Confusing with out |
| Scale out | More instances | Handles more load | Confusing with up |
Exam traps
Each trap is an answer that looks right. Learn the clue that should change your mind.
-
Set for datacenter outage
- What candidates pick
- Use an availability set to survive a datacenter failure.
- Why it looks right
- Sets add resilience.
- Why it's wrong
- Availability sets protect within a datacenter; availability zones place VMs in separate datacenters to survive a datacenter outage.
Clue to watch for The requirement is to survive a datacenter failure within a region.
-
Instances for scalable app
- What candidates pick
- Use Azure Container Instances for a scalable microservices application.
- Why it looks right
- Instances run containers.
- Why it's wrong
- Container Apps runs scalable containerized applications with autoscaling, including scale to zero; Instances suit simple single containers.
Clue to watch for The app is a scalable microservices workload.
-
Scale up for more load
- What candidates pick
- Scale an App Service up to handle more concurrent users.
- Why it looks right
- Up increases power.
- Why it's wrong
- Scaling out adds more instances to handle more load; scaling up increases the size of each instance.
Clue to watch for The need is to handle more concurrent load.
-
Deploy straight to prod
- What candidates pick
- Deploy a new app version directly to the production App Service.
- Why it looks right
- It is direct.
- Why it's wrong
- Deployment slots let you deploy to staging and swap into production for zero-downtime release and easy rollback.
Clue to watch for The release must minimize downtime and allow rollback.
-
Author templates from scratch
- What candidates pick
- Write every ARM template by hand for each deployment.
- Why it looks right
- It seems thorough.
- Why it's wrong
- Existing resources can be exported as templates, and templates can be parameterized and reused, reducing effort.
Clue to watch for A repeatable deployment is needed and a resource already exists.
Answer framework
For any Domain 3 scenario, use these steps to find the answer AZ-104 expects.
- Identify whether the need is automated deployment, virtual machines, containers or App Service.
- For repeatable deployment, use ARM templates or Bicep, modifying or exporting existing ones rather than always authoring from scratch.
- For VM resilience, use availability zones to survive a datacenter outage, availability sets for within-datacenter protection, and scale sets for elastic identical capacity.
- For containers, choose Container Instances for simple single containers and Container Apps for scalable containerized applications.
- For App Service, size the plan, scale out for load, and use deployment slots for zero-downtime releases and rollback. Record the change so the administrative action is auditable and repeatable.
Practice question
Want more like this? The AZ-104 practice test has questions for every domain.
Checklist
0 of 10
Tick each one you can do without notes. Your ticks stay in this browser.
Study strategy
This is a hands-on, top-weighted compute domain, so deploy resources in a free subscription rather than only reading. Start with infrastructure as code: practice reading and modifying ARM templates and Bicep, and understand that Bicep compiles to ARM, so they share the deployment engine.
Next, master VM resilience, drilling the availability set versus availability zone distinction tied to datacenter failure, and learn scale sets for elastic capacity. Then cover containers, keeping Container Instances (simple single containers) and Container Apps (scalable applications) distinct, with Container Registry for images. Finally, learn App Service: plans, scaling up versus out, and deployment slots for zero-downtime releases.
Because the exam tests doing, deploy each resource type at least once. Redeploy one VM from an exported template to see which settings the template captures, and resize a scale set manually and with an autoscale rule to watch instance counts change. Afterwards, move to Domain 4, implementing and managing virtual networking.
FAQ
How much of AZ-104 is Domain 3?
Deploy and manage Azure compute resources is 20–25% of the exam, tied for the largest group.
What is the difference between an availability set and an availability zone?
An availability set spreads VMs across hardware within a single datacenter to protect against hardware and maintenance failures. Availability zones place VMs in physically separate datacenters within a region to protect against a datacenter outage.
What is the difference between ARM templates and Bicep?
Both are infrastructure as code for Azure. Bicep is a simpler, more readable language that compiles to ARM template JSON and uses the same deployment engine.
When should I use Container Apps instead of Container Instances?
Use Container Apps for scalable containerized applications such as microservices, including scale to zero. Container Instances suit simple, single-container or burst workloads.
What is the difference between scaling up and scaling out?
Scaling up increases the size of each instance for more power. Scaling out adds more instances to handle more load.
What are App Service deployment slots for?
Hosting staging versions of an app that can be swapped into production, enabling zero-downtime releases and easy rollback by swapping back.
How does Domain 3 connect to the rest of the exam?
Compute resources are governed by Domain 1's access controls, store data in Domain 2's storage, connect through Domain 4's networking, and are monitored by Domain 5.
Other Cloud Computing certifications
Where the same subject shows up in other exams. Cards marked "Same subject" open the matching domain.
- AWS Certified Solutions Architect - Associate Study guide
- AWS Certified Cloud Practitioner Study guide
- AWS Certified SysOps Administrator - Associate Study guide
- AWS Certified Solutions Architect - Professional Study guide
- Microsoft 365 Fundamentals Study guide
- Azure Developer Associate Study guide
- Google Cloud Associate Cloud Engineer Study guide
- CompTIA Cloud+ Study guide
- Microsoft Certified: Azure Fundamentals Study guide
- AWS Certified Developer - Associate Study guide
- HashiCorp Certified: Terraform Associate Study guide
- Azure Solutions Architect Expert Study guide
Test your Domain 3 knowledge
You have covered infrastructure as code, VMs, containers and App Service. Test whether you can deploy and make compute resilient under exam conditions.
Keep going
- Training Training Built on your Weak areas
- Practice test Questions by domain, with explanations
- Mock exam Full length, timed like the real exam
- Readiness test Find your weakest domain in minutes
- Cheat sheet Key terms and formulas on one page
- Ask the AZ-104 AI tutor Get any concept explained your way