Skip to content

Production qualification

Production qualification joins immutable release identity, target-admitted deployment state, live service behavior, security, capacity, resilience, and recovery into one attributable decision. A production-named values file is intent, not proof that its lifecycle works.

Declared profiles

Profile Declared shape Qualification emphasis
prod 3 replicas, HPA 3–20, rolling deployment, cluster-aware network policy Autoscaling and connected dependencies
prod-minimal 2 replicas, HPA 2–8, digest requirement Smaller disruption and capacity margin
prod-ha 4 replicas, HPA 4–16, PDB minimum 2, tighter probes Eviction, placement, and rolling overlap
prod-airgap Cached-only, prewarmed dataset, local registry, no HPA Complete offline bill of materials and recovery

Site-owned ingress, storage, certificate, secret, alert, backup, and admission controls are not defined by these overlays. Retain them as reviewed target inputs.

Current coverage boundary

The install matrix has a prod row in the nightly lane. It has no rows for prod-minimal, prod-ha, or prod-airgap, and no production profile has an install, upgrade, or rollback lifecycle scenario.

The three specialized overlays use repeated-digit SHA-256 contract fixtures, not released Atlas image digests. Replace them with immutable, provenance-bound candidates before rendering a real deployment.

prod-airgap disables NetworkPolicy under an owner- and date-bearing profile exception. That describes a presumed air gap; it does not prove target isolation. Independent reachability evidence remains mandatory.

Do not borrow Kind, offline, or performance lifecycle results for a production profile because selected fields look similar.

Qualification chain

flowchart LR
    Release[Runtime + dataset release] --> Render[Profile + site overrides]
    Render --> Admit[Policy + API admission]
    Admit --> Service[Install + readiness + queries]
    Service --> Exercise[Load + fault + rollout + recovery]
    Exercise --> Closure[Security + drift + packet binding]
    Closure --> Decision{qualified, excepted, rejected, incomplete}
Gate Required evidence
release Source, runtime digest, dataset tuple, manifest, and provenance
render Chart, profile, site overrides, merged-values digest, and inventory
admission Policy result, stored objects, workload identity, and semantic delta
service Endpoints, probes, representative queries, dataset identity, and telemetry
resilience Capacity, overload, churn, dependency failure, and reversal results
recovery Rollback or recovery identity, restored state, and observation window
closure Drift, security, exceptions, evidence digest, owner, and verdict

A later gate cannot repair missing identity from an earlier one.

Prove admitted and effective state

flowchart LR
    Authored[Profile + site overrides] --> Rendered[Rendered objects]
    Rendered --> Admitted[API-stored objects]
    Admitted --> Live[Pods + endpoints]
    Rendered -. semantic diff .-> Admitted
    Admitted -. identity + behavior .-> Live

Defaulting, mutation, sidecar injection, admission policy, and scheduling can change security, resources, networking, identity, or shutdown behavior. The semantic diff must preserve image digest, command, environment and secret references, service account, security contexts, volumes, probes, resources, scheduling, termination, labels, annotations, and network selectors.

Unexpected mutation of a claim-bearing field holds qualification. Bind the admitted workload UID and template hash to the pods and endpoints actually exercised.

Profile-specific proof

  • prod: prove scale-up from minimum replicas, dependency reachability, cheap route survival, and rollout capacity.
  • prod-minimal: prove one unavailable replica and HPA growth stay within dependency, storage, and telemetry budgets.
  • prod-ha: prove PDB enforcement, placement, eviction, rolling overlap, HPA interaction, and dataset access through disruption.
  • prod-airgap: prove local resolution of every image, chart, dataset, SBOM, checksum, verifier, telemetry destination, time source, and recovery asset.

Record Kubernetes version, architecture, container runtime, registries, networking, storage, autoscaling APIs, node pools, secret providers, telemetry, alerts, backups, and recovery destinations. Platform change can stale this evidence even when Atlas is unchanged.

The final record names profile, lifecycle direction, release, dataset, target, executed checks, gaps, exceptions, rollback target, decision owner, and validity window. “Installed” and “running” are observations, not qualification verdicts.

Continue with Install Matrix, Render and Validate, Rollout Safety, and Service Objectives and Error Budgets.