Day 1: Set up Kustomize and structure environments
5 topics, Tap to openTap to close
10:00–11:00Understand Kustomize's configuration role
Kustomize changes Kubernetes objects declaratively and without resource duplication without introducing a separate template language. You compare copied manifests, parameterized templates, and transformations using the same sample application. From this, you identify Kustomize's responsibilities, the resources that remain unchanged, and where packaging or deployment automation still requires other tools.
11:00–12:00Understand kustomization and build output
A kustomization describes resources and changes, while the build produces ordinary Kubernetes manifests. In the DevNinjas Dojo, our cloud learning environment, you render a prepared application structure and compare source configuration, build output and stored cluster objects. You trace name references and assess which fields Kustomize changes and which remain unchanged.
13:00–14:00Connect bases and overlays
A base groups shared resources; an overlay references that foundation and adds only deliberate differences. You create development, staging, and production variants and deliberately change replicas, resource values, and Namespaces. You inspect what remains shared and how transparent directory structures separate shared from environment-specific fields.
14:00–15:00Transform labels, names, and images
Cross-cutting fields change multiple resources consistently without editing each manifest separately. You set labels and annotations in the learning environment, add name prefixes and suffixes, select a Namespace, and replace an image name or tag. You then inspect selector and reference changes and limit transformations to the intended objects.
15:00–16:00Deploy several environment variants deliberately
A shared application is rendered from several overlays for separate environments. You compare their outputs and planned changes before applying selected variants. You correct an unintended difference in the kustomization and use it to explain why generated manifests should not be maintained directly in the repository.

