AZ-400 Question 185
Single answerYou are designing a DevOps strategy for your organization, which hosts both Linux and Windows virtual machines (VMs) in Azure. The infrastructure is frequently scaled up and down, and the team wants to maintain consistent software configurations across all VMs without installing additional agents on each machine. Which configuration management technology would you recommend to meet these requirements?
- A
Azure Resource Manager (ARM) templates
- B
Azure Automation State Configuration (DSC)
- C
Chef
- D
Ansible
Show answer and explanation
Correct answer: D
Explanation
Ansible provides an agentless approach to configuration management, making it well-suited for environments where frequent scaling and cross-platform consistency are critical. By using SSH or WinRM connections instead of installing agents on each VM, Ansible reduces overhead and simplifies updates. For more information on using Ansible with Azure, see Microsoft� documentation at https://learn.microsoft.com/azure/ansible/ansible-overview.
- A. Incorrect.
Option 1: Azure Resource Manager (ARM) templates are primarily used for provisioning and managing Azure resources (e.g., VMs, storage accounts, virtual networks), not ongoing configuration management. ARM templates define infrastructure as code but do not offer a complete multi-system configuration management approach, especially for post-deployment tasks.
- B. Incorrect.
Option 2: Azure Automation State Configuration (DSC) can manage configuration for Windows and some Linux distributions, but it generally requires DSC agents. While it integrates well with PowerShell DSC for Windows, it may be more complex to set up for frequent cross-platform changes with minimal overhead.
- C. Incorrect.
Option 3: Chef is a robust configuration management platform that requires installing an agent (Chef Client) on each node. Although Chef is powerful and widely used, it doesn�t meet the stated requirement of avoiding additional agents on each VM.
- D. Correct.
Option 4: Ansible is an agentless configuration management tool that leverages SSH or WinRM to connect to target machines. It easily supports both Linux and Windows environments without requiring an agent. Because of its flexibility, simple YAML-based scripting, and strong integration with Azure and CI/CD tools, Ansible best meets the requirements.