Setting up persistant storage using OpenEBS
Install iSCSI on all nodes
Refer: https://docs.openebs.io/docs/next/prerequisites.html
Install iSCSI tools if not installed
sudo apt-get update
sudo apt-get install open-iscsi
sudo systemctl enable --now iscsidCheck if iSCSI is running
sudo systemctl status iscsidMake sure you have admin context
kubectl config use-context kubernetes-admin@kubernetesRemove taint from master node
We need to use master node as a storage node where all database files and persistant volumes will be stored. Remove taint from master node so that master node will be available to schedule pods
kubectl taint node <masternode_name> node-role.kubernetes.io/master:NoSchedule-Install using kubectl
Download file https://openebs.github.io/charts/openebs-operator.yaml
to install OpenEBS to use volumes from master node we need to label master node with appropriate label
Use following command to label master node
kubectl label nodes <node-name> node=openebsNext, in the downloaded openebs-operator.yaml, find the PodSpec for openebs-provisioner, maya-apiserver, openebs-snapshot-operator, openebs-admission-server and openebs-ndm pods and add the following key-value pair under nodeSelector field
nodeSelector field will be available in pod > specs > template > specs > nodeSelector
nodeSelector:
  node: openebsInstall OpenEBS with updated command
kubectl apply -f openebs-operator.ymlCheck if OpenEBS has been installed
kubectl get pods -n openebs -o wideOutput should show running pods
 
                                                    

No Comments