Note 1: kaDalu project is still in its infancy, not yet ready for production use.
Note 2: If you are using 'minikube' to try out kaDalu, then please use
--vm-driver=none
option. In our testing, we found issues specific to CSI pods
when we used kvm2
driver.
Deploy KaDalu Operator using,
kubectl create -f https://raw.githubusercontent.com/kadalu/kadalu/master/manifests/kadalu-operator.yaml
Check the status of Pods using,
$ kubectl get pods -nkadalu NAME READY STATUS RESTARTS AGE csi-attacher-0 2/2 Running 0 30m csi-nodeplugin-5hfms 2/2 Running 0 30m csi-nodeplugin-924cc 2/2 Running 0 30m csi-nodeplugin-cbjl9 2/2 Running 0 30m csi-provisioner-0 3/3 Running 0 30m operator-6dfb65dcdd-r664t 1/1 Running 0 30m
KaDalu Operator listens to PV Hosting volume configuration changes and starts the required pods. For example,
# File: storage-config.yaml
---
apiVersion: kadalu-operator.gluster/v1alpha1
kind: KadaluVolume
metadata:
# This will be used as name of PV Hosting Volume
name: gvol1
spec:
type: Replica1
storage:
- node: kube1 # node name as shown in `kubectl get nodes`
path: /mnt/data # Directory path xattrs support.
# This is the directory which would
# export the storage to all the PVs.
options: {}
Now request kadalu-operator to create hosting volume using,
$ kubectl create -f storage-config.yaml
Operator will start the storage export pods as required.
$ kubectl get pods -nkadalu NAME READY STATUS RESTARTS AGE server-gvol1-kube1-0 1/1 Running 0 84s csi-attacher-0 2/2 Running 0 30m csi-nodeplugin-5hfms 2/2 Running 0 30m csi-nodeplugin-924cc 2/2 Running 0 30m csi-nodeplugin-cbjl9 2/2 Running 0 30m csi-provisioner-0 3/3 Running 0 30m operator-6dfb65dcdd-r664t 1/1 Running 0 30m
Now we are ready to create Persistent volumes and use them in application Pods.
Create PVC using,
$ kubectl create -f manifests/sample-pvc.yaml persistentvolumeclaim/pv1 created
and check the status of PVC using,
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pv1 Bound pvc-8cbe80f1-428f-11e9-b31e-525400f59aef 1Gi RWO kadalu.gluster 42s