Kubernetes Storage

How to Use NetApp Cloud Manager for Provisioning Persistent Volumes in Kubernetes

Kubernetes persistent volumes are used to provide containers with durable storage without application developers needing to concern themselves about the underlying implementation details. Kubernetes storage creates a useful abstraction that is able to support an extensible set of different storage provisioners, such as Amazon EBS, Azure Managed Disks, or Google cloud persistent disks.

But there’s more to it than this. This level of abstraction can also be used to switch out the storage implementation when going from development to production environments, for example.

NetApp Astra Trident is a storage provisioner for Kubernetes that uses Cloud Volumes ONTAP as its back-end storage service, giving Kubernetes pods access to NetApp’s enterprise data platform for the cloud.

In this article, we will demonstrate how NetApp Cloud Manager simplifies the use of NetApp Trident with your Kubernetes deployment, and gets you up and running with Cloud Volumes ONTAP in just a few clicks.

Jump directly to the deployment steps on using Cloud Manager for Kubernetes here.

Persistent Storage Using Cloud Volumes ONTAP

Cloud Volumes ONTAP is NetApp’s enterprise data management platform for the cloud, and builds on cloud storage services such as Amazon EBS, Amazon S3, Azure Managed Disks, and Azure Blob to give users a complete solution for NFS, SMB, and iSCSI storage in cloud, hybrid and multi-cloud environments. Cloud Volumes ONTAP reduces cloud storage costs through a set of sophisticated storage efficiency features, helps to protect data with snapshots and high availability, and supports many other crucial features for managing data, such as NetApp SnapMirror® for highly-efficient data replication.

Deployments of Kubernetes on AWS/Azure/GCP or on-prem, can make use of Cloud Volumes ONTAP from directly within a cluster by using Astra Trident. Trident is the CSI-compliant storage provisioner that enables dynamic provisioning in Cloud Volumes ONTAP in response to Kubernetes persistent volume claims. Advanced storage features, such as cloning an existing persistent volume using NetApp FlexClone®, data protection for persistent volumes, and storage efficiency features for improving persistent volume storage costs, are all available via standard Kubernetes manifests. Cloud Manager now makes Kubernetes deployment with Trident very easy to accomplish.

Using Cloud Manager for Kubernetes Deployment

Using the Cloud Manager platform, which is available both as a SaaS and as a solution, you can deploy and manage instances of Cloud Volumes ONTAP. Cloud Manager uses a graphical, web-based interface that makes it easy to set up Cloud Volumes ONTAP storage services and organize them across multiple tenants for better overall manageability. On-premises systems, Azure deployments, Google Cloud deployments, and AWS deployments can all be controlled from a single dashboard, and NetApp SnapMirror replication relationships created between them with a simple drag-and-drop.

Cloud Manager allows us to deploy Trident to a Kubernetes cluster and then relate the cluster to Cloud Volumes ONTAP instances.

Prerequisites

Before you can start you should make sure that you have network access between Cloud Manager, the instances of Cloud Volumes ONTAP to be used, and the actual Kubernetes cluster. Cloud Manager will also require internet access in order to download the latest deployment packages for Trident. You should also have your kubeconfig file downloaded from Kubernetes.

Associating the Kubernetes Cluster with Cloud Volumes ONTAP

  1. To deploy Trident you should begin by going to Cloud Manager. Head to the K8s tab on the menu bar and click on “Add Cluster.”

Screen Shot 2021-12-05 at 15.07.47

  1. On the Kubernetes “Add Cluster” screen, add the cluster to Cloud Manager by using “Discover Clusters” or “Import Cluster.”

Screen Shot 2021-12-05 at 15.08.22

  1. If you click on “Discover Clusters”, you can view the available clusters. Click on “Add Cluster” to add one of the discovered clusters.

Screen Shot 2021-12-05 at 15.08.47

  1. If you go with the “Import Cluster” option mentioned in step 2, you will be able to upload a Kubernetes configuration file.

    Note: The kubeconfig file contains all your cluster’s configuration details and should be downloaded directly from Kubernetes itself first.

Screen Shot 2021-12-05 at 15.09.27

  1. Once the cluster is added, click on “Connect to Working Environment.”

Screen Shot 2021-12-05 at 15.09.57

  1. Select the Cloud Volumes ONTAP instance that you want to use with Trident and then click “Continue.”

Screen Shot 2021-12-05 at 15.10.21

  1. Select the storage class in the next step. For this example we will choose NFS.

    When you are done, click “Continue.”

Screen Shot 2021-12-05 at 15.11.05

  1. In the next step click on “Add working Environment” to complete the process.

    Screen Shot 2021-12-05 at 15.12.08
  2. The Trident provisioner will be installed transparently in the background at this time. Once the process is completed, you can see the Trident version and connected Cloud Volumes ONTAP environment if you navigate to your Kubernetes cluster details in Cloud Manager.

    Screen Shot 2021-12-05 at 15.12.33
  3. You can verify that Trident was installed successfully by going to your Kubernetes cluster and running the kubectl get pod command.

Conclusion

Astra Trident gives Kubernetes clusters the power to provision persistent storage using Cloud Volumes ONTAP, which is an enterprise-grade solution for dynamically provisioning persistent volumes. Cloud Manager greatly simplifies Kubernetes deployment with Trident, and the configuration of Cloud Volumes ONTAP, making it much easier to start using NetApp data technology natively from within your Kubernetes cluster.

New call-to-action

Michael Shaul, Principal Technologist

Principal Technologist

-