Kubernetes and Cloud Native Associate (KCNA)Cloud Native ArchitectureEasy

A team is developing a new cloud-native application that consists of several independent microservices. They want to ensure that these services can communicate with each other securely and reliably, without requiring each developer to implement complex networking and security logic within their service code. Which architectural component would best address these concerns?

  1. AMessage Queue
  2. BLoad Balancer
  3. CService Mesh
  4. DMonolithic Architecture
Show answer & explanation

Correct answer: C. Service Mesh

A service mesh provides capabilities like secure communication (mTLS), traffic management, and observability for inter-service communication, offloading these concerns from application developers.

Why the other options are wrong

  • A. A message queue facilitates asynchronous communication but doesn't provide the comprehensive networking and security features of a service mesh for direct service-to-service calls.
  • B. A load balancer distributes incoming traffic but doesn't provide fine-grained security, observability, or advanced traffic management for internal service-to-service communication.
  • D. Monolithic architecture is the opposite of microservices and does not address inter-service communication issues in a distributed system.

Service Mesh

A service mesh is a dedicated infrastructure layer for handling service-to-service communication within a microservices architecture.

  • Provides features like traffic management, security, and observability.
  • Decouples networking concerns from application code.
  • Typically implemented with sidecar proxies alongside each service.

Memory trick: Mesh Makes Microservices Manageable and Secure.

More Cloud Native Architecture questions