You can use network attached storage to support backup/restore and data loading.

Some operations, like backup/restore and data loading, require you to either read or write large files. You can mount a NAS (network attached storage) file system for these operations. Currently, ThoughtSpot does not have an option for direct attached storage. Your NAS storage can use whichever drive format you would like.

This procedure shows you how to mount a NAS file system for storing or accessing large files. The file system will be mounted at the same location on each node in the cluster automatically. When any node is restarted, the file system will be mounted again automatically, if it can be found.

When supplying a directory for writing or reading a backup, you can specify the mount point as the directory to use. Likewise, you can stage data there for loading.

Backups are written by the Linux user admin. If that user does not have permission to write to the NAS file system, you could write the backups to disk (for example /export/sdc1, /export/sdd1, /export/sde1, or /export/sdf1) and then set up a cron job that executes as root user and copies the backup to the NAS device every night, then deletes it from the directory.

Do not send the periodic backups or stage files on /export/sdb1 since it is a name node. It is used internally by Hadoop Distributed File System (HDFS) and if this drive fills up, it can cause serious problems. Do not allow backups or data files to accumulate on ThoughtSpot. If disk space becomes limited, the system will not function normally.

You can mount NAS through the Admin Console, or using tscli.

Mount NAS using the Admin Console

To mount a NAS file system using the Admin Console, navigate to the Admin Console by clicking on the Admin tab from the top navigation bar. Select NAS Configuration from the side navigation bar that appears.

Admin Console - NAS

  1. Select Add Mount Point.

  2. Specify the parameters in the dialog box that appears:

    Add mount point

    1 Choose the mount type: either NFS (Network File System) or CIFS (Common Internet File System).
    2 Specify the server address, in the form storageservername.file.yourdomain.net.
    3 Specify the server path.
    4 Specify the local mount point. This should be within the /export directory.
    5 If you choose the CIFS mount type, you must specify a username and password.
    6 If you choose the CIFS mount type, you must specify a username and password.
    7 Optionally specify additional command-line subcommands and flags. Refer to the tscli reference for NAS commands.
  3. Click OK.

You can unmount NAS from the Admin Console, or by running tscli nas unmount --dir <directory>.

Mount NAS using tscli

To mount a NAS file system using the tscli, follow these steps:

  1. Log in to the Linux shell using SSH.
  2. Mount the directory to the file system by issuing the appropriate command:
    • Example for an NFS (Network File System) directory:

      tscli nas mount-nfs --server storageservername.file.yourdomain.net
         --path_on_server <path>  /tsdev-backup --mount_point /export/BACKUPS/
         --options vers=<version>,sec=<security scheme>,<OPTIONS>
      
    • Example for a CIFS (Common Internet File System) directory. Use 1001 for the uid and gid, as in the example:

      tscli nas mount-cifs --server storageservername.file.yourdomain.net
        --path_on_server /tsdev-backup --mount_point /export/BACKUPS/
        --username 'avtprdweutspotdev' --uid 1001 --gid 1001 --options 'vers=3.0'
      
  3. Use the mounted file system by referring to its mount point.

  4. When you are finished with it, you can optionally unmount the NAS file system:

     tscli nas unmount --dir <directory>
    

Additional resources

As you develop your expertise in NAS mounts, we recommend the following ThoughtSpot U course:

See other training resources at
ThoughtSpot U