Welcome to the Linux Foundation Forum!

doubt on persistent volume

Hi,

If i have a NFS server for storage and i create multiple pods where i mount the NFS server on certain paths.

My understanding is, the storage is mounted but internally all files are transferred over network from NFS to pods. Is this right?

So, i mean if i write and read some files from pod, they will be copied to the pod and will be modified and replaced in the NFS server mounted path?

Please correct me if my understanding is wrong.

Thanks,
Tapas.

Comments

  • chrispokorni
    chrispokorni Posts: 2,155

    Hi Tapas | @tapakund,

    The Pod is unaware of the actual storage technology, as it is being abstracted by the PV and PVC binding. However, the Pod mounts the storage volume according to the Access Mode, and the containers' access to the storage volume is restricted by the Access Mode.

    Regardless of the storage technology, the containers of a Pod will 'see' the storage volume as a local volume, since it is mounted on the container's filesystem, having direct access to data on that volume. As a result, the containers can directly modify the data on the PV, not a local copy of the same data.

    Regards,
    -Chris

  • Hi Chris,

    For example if my NFS storage is in a server which is physically not in the machine where my pod would be using it using PVC. So, to access it, the files needs to be transferred over the network, right? How it will be similar to local volume?

    Thanks,
    Tapas.

  • serewicz
    serewicz Posts: 1,000

    Hello,

    As mentioned in the course, kubelet mounts the volume, wherever it comes from, and makes a link available to the containers in the pod. This means that the type of volume is decoupled from its use. From the container perspective it writes to a file, because everything is a file in Linux. The nature of a symbolic link means the file the write is happening to the mount point. At that point the kernel is responsible to get the IO to the correct device. This could be a local drive, NFS, iSCSI, rbd or others. The host kernel is the one writing. If using NFS the IO goes across the network to instance sharing out the Network FileSystem, and the write occurs there.

    Regards,

Categories

Upcoming Training