Trident Overview
Trident is a fully supported, open-source storage orchestrator for containers and Kubernetes distributions, including Anthos. Trident works with the entire NetApp storage portfolio, including NetApp ONTAP, and it also supports NFS and iSCSI connections. Trident accelerates the DevOps workflow by allowing end users to provision and manage storage from their NetApp storage systems without requiring intervention from a storage administrator.
An administrator can configure a number of storage backends based on project needs and storage system models that enable advanced storage features, including compression, specific disk types, and QoS levels that guarantee a certain level of performance. After they are defined, these backends can be used by developers in their projects to create persistent volume claims (PVCs) and to attach persistent storage to their containers on demand.
Trident has a rapid development cycle and, like Kubernetes, is released four times a year.
The documentation for the latest version of Trident can be found here. A support matrix for what version of Trident has been tested with which Kubernetes distribution can be found here.
Starting with the 20.04 release, Trident setup is performed by the Trident operator. The operator makes large scale deployments easier and provides additional support including self healing for pods that are deployed as a part of the Trident install.
With the 22.04 release, a Helm chart was made available to ease the installation of the Trident Operator.
For Trident installation details, please see here.
Create a storage-system backend
After completing the Trident Operator install, you must configure the backend for the specific NetApp storage platform you are using. Follow the link below in order to continue the setup and configuration of Trident.
Create a backend.
Create a storage class
After creating the backend, you must create a storage class that Kubernetes users will specify when they want a volume. Kubernetes users provision volumes by using persistent volume claims (PVCs) that specify a storage class by name.
Follow the link below to create a storage class.
Create a storage class
Dynamically provision a volume
You must create a Kubernetes persistent volume claim (PVC) object using the storage class to dynamically provision a volume. Follow the link below to create a PVC object.
Create a PVC
Use the volume
The volume provisioned in the above step can be used by an application by mounting the volume in the pod.The link below shows an example.
Mount the volume in a pod