Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

You can skip this step if your Kubernetes deployment is on a single VM or physical system.


When setting up a k8s cluster, the folder /dockerdata-nfs must be shared between all the k8s nodes.   This folder is used as a volume by the onap pods to share data and so there can only be one copy. 


On this page we will attempt to do this by setting up a nfs server on the k8s master node vm and then mount the exported directory on each of the k8s’ nodes VMs. 

These instruction where written using VMs create from a ubuntu-16.04-server-cloudimg-amd64-disk1 image.  


Create NFS Server and export  /dockerdata-nfs on Kubernetes master node VM

The actual /dockerdata-nfs folder will live on the k8s master node VM.   

Create the directory as root on the k8s master node VM.

sudo mkdir -p /export/dockerdata-nfs

In our environment we provision the dockerdata-nfs folder as a Openstack volume and used that as the VM default backing store. This is optional and can be skipped.  See Create an OpenStack Volume for details


Setup the NFS server on the  k8s master node VM and export the dockerdata-nfs folder

nfs server
sudo apt update
sudo apt  install nfs-kernel-server
sudo chmod 777 /export
sudo chmod 777 /export/dockerdata-nfs

sudo vi /etc/exports
# append "/export/dockerdata-nfs *(rw,no_root_squash,no_subtree_check)"

sudo vi /etc/fstab 
# append "/home/ubuntu/dockerdata-nfs /export/dockerdata-nfs    none    bind  0  0"

sudo service nfs-kernel-server restart


Mount the  dockerdata-nfs folder on each of the kubernetes node VMs.  

Work in progress

More investigatio needed (as part of multi-nodes kubernetes cluser) as I'm having "Operation not permitted" error in sdnc-dbhost pod when deploying SDN-C cluster with the mounted /dockerdata-nfs from this instruction:

ubuntu@sdnc-k8s:~/oom/kubernetes/oneclick$ kubectl logs sdnc-dbhost-3029711096-w1szw -n onap-sdnc

[Entrypoint] MySQL Docker Image 5.6.38-1.1.2

chown: changing ownership of '/var/lib/mysql/': Operation not permitted

ubuntu@sdnc-k8s:~/oom/kubernetes/oneclick$ kubectl logs consul-agent-3312409084-3560z -n onap-consul

chown: /consul/config: Operation not permitted

ubuntu@sdnc-k8s:~/oom/kubernetes/oneclick$ 


On each of the k8s node vm'  mount the /dockerdata-nfs folder that is being served from the k8s master VM.  

mount nfs mount
sudo apt install nfs-common 
sudo mkdir /dockerdata-nfs
sudo chmod 777 /dockerdata-nfs
sudo mount -t nfs -o proto=tcp,port=2049 k8s-master:/export/dockerdata-nfs /dockerdata-nfs
sudo vi /etc/fstab
# append "<host|IP of k8s master node vm>:/export/dockerdata-nfs /dockerdata-nfs   nfs    auto  0  0"


Tips

unmount

Use the lazy (-l) option to force unmount the mount point.

For example,

sudo umount -l /dockerdata-nfs

  • No labels