RT
Infrastructure WednesdaySep 23, 20269 min read

Choose the Smallest Reliable Cloud Architecture

Choose a cloud architecture by documenting workload boundaries, failure recovery, observability, ownership, and cost evidence before adding provider-specific services.

Răzvan Todică, Senior Full-Stack Engineer and Team Lead
Răzvan Todică

Lead software engineer and technical consultant working across React, Next.js, TypeScript, Node.js, product delivery, and team leadership.

  • cloud architecture
  • architecture decision record
  • reliability engineering
  • cloud cost model
  • platform engineering
Editorial cover for Choose the Smallest Reliable Cloud Architecture
Original editorial cover generated for this article.
On this page
  1. Start the cloud architecture decision with boundaries
  2. Reliability is a set of recoverable failure modes
  3. Recovery and observability must be designed together
  4. Keep cloud cost evidence in four separate layers
  5. A reusable cloud architecture decision record
  6. 1. Decision
  7. 2. Verified requirements
  8. 3. Assumptions and unknowns
  9. 4. Candidate designs
  10. 5. Failure and recovery review
  11. 6. Cost evidence
  12. 7. Decision and trigger for reconsideration
  13. A hypothetical example without invented scale
  14. The decision path is requirements, evidence, then services
  15. Official sources
  16. Need a second set of eyes?

A cloud architecture review can go wrong before anyone draws a diagram. The team starts comparing services, reference designs, or providers without first agreeing on the workload, deployment region, availability requirement, storage behavior, network egress, data retention, recovery objective, or support model.

That omission matters because architecture and cost depend on those conditions. A design that is appropriately small for one workload may be insufficient for another. A resilient design in one region may imply different operational responsibilities in another. A cost estimate without traffic, storage, retention, and support assumptions is not a decision-grade estimate.

The practical question is therefore narrower than “Which cloud architecture is best?” It is:

What is the smallest architecture that satisfies this workload’s stated reliability and operational requirements, and what evidence would justify adding another component?

The answer should be a reviewable decision record rather than a universal diagram.

Start the cloud architecture decision with boundaries

The supplied provider material supports using structured guidance, but it does not provide enough metadata to select a service or estimate a bill.

Verified facts from the supplied metadata:

  • The AWS Well-Architected Framework is intended to help teams understand the advantages and disadvantages of cloud decisions. Its supplied summary also identifies reliability, security, efficiency, and cost effectiveness as design and operational concerns.
  • The Azure Architecture Center provides guidance based on established architectural patterns and practices.
  • The supplied Google Cloud metadata describes reference architectures and design guides, while the linked page is titled Apigee API Management. That is not enough evidence to infer specific Apigee capabilities, limits, pricing, or suitability for a workload.

Interpretation: provider guidance can improve the questions in an architecture review, but it does not replace workload-specific evidence. A reference architecture demonstrates a possible structure. It does not prove that every component is required in your system.

Before discussing products, record these boundaries:

BoundaryQuestion to answer
WorkloadWhat requests, jobs, events, or data flows must the system handle?
RegionWhere will the workload run, and what location constraints apply?
AvailabilityWhich interruptions must the service tolerate?
StorageWhat data must persist, and how does it grow or change?
EgressWhat data crosses region, provider, or public-network boundaries?
RetentionHow long must application data, backups, and operational records remain?
SupportWho responds to incidents, and when are they available?
RecoveryWhat must be restored, from which copy, and within what agreed objective?

“Unknown” is an acceptable initial answer. It is more useful than an invented number because it exposes the work still needed before approval.

Reliability is a set of recoverable failure modes

Reliability should not be reduced to the number of boxes in a diagram. More components can isolate some failures, but every component also creates configuration, monitoring, upgrade, access-control, and recovery obligations.

For each candidate architecture, review concrete failure modes:

Failure modeDesign questionRecovery evidence
Application instance stopsCan work move to another healthy instance, or can the instance restart safely?Documented restart or replacement path
Deployment introduces a defectCan the release be stopped or reversed?Rollback procedure and release ownership
Persistent data is damaged or deletedIs there an independent recoverable copy?Restore procedure and validation criteria
A dependency becomes unavailableDoes the application fail safely, retry, queue, or reject work?Defined degraded behavior
Credentials or configuration are wrongCan the affected change be identified and replaced?Audit trail and rotation or rollback path
Region becomes unavailableIs regional recovery required by the workload?Explicit decision, not an assumed requirement
Telemetry is unavailableCan operators still identify customer impact and system state?Secondary operational signals or a documented limitation
Operator is unavailableIs there a support path for the required service window?Named ownership and escalation route

This table deliberately avoids prescribing multi-region deployment, orchestration, queues, or any named managed service. Those may be valid responses, but only when the stated failure requirement calls for them.

Personal perspective: the smallest reliable solution is not the architecture with the fewest resources at any cost. It is the design with the fewest moving parts that still has an explicit response to each required failure mode.

Recovery and observability must be designed together

A recovery mechanism is incomplete if nobody can tell when to activate it. Observability is incomplete if an alert does not lead to a diagnosis or recovery action.

