Persistent volumes without cloud storage
Our previous examples assume that you are running Kubernetes in a cloud environment and can make use of storage services provided by the cloud platform (AWS EBS and others). This, however, is not always possible. You may be running Kubernetes in a data center environment, or on dedicated hardware.
In this case, there are many potential solutions for providing storage to Kubernetes. A simple one is to change the volume type to hostPath
, which works within the node's existing storage devices to create persistent volumes. This is great when running on minikube, for instance, but does not provide as powerful an abstraction as something like AWS EBS. For a tool with on-premise capabilities similar to cloud storage tools like EBS, let's look at using Ceph with Rook. For the full documentation, check out the Rook docs (which will teach you Ceph as well) at https://rook.io/docs/rook/v1.3/ceph-quickstart.html.
Rook is a popular open source...