Skip to main content

NetApp_Insight_2020.png 

NetApp Knowledgebase

What are junction paths?

Views:
745
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
nas
Last Updated:

Applies to

  • Ontap 9
  • Clustered Data ONTAP 8
  • NAS

Question(s) and Answer(s)

Volume junctions function to join individual volumes together, into a single logical namespace, in order to enable data access to NAS clients.

When NAS clients access data by traversing a junction, the junction appears to be an ordinary directory. A junction is formed when a volume is mounted to a mount point below the root, and is used to create a file-system tree. The top of a file-system tree is always the root volume, which is represented by a slash (/). A junction leads from a directory in one volume to the root directory of another volume.

  • Although specifying a junction point is optional when a volume is created, data in the volume cannot be exported (NFS) and a share cannot be created (CIFS) until the volume is mounted to a junction point in the namespace.
  • A volume that was not mounted during volume creation can be mounted post its creation.
  • New volumes can be added to the namespace at any time by mounting them to a junction point.
  • Mounted volumes can be unmounted; however, unmounting a volume disrupts new NAS sessions to all the data in the volume and to all the volumes mounted at the child junction points beneath the unmounted volume.
    • Due to the NFS filehandles referencing the volume MSID as described in Bug 465129, existing NFS sessions can continue to access all data in a volume even after the volume is removed from the SVM namespace.
  • Junction points can be created directly below a parent volume junction, or they can be created on a directory within a volume.
  • Snapshot copy access does not traverse junctions.
  • A volume can be mounted to the namespace of its Vserver in one place.

For example, a typical volume junction configuration with the above-mentioned namespace architecture might appear similar to the following configuration, where there are three insertion points to the root volume of the SVM. Two insertion points are directories named 'data' and 'projects'. One insertion point is a junctioned volume named 'audit'

1002380 img.jpg

::> volume show -vserver vs1 -junction
                      Junction                       Junction
Vserver Volume        Active    Junction Path        Path Source
------- ------------- --------- -------------------- -----------
vs1      audit         true      /audit               RW_volume
vs1      audit_logs1   true      /audit/logs1         RW_volume
vs1      audit_logs2   true      /audit/logs2         RW_volume
vs1      audit_logs3   true      /audit/logs3         RW_volume
vs1      eng           true      /data/eng            RW_volume
vs1      mktg1         true      /data/mktg1          RW_volume
vs1      mktg2         true      /data/mktg2          RW_volume
vs1      project1      true      /projects/project1   RW_volume
vs1      project2      true      /projects/project2   RW_volume
vs1      vs1_root      -         /                    -

A junction path can be defined during volume creation, or an existing volume can be modified with a junction path.

::> volume create -vserver vserver_name -volume volume_name –aggregate aggregate_name -size -security-style {ntfs|unix|mixed} -junction-path junction_path

Security style - Choose if the following apply:
UNIX:

  • The file system is managed by a UNIX administrator.
  • The majority of users are NFS clients.
  • An application accessing the data uses a UNIX user as the service account.

NTFS:

  • The file system is managed by a Windows administrator.
  • The majority of users are SMB clients.
  • An application accessing the data uses a Windows user as the service account.

Mixed:

  • The file system is managed by both UNIX and Windows administrators and users consist of both NFS and SMB clients.

Run the following commands to create a continuously available share named 'data2' on the storage:

cluster1::> vserver cifs share create -vserver vs1 -share-name data2 -path /data/data2 -share-properties oplocks,continuously-available -symlink ""

cluster1::> vserver cifs share show -vserver vs1 -share-name data2
Vserver: vs1
Share: data2
CIFS Server NetBIOS Name: VS1
Path: /data/data2
Share Properties: oplocks
continuously-available
Symlink Properties: -
File Mode Creation Mask: -
Directory Mode Creation Mask: -
Share Comment: -
Share ACL: Everyone / Full Control
File Attribute Cache Lifetime: -
Volume Name: -
Offline Files: manual
Vscan File-Operations Profile: standard
Virtual Machine (SVM, formerly known as Vserver) vs1.

Run the following command to mount a volume:
::> mount -vserver vserver_name -volume volume_name -junction-path junction_path

Run the following command to unmount a volume:
::> volume unmount -vserver vserver_name -volume volume_name