A compact operational baseline should answer four questions:

  1. What customer-visible condition indicates failure? Infrastructure activity alone may not describe whether useful work is succeeding.
  2. Which signal identifies the affected boundary? Separate application symptoms from dependency, storage, network, and deployment symptoms where the architecture permits it.
  3. Who owns the first action? An alert without an available owner transfers risk rather than reducing it.
  4. How is recovery verified? Restarting, rolling back, or restoring is not complete until the workload’s expected behavior and data condition are checked.

The smallest reliable architecture should therefore include only the telemetry needed to detect its agreed failure modes, diagnose likely causes, and confirm recovery. Extra dashboards do not compensate for missing ownership or an untested restore path.

A useful review test is to remove each proposed component from the diagram mentally. Ask what requirement becomes impossible to satisfy. If the answer is unclear, the component may be optional, premature, or insufficiently justified.

Keep cloud cost evidence in four separate layers

No pricing claim can be made from the supplied source metadata. It provides no provider price, unit, region, plan, limit, or dated rate. Any monetary figure added here would therefore be fabricated.

A sound cost discussion can still define the model that later receives verified inputs:

estimated monthly cost = compute + storage + requests + data transfer + backup and retention + observability + support + other required services

This is a calculation structure, not a price estimate. Each term should be expanded using workload assumptions and dated provider evidence.

Keep four evidence layers separate:

  1. List price: the provider’s published rate, including provider, service, billing unit, region or plan, currency, and source date.
  2. Estimate: the expected usage assumption for a stated workload and time period.
  3. Calculation: the arithmetic combining list prices and estimated usage, including any rounding or billing thresholds.
  4. Observed result: an actual invoice or cost record from a defined environment and period.

An observed bill from one system is not automatically an estimate for another. Likewise, a provider calculator output is not an observed result. These distinctions make cost reviews reproducible and prevent a precise-looking total from hiding uncertain workload assumptions.

Cost also has an operational dimension. A component may have a published service charge while introducing deployment, incident response, access management, and maintenance work. The supplied metadata does not quantify that work, so it should be recorded as an ownership question rather than converted into an invented monetary figure.

A reusable cloud architecture decision record

The following record can be completed before a team commits to a provider-specific design.

1. Decision

State the narrow choice in one sentence.

Example structure: “Choose between the current single-region design and an additional recovery design for the defined workload.”

2. Verified requirements

Record only approved requirements or measured workload facts. Include:

  • workload shape;
  • deployment region;
  • required service window;
  • availability and recovery objectives, if defined;
  • data volume and retention;
  • expected ingress and egress paths;
  • security or location constraints;
  • support ownership.

3. Assumptions and unknowns

Label every unverified input. Assign an owner and a resolution date where appropriate. Do not silently promote an assumption into a requirement.

4. Candidate designs

Describe the minimum viable candidate first. Add alternatives only when they address a documented constraint. For every added component, state:

  • the failure or capacity condition it addresses;
  • the new operational responsibility it creates;
  • how it will be observed;
  • how it will be recovered or replaced;
  • how its cost will be calculated.

5. Failure and recovery review

Walk through application, deployment, dependency, data, credential, telemetry, operator, and regional failures. Mark each as required, accepted, mitigated, or unresolved.

6. Cost evidence

Attach dated list prices with provider, unit, region or plan, and source. Keep estimates, calculations, and observed costs in separate sections.

7. Decision and trigger for reconsideration

State why the selected design meets the present requirements. Then define what change would reopen the decision: a new region requirement, a tighter recovery objective, measured workload growth, a support-model change, or evidence that an accepted failure has become unacceptable.

This final trigger helps a small design remain intentional rather than permanent by inertia.

A hypothetical example without invented scale

Assume a team is reviewing an internet-facing API. This is an illustrative assumption, not a description of an actual system.

The team is considering whether to introduce a dedicated API management layer. The supplied Google Cloud page title identifies Apigee as API management, but the metadata does not establish its features, limits, pricing, regional behavior, or fit for this hypothetical workload. Those details would require direct verification.

The decision should begin with requirements instead:

  • Which API policies are mandatory?
  • Which failure modes must be isolated?
  • What telemetry must operators have?
  • Is a separate management layer required, or can the existing application boundary satisfy the approved requirements?
  • Who owns configuration and incident response?
  • Which provider, unit, region or plan, and source date will be used for pricing?

If a dedicated layer uniquely satisfies a verified requirement, it has a defensible role. If the justification is only that a reference architecture contains such a layer, the decision is incomplete.

The decision path is requirements, evidence, then services

A practical review sequence is:

  1. Define the workload and operational boundaries.
  2. Identify failures the system must tolerate.
  3. Specify detection, ownership, recovery, and verification.
  4. Draft the smallest candidate that satisfies those requirements.
  5. Add components only for named gaps.
  6. Build the cost calculation from dated provider rates and explicit usage assumptions.
  7. Record unresolved risks and the trigger for another review.

AWS and Azure guidance can provide useful review perspectives, and Google Cloud material can inform provider-specific investigation. The final architecture still needs to be justified against the system’s own requirements rather than the apparent completeness of a reference design.

The goal is not minimalism for its own sake. It is a design that the team can explain, observe, recover, support, and fund without treating complexity as evidence of reliability.

Official sources

Need a second set of eyes?

If you are choosing between cloud designs, preparing a technical audit, or trying to make reliability and cost assumptions reviewable, I can help structure the decision around the smallest solution your actual requirements support.

· Updated