AZ-305 Designing Microsoft Azure Infrastructure Solutions Exam

Venture into the world of Azure Infrastructure, where design meets functionality. Harness your skills and gain mastery over complex cloud structures to ace the AZ-305 Designing Microsoft Azure Infrastructure Solutions exam!

Practice Test

Expert
Exam

Design compute solutions

Specify components of a compute solution based on workload requirements

When you design a compute solution, the first step is to understand workload requirements. This means looking at performance, scalability, and cost. You should identify peak usage times, data processing needs, and how long tasks run. Knowing these details helps you choose the right compute components.

Next, you map requirements to Azure services. For example, you might choose Virtual Machines for consistent performance or Azure Functions for event-driven tasks. You also consider storage options like managed disks or Azure Blob Storage. Balancing cost and performance is the key driver of your decisions.

Finally, you assemble components into a cohesive solution. This could include:

  • Compute resources such as VMs, containers, or serverless functions
  • Networking elements like Virtual Networks, load balancers, and firewalls
  • Storage options tailored to throughput and capacity needs
    By combining these elements thoughtfully, you ensure reliability and efficiency.

Recommend a virtual machine-based solution

When workloads need full control of the operating system and environment, you choose Virtual Machine (VM)-based solutions. VMs let you install custom software, drivers, and configurations. This is ideal for legacy applications or when strict compliance requirements exist.

To optimize cost and performance, consider VM sizes, series, and availability sets. For example, the D-series offers balanced CPU and memory, while the F-series is compute-optimized. Use scale sets to automatically scale your VMs based on demand and to maintain high availability across fault domains.

You also plan for backup, security, and updates. Implement Azure Backup for VM snapshots, use Network Security Groups to restrict traffic, and enable automatic OS patching. With these practices, your VM-based solution remains robust and secure.

Recommend a container-based solution

Containers are perfect when you need lightweight, portable runtime environments. You package applications and dependencies into a container image, ensuring consistency across development and production. This approach speeds up deployment and simplifies management.

Azure offers services like Azure Kubernetes Service (AKS) and Azure Container Instances (ACI). AKS provides orchestration, auto-scaling, and rolling upgrades, making it ideal for microservices. ACI is better for short-lived or burst workloads where orchestration overhead is not needed.

You should also address networking, storage, and security for containers. Use Azure Container Registry to store images, implement Network Policies for pod communication, and apply Azure Policy to enforce security standards. These steps help maintain a scalable and secure container environment.

Recommend a serverless-based solution

For event-driven or intermittent tasks, a serverless approach can reduce costs and complexity. Serverless compute automatically scales and you pay only for actual execution time. This makes it great for APIs, data processing, and simple automations.

Key Azure services include Azure Functions and Logic Apps. Azure Functions support multiple languages and triggers like HTTP or timer. Logic Apps use a visual designer to build workflows that integrate with hundreds of connectors, from SQL databases to SaaS platforms.

When designing serverless solutions, consider cold start times and state management. Use durable functions for long-running workflows and premium plans to minimize cold start delays. This ensures that your serverless solution is both responsive and reliable.

Recommend a compute solution for batch processing

Batch processing handles large volumes of jobs that can run in parallel or sequentially. It's ideal for scenarios like report generation, video encoding, and scientific simulations. Batch solutions offer cost savings by scheduling tasks during off-peak hours.

Azure Batch simplifies job scheduling, resource allocation, and scaling. You define pools of VMs, set job schedules, and Azure Batch takes care of the rest. You can also integrate with Azure Spot VMs to lower costs further, trading off availability for price.

To build a robust batch solution, include monitoring and error handling. Use Azure Monitor and Application Insights to track job status and performance. Implement retry policies and notifications to handle failures. This approach keeps your batch jobs efficient and transparent.

Conclusion

In this section, we explored how to design compute solutions on Azure by matching workload requirements to the right services. We learned to specify components such as VMs, containers, and serverless functions while balancing cost, performance, and scalability. We also covered specialized solutions for batch processing and best practices for security, monitoring, and high availability. By understanding these guidelines, you can create robust, secure, and cost-effective compute architectures in Azure.

Study Guides for Sub-Sections

Azure Container Instances (ACI) provides a serverless container hosting option where you can run containers without managing virtual machines or orchestrators. ACI support...

Azure Functions offers three main hosting plans: Consumption, Premium, and Dedicated.

Azure Batch is a managed service designed to run large-scale, intrinsically parallel and high-performance computing (HPC) jobs without the need to install or manage cluste...

When you need to design compute solutions on Azure, it's essential to evaluate Azure compute service options based on your workload requirements. This involves comparing variou...

When selecting an appropriate Azure Virtual Machine (VM) series and size, it's important to consider several key factors related to workload requirements, cost constraints,