What are you looking for ?
Infinidat
Articles_top

Availability of Container Storage Interface Driver for Container-Friendly Seagate Storage

Managing persistent volumes backed by iSCSI protocols on Exos X enclosure, controlling multiple Exos X systems within single Kubernetes cluster, and managing Exos X snapshots and clones

Seagate Gregory touretskyBy Gregory Touretsky, principal product manager, SeagateTechnology plc

 

 

 

Kubernetes has been conquering the IT industry for over 7 years now. It has evolved with over twenty versions released during this time. Long gone are the days when it was intended for stateless applications. Storage has become a well-established component in the Kubernetes ecosystem.

Click to enlarge

Seagate Figure 1a Cncf Survey
Seagate Figure 1b Cncf Survey

(Source: CNCF Survey report 2020)

Seagate’s storage solutions store a great deal of the world’s data, shipping over 550EB per year. Seagate Systems are respected by customers and are used in a variety of environments. They support many enterprise features such as virtual pools, thin provisioning, advanced erasure protection, auto tiering, snapshots, and replication.

More and more customers are asking how to integrate our systems in the Kubernetes environment. We also see growing Kubernetes adoption within the company. Our IT teams use Kubernetes in several mission critical use cases. This recent case study published by CNCF (Cloud Native Computing Foundation) provides an example of our internal use of containers.

The demand from our external customers combined with the internal experience from the growing Kubernetes adoption led to the implementation and recent announcement of the Seagate Exos X CSI driver. It’s available for download under Apache v2 license from Github and can be used by any customer running company’s storage systems with 4xx5/5xx5 controllers.

Container Storage Interface (CSI) is a spec for orchestrating control plane operations on file and block storage. It’s an evolving standard.

CSI driver components and customer’s application
running within Kubernetes cluster interfacing with Seagate Exos X system

Seagate Figure 2

CSI driver includes the Controller plugin (one pod per cluster) and multiple instances of the Node plugin (one pod per worker node). The former is responsible for storage provisioning and deprovisioning, while the latter takes care of volume mapping and mounts to a particular worker node when requested by customer’s application.

Seagate CSI driver can be used to:

  • Manage persistent volumes backed by iSCSI protocols on Exos X enclosures
  • Control multiple Exos X systems within a single Kubernetes cluster
  • Manage Exos X snapshots and clones, including restoring from snapshots
  • Clone, extend, and manage persistent volumes created outside of the Exos CSI Driver

A Helm chart is provided for easy deployment of the Exos X driver.

Relevant YAML files and usage examples can be found in our repository.

One of the features of CSI driver is the implementation of the Prometheus exporter interface, which can be used to collect driver usage statistics. This capability helps developers and customers to analyze usage and performance.

The driver exports metrics such as number of CSI and Exos X API requests, latency, completion status, and more.

Sample Prometheus graphs showing various CSI driver statistics
Click to enlarge

Seagate Figure 3

At Seagate, we like to experience our solutions internally first: we ‘drink our own champagne!’ Our Kubernetes experts from the firm’s IT organization have provided valuable inputs and became early adopters for the CSI driver in their Rancher environment.

Big thanks to our friends from Enix.IO, who have implemented the initial version of the driver and made it available under a friendly license in their Github repository. This allowed our team to start from a solid foundation and evolve it to the generally available product.

We’re excited to bring our first CSI driver implementation to customers and give them cloud-native agility in storage management. We’re not planning to stop here, as more features are scheduled to be introduced in our subsequent releases. Stay tuned and check our Github page for updates.

Articles_bottom
AIC
ATTO
OPEN-E