DEV Community

Cover image for AZ-104: Deploy and Manage Azure Compute Resources – Comprehensive Guide
Avesh
Avesh

Posted on

AZ-104: Deploy and Manage Azure Compute Resources – Comprehensive Guide

The AZ-104: Microsoft Azure Administrator certification exam is designed for IT professionals responsible for managing cloud services that span storage, security, networking, and compute in Microsoft Azure. One of the most crucial components of the exam is deploying and managing Azure compute resources, which is a key domain to master. This guide will cover all the critical topics related to Azure compute resources, ensuring you're well-prepared for the exam.


Table of Contents

  1. Introduction to Azure Compute Resources
  2. Azure Virtual Machines (VMs)
    • Creating and Configuring VMs
    • VM Size and Pricing Tiers
    • VM Scale Sets
    • Extending VMs with Extensions
    • Monitoring VMs
  3. Azure App Services
    • Creating and Managing App Services
    • App Service Plans
    • Deployment Slots
  4. Azure Kubernetes Service (AKS)
    • Cluster Deployment
    • Managing and Scaling AKS
  5. Azure Functions
    • Serverless Architecture with Functions
    • Triggers and Bindings
  6. Azure Container Instances (ACI)
    • Deploying Containers
    • Container Networking and Storage
  7. Azure Batch
    • High-Performance Computing (HPC) in Azure
  8. Key Azure Management Tools for Compute
    • Azure Portal
    • Azure CLI
    • PowerShell
    • ARM Templates
  9. Best Practices and Tips for the AZ-104 Exam

1. Introduction to Azure Compute Resources

Azure compute resources encompass the infrastructure required to host and run applications. This includes virtual machines, containers, serverless computing, and more. Understanding how to deploy and manage these compute resources is essential for passing the AZ-104 exam. The key services you need to be familiar with are Azure Virtual Machines (VMs), Azure App Services, Azure Kubernetes Service (AKS), Azure Functions, and Azure Container Instances (ACI).


2. Azure Virtual Machines (VMs)

Azure Virtual Machines (VMs) are the building blocks of compute services in Azure. They provide scalable, on-demand computing resources, allowing you to run applications and workloads in the cloud.

Creating and Configuring Virtual Machines

To create a VM, you can use the Azure Portal, Azure CLI, PowerShell, or ARM templates. When configuring a VM, you need to specify:

  • Operating System: Windows or Linux.
  • VM Size: Determines the number of CPU cores, memory, and storage.
  • Disks: Includes OS disks, data disks, and temporary disks.
  • Networking: VMs require a virtual network (VNet), network security groups (NSGs), and optionally, load balancers or VPNs.
  • Security: You can enable Azure Bastion, use SSH keys for Linux VMs, and leverage Azure AD integration for authentication.

VM Size and Pricing Tiers

Azure VMs come in various sizes and pricing tiers that dictate the resources allocated to your VM:

  • General Purpose: Balanced CPU-to-memory ratio (e.g., D-series, B-series).
  • Compute Optimized: High CPU-to-memory ratio (e.g., F-series).
  • Memory Optimized: High memory-to-CPU ratio (e.g., E-series, M-series).
  • Storage Optimized: For high-performance disk throughput (e.g., L-series).
  • GPU: Ideal for AI, ML, and rendering (e.g., N-series).

Pricing is influenced by the region, the size of the VM, and additional features such as managed disks or reserved instances.

VM Scale Sets

VM Scale Sets allow you to automatically scale up/down your VMs based on demand. They ensure high availability and can be integrated with Azure Load Balancers for distributing traffic.

Extending VMs with Extensions

VM extensions like Azure Monitor Agent, Custom Script Extension, and Network Watcher Agent add additional functionalities to your VMs, making them easier to manage and monitor.

Monitoring VMs

Azure Monitor is used to collect metrics, logs, and diagnostic data for VMs. Additionally, Azure Advisor provides recommendations for optimizing VM performance and cost.


3. Azure App Services

