Practice Microsoft Azure AZ-104 Administrator with free sample questions, timed mock exams, topic drills, and detailed answer explanations in IT Mastery.
Use this AZ-104 exam simulator page when you want realistic AZ-104 practice exam questions, clearer explanations, and a direct route into the full IT Mastery experience on web, iOS, and Android. This page is built for search intent like AZ-104 mock exam, AZ-104 practice test, Azure Administrator simulator, and AZ-104 practice questions.
Start a practice session for Microsoft Azure Administrator (AZ-104) below, or open the full app in a new tab. For the best experience, open the full app in a new tab and navigate with swipes/gestures or the mouse wheel—just like on your phone or tablet.
Open Full App in a New TabA small set of questions is available for free preview. Subscribers can unlock full access by signing in with the same account they use on web and mobile.
Prefer to practice on your phone or tablet? Download the IT Mastery – AWS, Azure, GCP & CompTIA exam prep app for iOS or IT Mastery app on Google Play (Android) and use the same account across web and mobile.
AZ-104 questions usually reward the option that is operationally realistic, least-privilege aligned, and consistent with Azure-native management patterns rather than the most elaborate design.
These sample questions include the same mix of single-answer and multiple-response items you should practice for AZ-104. Use them to check your readiness here, then move into the full IT Mastery question bank for broader timed coverage.
Topic: Domain 5: Monitor and maintain Azure resources
You manage Azure Site Recovery for a production VM named WebVM1. You must validate the disaster recovery plan without impacting the running production workload or its network connectivity.
Based on the Failover options shown in the exhibit, what should you do?
Exhibit:
| Operation | Description | Impact on production |
|---|---|---|
| Planned failover | Shuts down and fails over the primary VM to target | Production VM is stopped/migrated |
| Unplanned failover | Fails over using latest replicated data | Production VM may still be running; data loss possible |
| Test failover | Starts a test VM copy in an isolated test network | No impact to production VM or network |
Options:
Best answer: B
Explanation: The choice to run a Test failover for WebVM1 to an isolated test network and then perform test cleanup directly matches the exhibit entry for Test failover: it “starts a test VM copy in an isolated test network” with “no impact to production VM or network.” This fulfills the requirement to validate DR while keeping the production workload and its network connectivity unaffected.
Topic: Domain 5: Monitor and maintain Azure resources
Which of the following statements about Azure Monitor workbooks are correct for building operational views of your environment? (Select THREE.)
Options:
Correct answers: A, E, and F
Explanation: The statement that workbooks can combine metrics and log query results from multiple Azure resources is correct because workbooks are specifically designed for multi-source, multi-resource views, including both metric and KQL-based visualizations.
The statement about supporting parameters is correct because workbooks can use dropdowns, text inputs, time pickers, and other controls whose values can be passed into multiple queries and visualizations, allowing operators to filter the entire workbook by subscription, resource group, time range, or other criteria.
The statement that workbooks are ARM resources stored in resource groups and secured with Azure RBAC is correct because each workbook is an Azure resource type. As such, it is created in a resource group and access to view or edit it is controlled by RBAC roles at the resource, resource group, or subscription scope.
Topic: Domain 3: Deploy and manage Azure compute resources
You manage an ARM template that deploys a single virtual machine. The VM size is hard-coded, and the template does not return any values after deployment. You must reuse the template for test and production with different VM sizes and automatically display the VM’s public IP after each deployment. Which change to the template best meets these goals?
Current template skeleton:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"type": "Microsoft.Compute/virtualMachines",
"name": "appvm1",
"apiVersion": "2023-03-01",
"location": "[resourceGroup().location]",
"properties": {
"hardwareProfile": {
"vmSize": "Standard_DS2_v2"
}
}
}
]
}
Options:
[variables('vmSize')] in the VM hardwareProfile; no changes are made to outputs.[parameters('vmSize')] in the VM hardwareProfile, and add an outputs section that returns the public IP resource’s properties.ipAddress.Best answer: C
Explanation: The choice that defines a vmSize parameter, uses [parameters('vmSize')] in the VM resource, and adds an outputs section that returns the public IP’s properties.ipAddress directly addresses both requirements.
It uses the parameters section for deployment-time configurability, allowing different VM sizes in test and production without modifying the template. It also uses the outputs section to surface the public IP value at the end of deployment, improving operational visibility. This is precisely how ARM template structure is intended to be used for reusable and observable deployments.
Topic: Domain 4: Configure and manage virtual networking
You manage the public DNS zone contoso.com in Azure DNS. A web server is reachable on public IP address 52.160.10.20 and must be accessible as both www.contoso.com and shop.contoso.com. Which of the following Azure DNS record configurations is INCORRECT for this requirement?
Options:
Best answer: A
Explanation: The option that creates a CNAME record for shop.contoso.com targeting “52.160.10.20” is incorrect because CNAME targets must be hostnames, not IP addresses. Azure DNS expects the CNAME value to be another DNS name that ultimately resolves to an IP through an A or AAAA record. Using an IP as a CNAME target violates DNS rules and does not meet the requirement to correctly map hostnames to the web server’s public IP.
Topic: Domain 3: Deploy and manage Azure compute resources
You manage a Bicep file that deploys an Azure Storage account:
resource sa 'Microsoft.Storage/storageAccounts@2023-01-01' = {
name: 'contosostore001'
location: resourceGroup().location
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
}
You must modify the Bicep file so that redeployment adds a tag environment=prod to this existing storage account. Which change should you make to the Bicep file?
Options:
param environment string = 'prod' and reference it only in an output value, without changing the resource body.Microsoft.Resources/tags that targets the storage account and sets environment=prod.existing keyword and then define tags in a separate variable block that references sa.tags block to the existing sa resource definition:resource sa 'Microsoft.Storage/storageAccounts@2023-01-01' = {
name: 'contosostore001'
location: resourceGroup().location
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
tags: {
environment: 'prod'
}
}
Best answer: D
Explanation: The choice that adds a tags block inside the existing sa resource definition directly instructs ARM to manage the tags of that storage account. This matches the standard pattern for tagging resources in Bicep, ensures the change is tracked in code, and allows an idempotent redeploy that only updates the tag while keeping the resource name, type, and SKU the same.
Topic: Domain 4: Configure and manage virtual networking
You are designing a new Azure landing zone and planning the virtual network layout and connectivity for several workloads. You must respect Azure virtual network scope/limits and correctly use service endpoints to secure PaaS services.
Which of the following configurations should you AVOID? (Select TWO.)
Options:
Correct answers: A and B
Explanation: The configuration that plans to create a single virtual network spanning two Azure regions is wrong because Azure does not support multi‑region VNets. Each VNet is bound to a single region; to connect regions you must use VNet peering or other connectivity options.
The configuration that enables an Azure Storage service endpoint “at the virtual network level” and assumes it covers all subnets is also incorrect. Service endpoints are a subnet‑scoped configuration. If you do not explicitly enable the endpoint on a particular subnet, traffic from that subnet will not be recognized as coming via the service endpoint, and corresponding firewall rules on the storage account will not apply as expected.
Topic: Domain 1: Manage Azure identities and governance
You are defining a standard tag set for new Azure resources to support cost allocation, environment separation, and clear ownership. Which combination of tag keys is the most appropriate baseline standard for this purpose?
Options:
Best answer: B
Explanation: The choice that uses CostCenter, Environment, Owner, Application satisfies all three stated needs:
This aligns with common Microsoft guidance for baseline tag keys and provides a strong foundation that can be extended with additional tags as needed.
Topic: Domain 5: Monitor and maintain Azure resources
You manage several Azure virtual machines that host a line-of-business application. You plan to use Azure Monitor VM Insights to troubleshoot intermittent performance and connectivity issues. Which of the following statements about VM Insights is INCORRECT?
Options:
Best answer: A
Explanation: The statement that VM Insights can automatically change NSG rules to resolve connectivity problems is incorrect because VM Insights does not perform configuration changes. It surfaces metrics, logs, and dependency information to help you diagnose issues, but actions such as editing NSG rules, changing routes, or reconfiguring VMs must be done manually or via separate automation. Treating VM Insights as an auto-remediation tool misrepresents its capabilities and could lead to unsafe expectations in production operations.
Topic: Domain 3: Deploy and manage Azure compute resources
Which TWO statements about Azure Container Apps environments, ingress, and revisions are correct? (Select TWO.)
Options:
Correct answers: D and E
Explanation: The statement that an Azure Container Apps environment provides a secure boundary and shared runtime/networking fabric is correct because environments are explicitly designed as multi-tenant containers for multiple apps in one region, with shared infrastructure for networking, logging, and Dapr.
The statement about revisions supporting percentage-based traffic routing is also correct. Revisions allow you to run multiple versions of the same app side by side and configure weights (for example, 80/20) so that incoming HTTP requests are distributed between them for safe rollouts.
Topic: Domain 4: Configure and manage virtual networking
Which of the following statements about Azure virtual network service endpoints and their relationship to virtual networks and subnets are correct? (Select THREE.)
Options:
Correct answers: C, D, and E
Explanation: The statement that service endpoints are enabled on a specific subnet and only benefit resources in that subnet is correct because configuration is always scoped to a subnet, and routing changes apply only to that subnet.
The statement about combining a service endpoint with a storage account firewall is also correct. Enabling a service endpoint on the subnet and then allowing that VNet/subnet in the storage account’s network rules lets resources in that subnet reach the account while other public internet traffic is blocked.
The statement that service endpoints extend your VNet address space to the PaaS service over the Azure backbone, without requiring a private IP in the VNet, accurately reflects how service endpoints work. They keep the PaaS resource’s public IP but route traffic over Microsoft’s backbone and do not inject a private IP into the VNet, which distinguishes them from private endpoints.
Topic: Domain 3: Deploy and manage Azure compute resources
You manage a new microservices-based workload that will run entirely in Azure. The development team packages each component as a Linux container image and pushes them to Azure Container Registry. Some components are HTTP APIs that must be reachable from the internet via HTTPS, and other components are background workers that process messages from an Azure Service Bus queue. The team has no Kubernetes experience and wants to minimize infrastructure management while meeting these requirements:
You must recommend a single Azure hosting platform for this workload. Which option should you choose?
Options:
Best answer: B
Explanation: Choosing Azure Container Apps in a Container Apps environment with separate container apps for APIs and worker services best meets all the requirements:
Topic: Domain 3: Deploy and manage Azure compute resources
You administer a production Windows web app hosted in Azure App Service. The app stores its content in the wwwroot folder and uses an Azure SQL Database referenced via an app setting connection string. The app also uses Azure Key Vault for secrets and an Azure DNS zone for a custom domain.
Compliance requires:
You decide to use Azure App Service backup for the web app where appropriate and use native backup features for other services as needed.
Which of the following backup configurations should you AVOID? (Select THREE.)
Options:
Correct answers: B, C, and E
Explanation: The configuration that schedules weekly backups to a locally redundant storage account in the same region is clearly unsuitable. Weekly backups cannot provide daily restore points, and locally redundant storage in the same region does not satisfy the requirement to keep backups regionally separate.
The configuration that relies on App Service backup to protect Azure Key Vault secrets and the Azure DNS zone is unsafe because App Service backup only understands the web app and supported databases; it does not reach into external services. Without separate backup or export for those services, their critical configuration is unprotected.
The configuration that assumes App Service backup will include all aspects of the App Service resource, such as custom domains, TLS/SSL bindings, and VNet integration, is also an anti-pattern. App Service backup focuses on app content and selected configuration (for example, app settings and connection strings), not all platform-level settings. Failing to export or template those settings means you cannot fully reconstruct the environment from App Service backups alone.
Topic: Domain 1: Manage Azure identities and governance
Which of the following statements about Azure role assignment scopes is NOT correct?
Options:
Best answer: B
Explanation: The statement claiming that a role assignment at a specific resource scope automatically grants the same role at the parent resource group and subscription is incorrect because RBAC inheritance in Azure is strictly top-down, not bottom-up. When you assign a role at a resource scope, the user gains permissions only on that resource, not on the containing resource group or subscription.
This choice is therefore the one NOT-correct statement and is the correct answer for the question.
Topic: Domain 3: Deploy and manage Azure compute resources
You administer an Azure VM that runs a 24x7 line-of-business database. Azure Backup creates a VM backup once per day at 00:00 and keeps daily backups for 30 days.
A new requirement states that, for disk recovery, you must have a recovery point objective (RPO) of no more than 45 minutes of data loss. You decide to keep the daily Azure Backup for long-term protection and add regular managed disk snapshots for short-term protection.
Snapshots will be taken at a fixed interval throughout the day. Assume worst-case data loss equals the time between snapshots, and that you want to minimize the total number of snapshots per day.
You may calculate snapshots per day as:
[
\text{snapshots per day} = \frac{24\text{ hours}}{\text{snapshot interval in hours}}
]
Which configuration should you use?
Options:
Best answer: B
Explanation: The option that keeps daily Azure Backup and adds snapshots every 45 minutes is best because it:
Topic: Domain 4: Configure and manage virtual networking
Which of the following statements about configuring DNS for Azure virtual networks are correct? (Select THREE.)
Options:
Correct answers: A, B, and E
Explanation: The statement that the VNet uses Azure-provided DNS by default is correct because Azure automatically assigns its internal DNS service to VNets unless you explicitly specify custom DNS servers.
The statement that setting custom DNS on a VNet applies to all subnets (with NIC-level overrides possible) is correct because VNet DNS is a VNet-wide setting. All subnets inherit it, and NIC-specific DNS is only used when you intentionally override the VNet defaults.
The statement that existing VMs begin using new VNet DNS settings after a restart or DHCP lease renewal is also correct. DNS configuration is delivered via DHCP, so VMs need a lease renewal (often triggered by a reboot) to acquire the updated DNS server list.
Topic: Domain 1: Manage Azure identities and governance
You administer several Azure subscriptions used for production workloads. Leadership wants a single place to assign Azure Policy so the same security rules automatically apply to all production subscriptions. Which Azure construct should you use?
Options:
Best answer: B
Explanation: Using a management group that contains all production subscriptions is correct because management groups sit above subscriptions and are explicitly designed to provide centralized governance. Assigning Azure Policy at the management group scope ensures that all child subscriptions automatically receive and enforce the same policy set without needing per-subscription configuration.
Topic: Domain 3: Deploy and manage Azure compute resources
Which TWO statements about configuring environment variables, secrets, and networking for Azure Container Instances are NOT correct or represent unsafe guidance? (Select TWO.)
Options:
Correct answers: E and F
Explanation: The incorrect or unsafe statements are:
The statement that it is safe to store database passwords as plain-text environment variables in ACI because environment variables are automatically hidden in the portal. This is unsafe; anyone with appropriate access can still retrieve them via the portal, CLI, or template export. Environment variables should not be relied on as a secure secret store for high-value secrets.
The statement that an ACI container group can simultaneously use both a public IP and a private IP from a VNet subnet for inbound access. ACI does not support dual inbound IP configurations on a single container group in this way. You either deploy the group with a public IP (no VNet integration) or into a VNet (private IP only), not both together for the same container group.
Topic: Domain 4: Configure and manage virtual networking
You host an internal order-processing API on three Azure VMs in subnet backend-subnet of vnet-prod. The VMs are behind an Azure load balancer named prod-ilb. Only clients inside vnet-prod must access the API; no internet traffic should reach the service.
The following exhibit shows the current configuration of prod-ilb.
| Property | Value |
|---|---|
| SKU | Standard |
| Type | Public load balancer |
| Frontend IP config name | prod-ilb-fe |
| Frontend IP type | Public |
| Frontend IP address | 52.160.10.24 |
| Public IP resource | prod-ilb-pip |
| Virtual network | vnet-prod (10.20.0.0/16) |
| Backend pool | backendpool (3 NICs) |
| Load-balancing rule | TCP 443 from prod-ilb-fe |
You must change the configuration so that traffic is distributed privately within the virtual network and the API is not reachable from the internet.
Based on the information in the exhibit, what should you do?
Options:
backend-subnet, then update the load-balancing rule to use the new frontend.backend-subnet that denies all inbound traffic from the internet.Best answer: B
Explanation: Creating a new frontend IP configuration with a private IP address on backend-subnet and updating the load-balancing rule to use that frontend directly implements an internal load balancer pattern. The frontend is no longer bound to a public IP, so there is no internet-facing endpoint, and traffic is distributed privately within vnet-prod to the three VM NICs in backendpool. This exactly matches the requirement for private-only traffic distribution within the virtual network.
Topic: Domain 3: Deploy and manage Azure compute resources
You manage an Azure VM running Windows Server that hosts a SQL Server database. The VM uses a premium SSD OS disk and a separate premium SSD data disk that stores only the database transaction log files. The log volume is write-intensive with very few reads. You must: improve general OS responsiveness, follow Microsoft-recommended settings for write-intensive database log disks, and keep the configuration simple using built-in host caching options. Which disk caching configuration should you use?
Options:
Best answer: C
Explanation: The choice that configures Read/Write caching on the OS disk and None (no caching) on the data/log disk best matches all requirements.
Topic: Domain 3: Deploy and manage Azure compute resources
Which TWO of the following statements about Azure virtual machine availability sets are INCORRECT? (Select TWO.)
Options:
Correct answers: A and C
Explanation: The statement that availability sets distribute VMs across multiple Azure regions is incorrect because availability sets are strictly a regional construct; they operate only within one datacenter in a single region. Cross‑region resilience requires additional deployments, such as a second set of VMs in another region.
The statement that you can add any existing VM to an availability set at any time without redeploying is also incorrect. Azure requires that a VM be created within an availability set so it can be placed appropriately in fault and update domains. Moving an existing VM into an availability set involves deletion and redeployment (or recreation) of the VM, not a simple property change.
Topic: Domain 2: Implement and manage storage
Which THREE statements about using Microsoft-managed keys versus customer-managed keys for Azure Storage encryption at rest are correct? (Select THREE.)
Options:
Correct answers: B, C, and F
Explanation: The statement that Microsoft-managed keys are created, managed, and rotated automatically is correct because SSE with Microsoft-managed keys is the default behavior; Azure handles everything without any customer configuration.
The statement that customer-managed keys are stored in Azure Key Vault or a managed HSM and that you control their lifecycle is correct; CMKs are integrated with those services and you define policies, rotation, and deletion.
The statement about organizations with strict compliance or separation-of-duties requirements preferring customer-managed keys is also correct. Customer-managed keys provide clear ownership, audit logs, and explicit control over key usage, which is important for many regulated industries.
Topic: Domain 2: Implement and manage storage
You administer an Azure Storage account for marketing. They will host product images in a new blob container and reference them from a public website. Images must be readable anonymously, but users must not list all blobs or view container metadata. You want to use a simple built-in setting, not shared access signatures. Which public access level should you configure?
Options:
Best answer: D
Explanation: The choice that sets the container to Blob public access is correct because it:
This aligns exactly with the scenario’s functional and security needs.
Topic: Domain 4: Configure and manage virtual networking
You manage an Azure virtual network with two subnets: AppSubnet for application VMs and AdminSubnet for management tools. The application stores data in an Azure Storage account named appdatawest. You must:
Which configuration should you implement to meet these requirements with the least complexity?
Options:
Best answer: A
Explanation: Enabling a Microsoft.Storage service endpoint on AppSubnet and configuring the storage account to allow only that virtual network subnet with Selected networks is the only option that:
This directly uses the designed combination of service endpoints plus storage firewall rules to secure PaaS access by subnet.
Topic: Domain 5: Monitor and maintain Azure resources
You manage several production Azure Storage accounts that hold customer data. Security requires that:
Options:
Best answer: C
Explanation: The configuration that sends only metrics to a Log Analytics workspace and stores logs in a storage account with public anonymous read access is incorrect because it misses two key requirements:
Because it both fails the functional requirement (searchability) and the security requirement (no public exposure), this diagnostic configuration is unambiguously wrong.
If you want concept-first reading before heavier simulator work, use the companion guide at TechExamLexicon.com .