website/content/en/docs/reference/glossary/finalizer.md

1.4 KiB

title id date full_link short_description aka tags
Finalizer finalizer 2021-07-07 /docs/concepts/overview/working-with-objects/finalizers/ A namespaced key that tells Kubernetes to wait until specific conditions are met before it fully deletes an object marked for deletion.
fundamental
operation

Finalizers are namespaced keys that tell Kubernetes to wait until specific conditions are met before it fully deletes resources marked for deletion. Finalizers alert {{<glossary_tooltip text="controllers" term_id="controller">}} to clean up resources the deleted object owned.

When you tell Kubernetes to delete an object that has finalizers specified for it, the Kubernetes API marks the object for deletion by populating .metadata.deletionTimestamp, and returns a 202 status code (HTTP "Accepted"). The target object remains in a terminating state while the control plane, or other components, take the actions defined by the finalizers. After these actions are complete, the controller removes the relevant finalizers from the target object. When the metadata.finalizers field is empty, Kubernetes considers the deletion complete and deletes the object.

You can use finalizers to control {{<glossary_tooltip text="garbage collection" term_id="garbage-collection">}} of resources. For example, you can define a finalizer to clean up related resources or infrastructure before the controller deletes the target resource.