Skip to content

Kubernetes · Editable reference architecture

Kubernetes EKS Microservices Cluster

Outline the traffic path into a Kubernetes cluster running on Amazon EKS. Separate ingress, service discovery, application workloads and external data dependencies, then customize the diagram to match your namespaces and deployment topology.

Open & Edit in DrawArc (Free, No Login Required)

Your changes stay in a separate draft on this browser. Download an editable project to keep a portable copy.

7 components · 8 connections · Open the editor to zoom, move nodes and edit source.

Architectural overview

Kubernetes gives teams a common way to schedule and operate containerized applications, while EKS manages the Kubernetes control plane. This starter emphasizes application traffic: users reach an ingress boundary, Kubernetes services route to application deployments and the workloads access an external database. Telemetry is drawn as a separate dependency to make operational visibility part of the design.

A service represents stable discovery and routing, not an additional copy of the application. A deployment manages desired workload state, while the actual replica and node topology depends on your manifests and capacity configuration. Add namespaces, node pools and availability zones when discussing isolation or resilience. Keep the managed control plane distinct from the workloads your team configures and operates.

Review ingress authentication, workload identity and network policies before connecting services to sensitive storage. Explain readiness and liveness probes, rollout strategy and what happens when a dependent service is unavailable. Record the autoscaling signals and resource limits that govern workload behavior. Extend this template with your delivery pipeline, secret store and recovery procedure so the resulting diagram reflects the real operational boundary rather than a generic collection of Kubernetes boxes.

The real-world problem

A team needs independent deployment and scaling for API and worker workloads, a stable ingress path and persistent state that survives pod replacement.

Data flow

Connections from this diagram. Branches and control signals are not a single chronological sequence.

  • Client → Ingress load balancer: HTTPS.
  • Ingress load balancer → Kubernetes service: Route ingress.
  • Kubernetes service → Application deployment: Ready endpoints.
  • Application deployment → Worker deployment: Internal work request.
  • Application deployment → RDS PostgreSQL: SQL.
  • Worker deployment → RDS PostgreSQL: SQL.
  • Application deployment → Telemetry collector: Metrics and traces.
  • Worker deployment → Telemetry collector: Metrics and traces.

Security boundaries

  • Use scoped workload identity for database and cloud access; do not share broad node credentials across workloads.
  • Apply namespace/RBAC and supported network policies explicitly. A namespace alone is not network isolation.
  • Keep database credentials in a controlled secret workflow, enforce ingress authentication and avoid sensitive telemetry.

Failure handling

An application pod cannot serve traffic

Response: Use readiness to remove unready endpoints; use liveness only for failures that a restart can fix.

Verify: Simulate startup delay and dependency failure without creating a restart loop.

A node or zone is unavailable

Response: Plan replicas, placement and spare capacity across chosen failure domains; disruption budgets do not create capacity.

Verify: Drain or lose a node and measure pending pods, request errors and recovery.

Database dependency slows down

Response: Bound connection pools and retries, use timeouts and expose a degraded state instead of multiplying load.

Verify: Inject latency and verify rollout, autoscaling and error behavior remain bounded.

Trade-offs and alternatives

Use EKS

Benefit
Shared workload scheduling and a managed control plane.
Cost
Cluster networking, upgrades, workload policies and capacity remain operational work.
Alternative
A managed application runtime may be simpler for a small service set.

Scale API and worker separately

Benefit
Capacity can follow distinct workloads.
Cost
More deployment policies and a worker-interface contract to manage.
Alternative
Keep one deployment until independent scaling or release needs justify separation.

When to use this architecture

  • Review the request path and external dependencies for microservices deployed to Amazon EKS.
  • Explain the difference between ingress, service routing, deployments and managed control-plane responsibilities.
  • Plan additions such as workload identity, namespace isolation, observability or independent application scaling.

Key components

Client
Initiates requests to the application endpoint.
Ingress load balancer
Terminates or forwards external traffic according to the configured ingress policy.
Kubernetes service
Provides a stable discovery and routing boundary for application pods.
Application deployment
Manages application replicas, health checks and rollout behavior.
Worker deployment
Runs independently scalable background processing workloads.
RDS PostgreSQL
Persists application state outside the pod lifecycle.
Telemetry collector
Receives application metrics, traces and operational signals.

Questions about this template

Does the diagram include a working EKS manifest?

No. It describes component relationships. Configure manifests, IAM, node capacity and network policies in your deployment tooling.

Can I adapt this to GKE or AKS?

Yes. Replace the managed Kubernetes and infrastructure icons while keeping the service and deployment relationships that apply to your application.

Related architecture templates