Gardener Extension for ONTAP Documentation
Technical background documentation for the extension, ONTAP, and their integration into metal-stack.
These pages supplement the concise project overview and development instructions in the repository README. They can be read independently as topic-based reference material.
Topics
| Topic | Content | Start here |
|---|---|---|
| NetApp ONTAP | ONTAP concepts, HA pairs, MetroCluster, SVMs, aggregates, LIFs, NVMe/TCP, Trident, and the PVC data path | ./././ontap-storage.md |
| Gardener Extension for ONTAP | Activation, inputs, reconciliation, SVM and credential lifecycle, ManagedResources, shoot webhook, and cleanup boundaries | ./././gardener-extension-ontap.md |
Recommended Reading Paths
I want to understand the storage architecture
ONTAP Storage— from the physical MetroCluster to a project-specific SVMGardener Extension for ONTAP— how the architecture is automated for a shoot cluster
I am investigating a provisioning failure
Gardener Extension for ONTAP: ReconciliationGardener Extension for ONTAP: State InspectionONTAP Storage: Management and Data Paths
I am investigating a mount or I/O failure
ONTAP Storage: From a PVC to a VolumeONTAP Storage: Management and Data PathsGardener Extension for ONTAP: Shoot Webhook
I am planning maintenance or cleanup
System Overview

The components have distinct responsibilities:
| Component | Responsibility |
|---|---|
| Cloud API / Metal API | Detects the ONTAP-enabled cluster configuration and reserves project-specific LIF addresses. |
| Gardener extension | Establishes the desired ONTAP and shoot state. |
| ONTAP MetroCluster | Stores and replicates data and provides SVMs and network endpoints. |
| Trident | Translates Kubernetes storage operations into ONTAP operations. |
| Kubernetes worker | Connects the remote block device over NVMe/TCP and mounts it into the workload. |
Documentation Structure
gardener-extension-ontap.md documents the behavior of this repository and links to the relevant source paths. ontap-storage.md describes the wider platform and storage context in which the extension operates.