Kustomize Quiz
Select your difficulty level to begin the quiz
Free Kustomize quiz with 60 multiple-choice questions on overlays, patches, generators, components, replacements and kubectl apply -k, at beginner, advanced and expert level. Every answer comes with an explanation.
All Kustomize questions
Each question has its own page with the answer and an explanation.
Beginner: 20 easy questions
- What is Kustomize?
- Which file tells Kustomize which resources to build and how to change them?
- Which command prints the built output of a kustomization directory with kubectl, without applying it?
- Which flag makes kubectl apply a kustomization directory?
- Which field lists the manifest files and directories a kustomization builds from?
- What is an overlay in Kustomize?
- What does namePrefix: dev- do?
- What does the namespace field in a kustomization.yaml do?
- How do you change an image tag in every Deployment without writing a patch?
- Which field generates a ConfigMap from files or literal values?
- Why does a ConfigMap generated by Kustomize get a name like app-config-5g2m8k7h?
- Which command builds a kustomization with the standalone Kustomize CLI?
- What does commonAnnotations do?
- Which field is the current way to patch resources in Kustomize v5?
- Which command writes a kustomization.yaml that lists the YAML files in the current directory?
- What does kubectl delete -k on an overlay remove?
- What does the replicas field in a kustomization.yaml do?
- Do Kustomize input files need special syntax, like Helm's {{ }} placeholders?
- How does an overlay include a base kustomization?
- Which project maintains Kustomize?
Advanced: 20 medium questions
- Why can adding a label through commonLabels make kubectl apply fail for an existing Deployment?
- How do you add a label to every resource without changing any selectors?
- What does an images entry with name: nginx and a digest: sha256:... value do?
- A strategic merge patch lists one container with a new image. What happens to the base's other containers?
- How do you remove a container from a base Deployment with a strategic merge patch?
- When is a JSON 6902 patch a better choice than a strategic merge patch?
- A patch target sets kind: Deployment and labelSelector: tier=backend. Which resources does the patch change?
- What are Kustomize components for?
- Which field replaces the deprecated vars for copying a value from one resource into another?
- How do you reference a base from a Git repository under resources?
- kustomize build fails because a patch file sits outside the kustomization's directory. What does the default load restrictor require?
- How do you generate a TLS Secret with Kustomize?
- What does sortOptions.order: fifo change in the build output?
- What does generatorOptions.disableNameSuffixHash: true change?
- How can you see what kubectl apply -k would change in the cluster before applying it?
- Can a kustomization include a Helm chart?
- What does kustomize edit fix do?
- An overlay's strategic merge patch fails with "failed to find unique target for patch". What is the usual cause?
- A base and an overlay both have an images entry for nginx with different tags. Which tag ends up in the output?
- Which file names does Kustomize accept for the kustomization file in a directory?
Expert: 20 hard questions
- Why can a component patch resources defined in the overlay that includes it, when a base can't?
- Which field path selects the value of the env var SERVICE_HOST in the container named app, for a replacement target?
- A production overlay lists a remote base with ?ref=main. What's the risk?
- A strategic merge patch adds one item to a list in a custom resource, but the build replaces the whole list. Why?
- A custom resource refers to a generated ConfigMap by name, but after the build it still uses the name without the hash suffix. Why?
- An overlay's configMapGenerator uses the same name as one generated in the base, with no behavior set. What happens?
- A kustomization sets namespace: team-a and includes a ClusterRole. What happens to the ClusterRole?
- In a strategic merge patch, what does $patch: replace inside a container's resources map do?
- A patch target sets name: app. Does it also match a Deployment named app-worker?
- A patch changes the metadata.name of its target, and the build fails. What allows the rename?
- Which query parameter of a remote resource URL sets how long Kustomize waits for the fetch?
- A replacement's target field doesn't exist yet in the target resource. What makes Kustomize add it?
- An overlay sets replicas for a Deployment that a HorizontalPodAutoscaler scales. What happens on each kubectl apply -k?
- A configMapGenerator entry has files: [config/app.properties]. Which key holds the file's content?
- labels sets includeSelectors: false and includeTemplates: true. Where do the labels end up?
- What does the openapi field in a kustomization.yaml provide?
- Two bases included by one overlay both define a ConfigMap named settings in the same namespace. What happens?
- A JSON 6902 patch adds an annotation named example.com/owner. How is that key written in the patch path?
- Why can a kustomization build with the kustomize CLI but fail with kubectl apply -k?
- Why does generatorOptions.immutable: true work well with Kustomize's default hash suffix?