The presentation discusses the challenges faced by the speaker's team while delivering applications in K8s for the US Navy in air-gapped environments. The focus is on the lifecycle for bringing software declaratively into K8s and the need for predictably packaging all dependencies.
- Air-gapped environments pose unique challenges for delivering applications in K8s
- Declarative state is important for reproducing environments over and over
- Redundancy is necessary to accommodate bugs and failures
- Tools like Helm, Argo, Flux, and kubectl only address half of the problem by managing manifests and leaving the images they depend on unmanaged
- Zarf, an open-source tool, was built to extract images from manifests, charts, kustomizations, and operators and package all dependencies predictably
- Creating a registry temporarily using a rust binary and config maps was a solution to the chicken and egg problem
- The speaker's team had experience deploying K8s in various air-gapped environments, including on fighter jets and submarines