The Container Storage Interface (CSI)
The CSI is an important piece of the Kubernetes storage jigsaw. However, unless you're writing storage plugins, you're unlikely to interact with it very often.
It's an open source project that defines a standards-based interface so that storage can be leveraged in a uniform way across multiple container orchestrators. In other words, a storage vendor should be able to write a single CSI plugin that works across multiple orchestrators such as Kubernetes and Docker Swarm.
In the Kubernetes world, the CSI is the preferred way to write drivers and means that plugin code no longer needs to exist in the main Kubernetes code tree. It also provides a clean and simple interface that abstracts all the complex internal Kubernetes storage machinery.
From a day-to-day management perspective, your only real interaction with the CSI will be referencing the appropriate plugin in your YAML manifest files. Also, it may take a while for existing...