Azure App Services is a fully managed platform for building, deploying, and scaling web apps and APIs.

Creating and Managing App Services

You can easily create web apps using multiple runtimes like .NET, Java, PHP, Python, and Node.js. App Services handle scaling, security, and load balancing out-of-the-box.

App Service Plans

App Services are hosted in App Service Plans, which dictate the underlying infrastructure. App Service Plans define:

  • Pricing tiers: Free, Basic, Standard, Premium.
  • Scaling: Manual or auto-scaling options based on CPU, memory, or traffic.
  • Regional Availability: Plan must be created in a specific Azure region.

Deployment Slots

Deployment slots allow you to deploy different versions of your app for testing without affecting the production environment. You can then swap between slots once the new version is ready for production.


4. Azure Kubernetes Service (AKS)

Azure Kubernetes Service (AKS) is a managed container orchestration service that simplifies the deployment, scaling, and management of containerized applications.

Cluster Deployment

AKS allows you to deploy Kubernetes clusters with built-in monitoring and automated upgrades. You can manage your AKS cluster through the Azure CLI, Azure Portal, or kubectl.

Managing and Scaling AKS

AKS clusters can be scaled automatically using horizontal pod autoscaling based on CPU and memory usage. You can also enable cluster auto-scaling to automatically add or remove nodes based on workload demands.


5. Azure Functions

Azure Functions is a serverless computing service that allows you to run event-driven code without managing servers.

Serverless Architecture with Functions

Functions can be triggered by a variety of Azure services like HTTP requests, timers, or messages in Azure Storage Queues. This makes Functions ideal for running background jobs, processing events, or automating tasks.

Triggers and Bindings

Triggers start the execution of your Azure Function. Common triggers include HTTP requests, blob storage, or timers. Bindings simplify the interaction with other Azure services like storage or queues.


6. Azure Container Instances (ACI)

Azure Container Instances (ACI) provide a simple, fast, and cost-effective way to run containers in Azure without managing the underlying infrastructure.

Deploying Containers

With ACI, you can deploy Docker containers using the Azure CLI or Portal. ACI is perfect for running tasks like batch jobs, API backends, or microservices.

Container Networking and Storage

ACI supports container groups, allowing you to run multiple containers in the same container group with shared networking and storage.


7. Azure Batch

Azure Batch is designed for high-performance computing (HPC), enabling you to run large-scale parallel and batch workloads.

High-Performance Computing (HPC) in Azure

Azure Batch automatically scales and manages thousands of VMs, helping you distribute tasks across multiple compute nodes. You only need to define your task and Azure Batch will handle the rest, including the deployment of VMs and distribution of tasks.


8. Key Azure Management Tools for Compute

Azure offers several management tools for deploying and managing compute resources:

  • Azure Portal: Graphical interface for managing all Azure services.
  • Azure CLI: Command-line interface for interacting with Azure resources.
  • PowerShell: Script-based management tool for Azure.
  • ARM Templates: Infrastructure-as-Code (IaC) for deploying and managing Azure resources declaratively.

9. Best Practices and Tips for the AZ-104 Exam

  1. Understand Compute Pricing: Familiarize yourself with how Azure charges for different compute services like VMs, AKS, and App Services.
  2. Master Azure CLI and PowerShell: Many exam questions focus on using the CLI or PowerShell to manage compute resources.
  3. Learn to Troubleshoot VM Connectivity: Know how to diagnose issues with NSGs, VNets, and public IPs.
  4. Use Azure Monitor: Be prepared to configure monitoring, alerts, and diagnostic settings for compute services.
  5. Scaling and Automation: Understand how to scale VMs, App Services, and AKS using automation.

Conclusion

Mastering Azure compute resources is essential for passing the AZ-104 certification exam. From virtual machines to serverless computing, this domain requires a strong understanding of deployment, scaling, and management strategies. By focusing on the key topics outlined above and practicing with Azure’s management tools, you’ll be well-prepared for the exam and capable of efficiently managing Azure compute workloads in real-world scenarios.

Top comments (0)