As we approach the tail end of 2020, it has been a year of surprises. Some that no one ever saw coming: who would have thought we’d all be working from home for as long as it has been? And others that have been way more pleasant: Project Astra launched its Beta release, revolutionizing how we look at and approach application-aware data management for Kubernetes, and where Trident plays a key role.
Our latest release keeps the ball rolling and provides the perfect way to end 2020 on a high! What’s new with 20.10 you ask?
CSI topology support (topology-aware volume provisioning)
With this feature, Trident enables Kubernetes to make more intelligent pod scheduling decisions while dynamically provisioning volumes for clusters that span multiple zones (multi-zone clusters). Volumes are now provisioned in multi-zone clusters with scheduler input accounting for resource availability (CPU, memory, etc.), Kubernetes filters for node selection, and other constraints. This feature allows you to quickly deploy and scale your stateful workloads across failure domains to provide high availability and fault tolerance. Available for Kubernetes 1.17 and above, storage admins can now provide a list of supported topologies per backend. Take a look at the documentation to get started.
Defer volume creation until pod is scheduled
Now that Trident can be instructed to decide where to create volumes more intelligently, it can also help determine when a volume should be created, to match the pod’s scheduling requirements that consume it. You would only want a volume to be created if the pod that needs it is optimally scheduled and available. With CSI Topology, Trident can understand where the pod needs to be placed (from Kubernetes) and that enables Trident to intelligently decide when and where volumes should be created. With the
waitForFirstConsumer volumeBindingMode, Trident will only proceed with a volume creation for PVCs when Kubernetes schedule pods that use the PVC. The volumeBindingMode is specified at the StorageClass level.
Worker node prep (Beta)
A beta feature for 20.10, Trident can now install the required NFS and iSCSI dependencies, ensuring that the needed services are running. This is an opt-in feature that is meant for testing and development environments. Users can use the
--enable-node-prep flag (or
enableNodePrep option for the Trident operator) to activate this feature. Take a look at the documentation for details.
Autosupport now supports sending log bundles
We continue to enhance Trident’s Autosupport capability! The latest to come out of this space is for customers to share their log bundles with NetApp on-demand. Using
tridentctl send autosupport, you can now have Trident gather logs from its containers and send them to NetApp Support for you automatically. We never gather logs unless you want us to.
Choose how many qtrees you want per FlexVol
ontap-nas-economy driver, users can now tweak the maximum number of qtrees that each FlexVol can contain. Using the
qtreesPerFlexvol option in your backend config, you can set a value between 50 and 300. By default, Trident can create a maximum of 200 qtrees in each FlexVol it manages.
CVS drivers now add labels to all volumes created
To help with accountability and resource monitoring, all CVS Trident drivers add labels to the CVS volumes that are created. You can define labels on the backend per storage pool. Trident adds the labels (that are defined on a storage pool) to all volumes created.
Add to the list support for Kubernetes 1.19, a distro less base image that reduces our security vulnerability footprint, and issue fixes. For a complete list, please refer to the Release Notes.
We March On
Questions? Concerns? Comments? Reach out to us on Slack.