Kubernetes Storage Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 30: Line 30:
=<span id='Container_Storage_Interface'></span><span id='CSI'></span>Container Storage Interface (CSI)=
=<span id='Container_Storage_Interface'></span><span id='CSI'></span>Container Storage Interface (CSI)=


Container Storage Interface (CSI) is an open standard that provides a clean interface for [[#Storage_Plugin|storage plugins]].
Container Storage Interface (CSI) is an open standard that provides a clean interface for [[#Storage_Plugin|storage plugins]] and abstracts the internal Kubernetes storage details.


=API Resources=
=API Resources=

Revision as of 01:02, 10 December 2019

Internal

Overview

Kubernetes has a mature and feature-rich subsystem called the persistent volume subsystem. Regardless of where it comes from, storage is exposed to the Kubernetes cluster in the form of a volume.

Storage Providers

Storage is exposed to a Kubernetes cluster by storage providers.

The Kubernetes persistent volume subsystem supports, among others:

Each storage provider has its own plugin that handles the details of exposing the storage to the Kubernetes cluster.

Storage Plugin

The terms "storage plugin" and "provisioner" are used interchangeably.

Old plugins used to be. Newer plugins are based on the Container Storage Interface (CSI).

Container Storage Interface (CSI)

Container Storage Interface (CSI) is an open standard that provides a clean interface for storage plugins and abstracts the internal Kubernetes storage details.

API Resources

PersistentVolume (PV)

PersistentVolumeClaim (PVC)

StorageClass (SC)

Volume

Secrets may be exposed as files in dedicated volumes mounted in the pod.

Volume Type

Dynamic Volume Provisioning

Dynamic volume provisioner https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/

Organizatorium