Question

Difficulty: Very hardContainer-Based Workloads

An enterprise is designing a container-based application on Azure that consists of a payment microservice and three operational microservices.

The design must satisfy the following requirements:
* Scale the compute resources dynamically based on message queue depth using KEDA, including scaling down to zero when idle.
* Minimize the administrative effort of managing container infrastructure, including OS patching, cluster upgrades, and node scaling.
* Route the console and system logs of the payment microservice to a dedicated regional Log Analytics workspace to meet compliance requirements.
* Route the logs of the operational microservices to a separate, shared Log Analytics workspace.
* Enable all microservices to communicate with each other securely over a private network.

Which architecture should you recommend?

  1. Deploy the payment microservice and the operational microservices into separate Azure Container Apps environments integrated with different subnets of the same Azure Virtual Network. Configure each environment with its own Log Analytics workspace.Answer
  2. B
    Deploy the payment microservice and the operational microservices into a single Azure Container Apps environment. Use Azure RBAC and Kusto Query Language (KQL) filters to restrict log access in a single shared Log Analytics workspace.
  3. C
    Deploy the payment microservice and the operational microservices into a single Azure Kubernetes Service (AKS) cluster using virtual nodes. Use Kubernetes namespaces and Azure Monitor Data Collection Rules (DCRs) to route logs to separate Log Analytics workspaces.
  4. D
    Deploy the payment microservice and the operational microservices as separate container groups in Azure Container Instances (ACI). Configure container group diagnostics to route logs to different Log Analytics workspaces.

Answer

Deploy the payment microservice and the operational microservices into separate Azure Container Apps environments integrated with different subnets of the same Azure Virtual Network, configuring each environment with its own Log Analytics workspace.
The correct solution uses Azure Container Apps to meet the need for serverless scaling (KEDA) to zero and minimal operational overhead. Since logging is configured at the Environment level in Azure Container Apps, routing logs to different Log Analytics workspaces requires deploying the services into two separate Container Apps environments. By integrating these environments into different subnets of the same virtual network, secure and private inter-service communication is achieved.

Step-by-Step Solution

1
Evaluate the scaling and operational overhead requirements.
Azure Container Apps (ACA) is identified as the optimal serverless option because it natively supports KEDA-based scale-to-zero and eliminates container infrastructure management (no VMs or cluster upgrades).
This filters out AKS due to high administrative effort and ACI due to lack of native event-driven KEDA scaling.
2
Evaluate the log segregation requirement.
Logging configuration in ACA is bound to the Container Apps Environment level. Therefore, microservices requiring separate Log Analytics workspaces must be deployed into separate ACA Environments.
This rules out deploying all services in a single ACA Environment with access control filters.
3
Evaluate secure private communication between separate environments.
Deploy the separate ACA environments into different subnets within the same Azure Virtual Network.
This allows the microservices to communicate securely over a private network boundary with minimal latency while keeping their log destinations separate.

Key Concept

Selecting and configuring serverless container hosting platforms in Azure to align scaling, management overhead, private networking, and compliance monitoring requirements.
Estimated Time:3m 0s
Rate this question