Skip to content

NFS Server

By default, this project installs an NFS Server on the Gateway Device because it is readily available to both Home Network and Cluster Network.

You can use any external NFS Server on the Home Network that the cluster nodes can reach.

For more information on Cluster and Workstation configuration with Flamenco in the Services section NFS Access.

The NFS Server setup is defined in its own nfs-server-install Ansible Playbook to easily enable/disable this part of the project if a NAS already exists or a more suitable server.

This playbook will setup and export the NFS mount which can be defined in nfs-server-install/defaults/main.yaml

nfs_directory_path: /nfs/share
nfs_flamenco_path: flamenco

This is an example of the NFS Server running on the Gateway Device and allowing any clients from Home or Cluster Networks to access /nfs/share.

The playbook may need updating if the NFS Server is not installed on the Gateway Device.

Gateway Device #> cat /etc/exports 
# BEGIN ANSIBLE MANAGED BLOCK
/nfs/share 192.168.1.xxx (Gateway Device)/24(rw,no_subtree_check,squash_all)
/nfs/share 192.168.57.0/24(rw,no_subtree_check,squash_all)
# END ANSIBLE MANAGED BLOCK

First address is Home Network subnet. Second is the Cluster subnet.

NFS Server and Cluster Worker Nodes

The Cluster nodes, predominately the Worker Nodes running Flamenco Worker Pods, need to access the same NFS Server. There are a few ways to do this in kubernetes by mounting volumes etc.

In this project, the NFS Server is mounted using nfs-subdir-external-provisioner which is done as part of the cluster-foundation Ansible Playbook. This is described in more detail in Installation / k8s / NFS